THIẾT KẾ MẠCH GIÁM SÁT TRẠNG THÁI NHIỆT ĐỘ SỬ DỤNG CẢM BIẾN DS18B20 HIỂN THỊ MÀN HÌNH LCD VÀ TRUYỀN THÔNG DỮ LIỆU GIAO TIẾP VỚI MÁY TÍNH

31 354 0
THIẾT KẾ MẠCH GIÁM SÁT TRẠNG THÁI  NHIỆT ĐỘ SỬ DỤNG CẢM BIẾN DS18B20  HIỂN THỊ MÀN HÌNH LCD VÀ TRUYỀN THÔNG  DỮ LIỆU GIAO TIẾP VỚI MÁY TÍNH

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trong lĩnh vực sản xuất cũng như trong đời sống hằng ngày, các đại lượng vật lý: nhiệt độ, độ ẩm, áp suất,… tạo ra những ảnh hưởng lớn cho nhân loại. Việc đo và tính toán các đại lượng vật lý này luôn có một vai trò quan trọng vì từ đó con người có thể biết được các thông số mình đang làm việc và từ đó sẽ khống chế và điều khiển chúng cho phù hợp với mục đích của bản thân

MỤC LỤC MỤC LỤC LỜI MỞ ĐẦU CHƯƠNG I – CƠ SỞ LÝ THUYẾT CỦA ỨNG DỤNG 1.1 Tổng quan cấu trúc phần cứng KIT easyAVR V7 .4 1.1.1 Nguồn điện kép 1.1.2 Vi điều khiển hỗ trợ 1.1.3 Xung clock 1.1.4 Lập trình on-board 1.1.5 Phần mềm lập trình 1.1.6 UART qua RS-232 .5 1.1.7 USB UART 1.1.8 Đầu nối máy chủ mikroBUS 1.1.9 Nhóm đầu vào / đầu 1.1.10 LCD 16x2 1.1.11 GLCD 128X64 1.1.12 Bảng điều khiển cảm ứng 1.1.13 Hệ thống LED 1.1.14 DS1820 - Cảm biến nhiệt độ số .8 1.1.15 LM35 - Cảm biến nhiệt độ tương tự 1.1.16 Đầu vào ADC 1.1.17 I2C EEPROM 1.1.18 Piezo Buzzer 1.2 Tổng quan khối truyền thông UART 1.2.1 Các thông số truyền nhận UART 10 1.2.2 Thanh ghi 10 1.2.3 Sử dụng UART 12 1.3 Các khối ngoại vi 12 1.3.1 IC DS18B20 12 1.3.1.1 Chuẩn one – wire 13 1.3.1.2 Thanh ghi liệu 13 1.3.1.3 Bộ nhớ ghi 14 1.3.1.4 Trao đổi liệu vi điều khiển DS18B20 .15 1.3.1.5 Cách đọc giá trị nhiệt độ 16 1.3.2 LCD (Liquid Crystal Display) 17 1.3.2.1 Sơ đồ chân 18 1.3.2.2 Thanh ghi tổ chức nhớ .19 1.3.2.3 DDRAM 19 1.3.2.4 CGROM 20 1.3.2.5 CGRAM 20 1.3.2.6 Các chân điều khiển LCD 20 1.3.2.7 Tập lệnh LCD .21 1.3.2.8 Giao tiếp bit bit 22 1.3.3 Phím bấm (Button) 22 CHƯƠNG II – THIẾT KẾ ỨNG DỤNG VÀ GIẢI THUẬT PHẦN MỀM 23 2.1 Nguyên lý thiết kế ứng dụng thiết kế phần cứng .23 2.1.1 Khối xử lí trung tâm 23 2.1.2 Khối phím bấm 24 2.1.3 Khối hiển thị 24 2.1.4 Khối cảm biến nhiệt độ 25 2.2 Thuật toán thực 25 CHƯƠNG III – KẾT QUẢ ỨNG DỤNG .27 3.1 Kết mô 27 3.2 Ứng dụng thực tế 29 3.3 Ưu nhược điểm mạch thiết kế 30 3.3.1 Ưu điểm 30 3.3.2 Nhược điểm .30 KẾT LUẬN 31 TÀI LIỆU THAM KHẢO .32 CHƯƠNG I – CƠ SỞ LÝ THUYẾT CỦA ỨNG DỤNG 1.1 Tổng quan cấu trúc phần cứng KIT easyAVR V7 ATmega32-là-vi-điều-khiển-mặc-định-của-EasyAVR-V7.-Có-16 thao tác MIPS, 32K byte nhớ chương trình Flash, 2K byte nhớ SRAM 1K byte nhớ EEPROM.-Nó-có-40-chân-với-32-chân-I/O,-bộ-chuyển đổi Analog-to-Digital 10-bit với tối đa kênh (ADC), hai xử lý 8-bit đếm 16-bit, bốn kênh PWM, lập trình-nối-tiếp-USART,-Master/Slave-SPI-và-giao diện I2C-hai-dây,-bộ-định vị MHz RC nội bộ-và-bộ-dao-động-RTC-32-KHz.-Nó-cũng-có-giao-diện-JTAG-cho lập trình gỡ lỗi 1.1.1 Nguồn điện kép KIT có sẵn nguồn điện chuyển đổi tạo điện áp ổn định mức dòng điện cần để-cấp-nguồn-cho-từng-phần-của-bảng-mạch.-Bộ-phận-cung-cấp-điện gồm hai điều chỉnh công suất: ST1S10 tạo VCC-5V MC33269DT3.3 tạo VCC-3.3V Cách-cung-cấp-nguồn-cho-bảng-mạch: - Sử dụng cáp USB - Sử dụng adapter - Sử-dụng-nguồn-điện-của-phịng-thí-nghiệm Hình 1.1 Đơn vị cung cấp nguồn điện kép 1.1.2 Vi điều khiển hỗ trợ Ổ-cắm-vi-điều-khiển:-Bảng-có-7-ổ-DIP.-Bo-mạch-có-thể-lập-trình-khoảng-65bộ-vi-điều-khiển-khác từ AVR 1.1.3 Xung clock Bộ vi điều khiển AVR sử dụng xung clock bên dùng dao động thạch-anh-bên-ngoài.-KIT-EasyAVR-V7-chứa-một-tinh-thể-thạch-anh cho tất ổ cắm vi điều khiển.-Giá-trị-của-thạch-anh-phụ-thuộc-vào-tần-số-xung clock tối đa cho phép ứng dụng người dùng 1.1.4 Lập trình on-board MikroProg lập trình USB 2.0 nhanh cho phép mikroProg hỗ trợ khoảng 65-bộ-điều-khiển-AVR-trong-một-lập-trình-đơn-lẻ.-Để-bắt-đầu-sử-dụng mikroProg lập trình vi điều khiển cần làm theo bước: Bước 1: Cài đặt phần mềm - Cài-đặt-trình-điều-khiển USB - Cài-đặt-phần-mềm-AVRFlash.Bước 2: Bật máy lên - Cắm-cáp-lập-trình-USB - Đèn-LED-LINK-sẽ-sáng-lên 1.1.5 Phần mềm lập trình Phần mềm AVRFlash:-Chương-trình-on-board-mikroProg-địi hỏi phần mềm lập trình-đặc-biệt-AVRFlash.-Phần-mềm-này-được-sử-dụng-để-lập-trình-bộ-vi-điều khiển AVR Phần-mềm-có-giao-diện-và-cơng-nghệ-lập trình SingleClick 1.1.6 UART qua RS-232 - UART (thu/phát không đồng bộ) cách phổ biến để trao đổi dữ-liệu-giữa-MCU-và-các-thành-phần-ngoại vi - Giao-tiếp-nối-tiếp-RS-232-được-thực-hiện-thông-qua-đầu-nối SUB-D 9-pin môđun UART vi điều khiển 1.1.7 USB UART Giao-tiếp-USB-UART-được-thực-hiện-thông-qua-bộ-điều-khiển-FT232RL, đầu nối USB (CN4) mô-đun UART-vi-điều-khiển.-Kết-nối-này thực cách sử dụng DIP switch SW10 Hình 1.2 Hệ thống sơ đồ nối chân USB UART 1.1.8 Đầu nối máy chủ mikroBUS Mỗi kết-nối-máy-chủ-mikroBUS-bao-gồm-hai-đầu-1x8-có-chứa-các-chân có nhiều-khả-năng-được-sử-dụng-trong-bảng-phụ-kiện.-Có ba nhóm chân giao tiếp : SPI, UART-và-giao-tiếp-I2C.-Ngồi-ra-cịn-có-một chân cho PWM, Interrup, đầu vào Analog, Reset Chip Select 1.1.9 Nhóm đầu vào / đầu Các-đầu-PORT,-các-nút-PORT-và-PORT-LED-đều-nằm kế bên nhóm-lại-với-nhau.-Có-thêm-các-đầu-PORT-ở phía bên trái bảng, người dùng-có-thể-truy-cập-vào-bất-kỳ-chân-nào từ hai mặt bảng mạch Bộ chuyển-mạch-DIP-của-Tri-State-được-sử-dụng để kích hoạt điện trở kéo lên hoặc-kéo-xuống-4K7-lên-bất-kỳ-cổng-nào.-Mỗi thiết bị chuyển mạch có ba trạng thái: - Vị-trí-giữa-vơ-hiệu-hóa-chức-năng kéo lên kéo xuống từ chân PORT - Vị-trí-trên-kết-nối-điện-trở trạng thái kéo lên đến chân chọn - Vị-trí-dưới-kết-nối-điện-trở-trong-kéo-xuống đến pin PORT chọn 1.1.10 LCD 16x2 EasyAVR-V7-cung-cấp-hệ-thống-chân-nối-để-lắp-màn hình LCD 2x16 chế độ 4-bit.-Khi-lắp-LCD-vào-bảng-mạch,-phải-tắt-nguồn-rồi-mới thay Hình 1.3 Cấu tạo chân nối hình LCD 1.1.11 GLCD 128X64 EasyAVR V7 cung cấp đầu nối giao diện cần thiết để hỗ trợ GLCD với độ phân-giải-128x64-pixel,-được-điều-khiển-bởi-bộ-điều-khiển-hiển thị KS108 điều-khiển-hiển-thị-tương-thích.-Giao-tiếp-với-mơ-đun-hiển thị thực thơng qua-kết-nối-màn-hình-CN16.-Khơng-thể-sử-dụng hai hình đồng thời 1.1.12 Bảng điều khiển cảm ứng KIT-EasyAVR-V7-được-trang-bị-điều-khiển-cảm-ứng-và-đầu nối cho bảng cảm ứng điện trở dây Bảng điều khiển cảm ứng bật SW8.5, SW8.6, SW8.7 SW8.8.-Chúng-kết-nối-các-dòng-READ-X-và-READ-Y-của-bảng-điều khiển cảm ứng với đầu vào analog PA0 PA1, DRIVEA DRIVEB với đầu số PA2 PA3 ổ cắm-vi-điều-khiển.-Đảm-bảo-ngắt-kết-nối-các-thiết-bị-ngoại-vi khác, đèn LED điện-trở-kéo-lên-hoặc-kéo-xuống-để-khơng-can-thiệp-vào-tín hiệu/dữ liệu 1.1.13 Hệ thống LED Hình 1.4 Sơ đồ chân nối hệ thống LED EasyAVR-V7-có-4-con-Led-7-thanh-và-được-kết-nối-song-song Mỗi chữ số có dịng chọn số, sử dụng phép số mà liệu gửi LED được-kết-nối-với-PORTC,-và-các-dòng-lựa-chọn-chữ-số-được-kết-nối với dòng PA0-PA3 chân cắm vi điều khiển 1.1.14 DS1820 - Cảm biến nhiệt độ số DS1820-là-một-cảm-biến-nhiệt-độ-số-sử-dụng-giao-diện dây để hoạt động Nó có-khả-năng-đo-nhiệt-độ-trong-khoảng-từ 55-đến 128 ° C độ xác ± 0.5°C cho nhiệt-độ-trong-khoảng-từ 10-đến-85°C Nó địi-hỏi-nguồn điện 3V đến 5.5V để hoạt động ổn định Hình 1.5 Sơ đồ chân nối IC DS1820 EasyAVR V7 cung cấp ổ cắm riêng (TS1) cho DS1820 Dây kết nối với vi điều-khiển-được-kết-nối-thơng-qua-chân-J18.-EasyAVR-V7-cho phép bạn thiết lập truyền-thơng-1-wire-giữa-DS1820-và-vi-điều-khiển-thơng-qua-chân vi xử lí PB4 PA7 1.1.15 LM35 - Cảm biến nhiệt độ tương tự EasyAVR-V7-cho-phép-bạn-lấy-các-phép-đo-tương-tự-từ cảm biến LM35 khoảng-nhiệt-độ-giới-hạn-từ-+-2ºC-đến-+ 150ºC Bảng mạch cung cấp ổ cắm riêng (TS2)-cho-cảm-biến-LM35-trong-bao-bì-nhựa-TO-92 EasyAVR V7 cho phép bạn có được-các-tín-hiệu-tương-tự-từ-bộ-cảm-biến-LM35 sử dụng chân PA7 PB4 Việc chọn một-trong-hai-đường-này thực cách sử dụng chân J19 1.1.16 Đầu vào ADC EasyAVR V7-cung-cấp-một-giao-diện-dưới-dạng hai chiết áp để mơ điện áp-đầu-vào-tương-tự-có-thể-được-chuyển-tới-bất-kỳ-một 12 chân đầu vào tương tự-được-hỗ-trợ.-Để-kết-nối-đầu-ra chiết áp P1 với đầu vào vi điều khiển tương-tự-PB0,-PB2,-PD6,-PB4,-PB5-hoặc-PC3,-bạn phải đặt chân J3 vị trí mong muốn.-Nếu-bạn-muốn-kết-nối-chiết-áp-P3-với-bất-kỳ-đầu-vào-vi điều khiển tương tự PB1, PB3, PD7, PC4, PA5 PA6, đặt chân J4 vị trí mong muốn Bằng cách di chuyển-núm-chiết-áp,-bạn-có-thể-tạo-ra-các-điện-áp-từ-khoảng GND đến VCC-BRD 1.1.17 I2C EEPROM EasyAVR V7 hỗ trợ EEPROM nối tiếp sử dụng giao tiếp truyền thơng I2C có bộ-nhớ-1024-byte.-I2C-là-một-kênh-đơn-nối-tiếp-đa-chủ-được sử dụng để gắn thiết bị-ngoại-vi-tốc-độ-thấp-vào-máy-tính-hoặc-các-hệ-thống nhúng 1.1.18 Piezo Buzzer EasyAVR-V7-đi-kèm-với-piezo-buzzer-có-thể-được-kết-nối với chân điều khiển vi-điều-khiển-PB1-hoặc-PD4-được-xác định vị trí chân J21 Buzzer điều khiển bởi-bán-dẫn-Q8.-Vi-điều-khiển-có-thể-tạo-ra-âm-thanh-bằng cách tạo tín hiệu PWM-(Pulse-Width-Modulated) -một-tín-hiệu-sóng-vng,-một chuỗi số khơng logic số nguyên Hình 1.6 Hệ thống âm báo 1.2 Tổng quan khối truyền thông UART UART-là-viết-tắt-của-Universal-Asynchronous-Receiver – Transmitter Thường được-sử-dụng-trong-việc-truyền-dẫn-dữ-liệu-nối tiếp máy tính thiết bị ngoại vi Rất-nhiều-vi-điều-khiển-hiện-nay-đã tích hợp UART Như bạn biết giao tiếp-SPI-và-I2C-có-1-dây-truyền-dữ-liệu-và-1-dây sử dụng để truyền xung clock (SCL) để-đồng-bộ-trong-giao-tiếp.-Với-UART khơng có dây SCL, vấn đề giải quyết-khi-mà-việc-truyền-UART-được-dùng-giữa-2 vi xử lý với nhau, đồng nghĩa với việc-mỗi-vi-xử-lý-có-thể-tự-tạo-ra-xung-clock-cho-chính-nó-sử-dụng Hình 1.7 Sơ đồ ngun lý UART Ở trạng thái chờ mức điện mức (high) Khi bắt đầu truyền START bit chuyển-từ-1-xuống-0-để-báo-hiệu-là-q-trình-truyền-dữ liệu xảy Sau START bit-là-đến-các-bit-dữ-liệu-D0-D7-(Có-thể-ở-mức-High-or-Low tùy theo liệu) Sau truyền-hết-dữ-liệu-thì-đến-Bit-Parity-để-bộ-nhận-kiểm tra tính đắn liệu truyền.-Cuối-cùng-là-STOP-bit-là-1-báo-cho-thiết-bị-là bit gửi xong Thiết bị-nhận-sẽ-tiến-hành-kiểm-tra-khung-truyền-để-đảm-báo-tính-đúng-đắn liệu 1.2.1 Các thơng số truyền nhận UART - Baund-rate-(tốc-độ-baund):-Khoảng-thời-gian-dành-cho-1 bit truyền Phải cài đặt giống gửi nhận - Frame-(khung-truyền ): Khung truyền quy định số bit lần truyền - Start bit: bit truyền Frame Báo hiệu cho thiết bị nhận có-một-gói-dữ-liệu-sắp-đc-truyền-đến.-Bit-bắt-buộc - Data:-dữ-liệu-cần-truyền.-Bit-có-trọng-số-nhỏ-nhất-LSB truyền trước sau đến bit MSB - Parity bit : kiểm tra liệu truyền có khơng - Stop-bit:-là-1-hoặc-các-bit-báo-cho-thiết-bị bit gửi xong Thiết bị nhận-sẽ-tiến-hành-kiểm-tra-khung-truyền-nhằm-đảm-bảo-tính đắn liệu 1.2.2 Thanh ghi Cũng thiết bị khác AVR, tất hoạt động trạng thái module USART-được-điều-khiển-và-quan-sát-thơng-qua-các-thanh-ghi-trong-vùng nhớ I/O Có ghi thiết kế riêng cho hoạt động điều khiển USART UDR:-hay-thanh-ghi-dữ-liệu,-là-1-thanh-ghi-8-bit chứa giá trị nhận phát USART UCSRA(-USART-control-and-Status-register-A)-là ghi điều khiển hoạt-động-của-module-USART 10 dụng - Nhiệt độ sau lưu vào ghi nhớ so sánh với ghi-ngưỡng-nhiệt-độ-do-người-dùng-quy-định,-nó-sẽ-khơng-đổi-khi-mất điện - Giá trị nhiệt so sánh với ghi ngưỡng Nếu giá trị nhiệt độ đọc nhỏ mức TL lớn mức-TH-thì-cờ-báo-q-nhiệt-được-bật-và-nó-sẽ thay đổi q trình đọc nhiệt độ Vi-điều-khiển-có-thể-kiểm-ra-trạng-thái q nhiệt Alarm Search 1.3.2 LCD (Liquid Crystal Display) LCD loại hình tinh thể lỏng nhỏ-dùng-để-hiển-thị-các-dịng-chữhoặc-số-trong-bảng-mã-ASCII.-LCD-được-chia-sẵn-thành-từng-ơ ứng với ký tự ASCII nên loại LCD gọi Text LCD Mỗi ô Text LCD-bao-gồm-các-“chấm”-tinh-thể lỏng, việc kết hợp “ẩn” “hiện” chấm tạo thành-một-ký-tự-cần-hiển thị Trong Text LCD, mẫu ký tự định nghĩa sẵn Kích thước Text LCD-được-định-nghĩa-bằng-số-ký-tự thị dịng tổng-số-dịng-mà-LCD-có.-Ví-dụ-trong-đề-tài-này-là-LCD16x2 Hình 1.11 LCD 16x2 HD44780U điều khiển cho-các-Text-LCD-dạng-ma-trận-điểm,-chip được-dùng-cho-các-LCD-có-1-hoặc-2-dịng-hiển thị HD44780U có mode giao tiếp bit bit Nó chứa sẵn-208-ký-tự-mẫu-kích-thước-font-5x8-và-32-kýtự mẫu font-5x10-(tổng-cộng-là-240-ký-tự-mãu-khác-nhau) 17 1.3.2.1 Sơ đồ chân Các Text LCD theo chẩn HD44780U thường có 16 chân 14 chân kết nối với bộ-điều-kiển-và-2-chân-nguồn-cho-“đèn-LED-nền”.-Thứ-tự-các-chân thường xếp sau: Trong số LCD chân LED nên đánh số 15 16 số trường-hợp-2-chân-này-được-ghi-là-A(Anode)-và-K(cathode).-Hình mơ tả cách kết nối LCD với nguồn-mạch-điều-khiển Hình 1.12 Sơ đồ kết nối text LCD Bảng 1.3 Chức chân nối text LCD 16x2 18 1.3.2.2 Thanh ghi tổ chức nhớ HD44780U có hai ghi bit IR DR Thanh ghi IR chứa mã lệnh điều khiển-LCD-và-là-thanh-ghi-“chỉ-ghi”-(chỉ-có-thể-ghi vào ghi mà khơng đọc nó) Thanh ghi DR chứa các-loại-dự-liệu-D0:7-của-Text-LCD-và chọn tùy theo chân-điều-khiển-RS, RW HD44780U có loại nhớ DDRAM, CGROM CGRAM Để điều khiển hiển thị Text-LCD-chúng-ta-cần-hiểu-tổ chức cách thức hoạt động nhớ 1.3.2.3 DDRAM DDRAM-là-bộ-nhớ-tạm-chứa-các-ký-tự-cần-hiển thị lên LCD, gồm 80 ô chia thành hai-hàng,-mỗi-hàng-rộng-8-bit,-được-đánh số từ đến 39 cho dòng 1; từ 64 đến 103 cho dịng-2.-Mỗi-ơ-nhớ-tương-ứng-với ơ-trên-màn-hình-LCD.-Như biết LCD-loại-16x2-có-thể-hiển-thị-tối đa 32 ký tự, có số ô nhớ DDRAM không-được-sử-dụng-làm-các-ô-hiện-thị.-Để hiểu rõ hơn-chúng ta tham khảo hình bên 19 Hình 1.13 Tổ chức DDRAM Ơ nhớ có địa từ đến 15 16 ô địa từ 64 đến 79 hiển thị LCD Vì-thế-muốn-hiển-thị-một-ký-tự-nào-đó LCD cần viết ký tự vào DDRAM 32 địa Các-ký-tự-nằm-ngồi-32-ơ-nhớ-trên-sẽ-khơng đươc hiển thị, nhiên khơng-bị-mất-đi,-chúng-có-thể-dùng-cho-các-mục-đíchkhác cần thiết 1.3.2.4 CGROM CGROM-là-vùng-nhớ cố định chứa định nghĩa font cho ký tự Chip HD44780U tự thực truy xuất vùng-nhớ-này-khi-có-yêu-cầu-đọc-font để hiển thị Địa font-của-mỗi-ký-tự-vùng-nhớ-CGROM-chính-là mã ASCII ký tự CGROM DDRAM tự-động-phối-hợp-trong-quá-trình-hiển-thị-của LCD 1.3.2.5 CGRAM CGRAM vùng nhớ chứa các-symbol-do-người-dùng-tự định nghĩa, symbol được-có-kích-thước-5x8-và-được-dành-cho nhớ bit Các symbol thường định nghĩa trước-và-được-gọi-hiển-thị-khi-cần-thiết.-Vùng có tất 64 nhớ nên-có-tối-đa-8-symbol-có-thể-được-định-nghĩa 1.3.2.6 Các chân điều khiển LCD - RS - Chân lựa chọn ghi cho-phép-chọn-lựa-1-trong-2-thanh-ghi-IR-hoặc DR để-làm-việc.-Nếu-RS=0,-thanh-ghi-IR-được-chọn-và-nếu-RS=1 ghi DR chọn - R/W - Chân lựa chọn việc-đọc-và-ghi.-Nếu-R/W=0-thì-dữ-liệu-sẽ ghi từ điều-khiển-ngồi-vào-LCD.-Nếu-R/W=1-thì-dữ-liệu đọc từ LCD ngồi Cờ BF dùng để báo LCD-đang-bận.-Phải-có-một-chương-trình-con tạm gọi wait_LCD-để-chờ-cho-đến-khi-LCD-rảnh 20 Hình 1.14 Hoạt động chân RS - EN - Cho phép đo LCD hoạt động, chân kết nói với điều khiển để cho-phép-thao-tác-LCD.-Để-đọc-và-ghi-data-từ-LCD-chúng-ta cần tạo “xung cạnh xuống”-trên-chân-EN 1.3.2.7 Tập lệnh LCD Danh-sách-lệnh,-các-lệnh-số-1-là-dùng thường xuyên lúc hiển thị LCD lệnh số thường chỉ-dùng-1-lần-trong-lúc-khởi-động-LCD,-riêng-lệnh Read BF dùng-hoặc-khơng-tùy-theo-cách-viết-chương-trình-wait_LCD a) Lệnh dùng thường xun - Clear-display-–-xóa-LCD:-xóa-tồn-bộ-hiển-thị-trên LCD - Cursor-home-–-đưa-con-trỏ-về-vị-trí-đầu-dịng-1-của-LCD - Set-DDRAM-address-– định vị trí trỏ cho-DDRAM:-di-chuyển trỏ đến vị trí tùy ý DDRAM-nên-có-thể-dùng-để-chọn-vị-trí-cần-hiển-thị LCD - Write-to-CGRAM-or-DDRAM-–-ghi-dữ-liệu-vào-CGRAM-hoặc-DDRAM b) Lệnh thường dùng lần - Entry mode set – xác lập các-hiển-thị-liên-tiếp-cho-LCD: Chỉ cách hiển thị ký tự ký ký tự trước-đó.-Gồm-4-mode-ứng-với-4-mã lệnh nhứ sau: + D7:0 0x04(00000100):-hiển-thị-giảm-và-không shift + D7:0 0x05(00000101): hiển thị giảm shift + D7:0 0x06(00000110):-hiển-thị-tăng-và-không-shift.+ D7:0 0x07(00000111): hiển thị tăng shift - Display on/off control – xác-lập-cách-hiển-thị-cho-LCD: Lệnh bao gồm 21 thông số cho phép LCD-hiển-thị,-cho-phép-hiển-thị-cursor-và-mở/tắt blinking - Function set – xác lập chức cho LCD: Đây lệnh thiết lập phuơng thức giao-tiếp-với-LCD,-kích-thước-font-chữ-và-số-lượng-line-của LCD 1.3.2.8 Giao tiếp bit bit - Mode bit: Nếu bit DL lệnh-Functin-set-bằng-1-thì-mode bit dùng Để sử dụng mode bit,-tất-cả-cac-lines-dữ-liệu-của-LCD-từ-D0-đến D7 phải nối với PORT chip điều khiển bên-ngoài như-trong-hình Ưu điểm liệu ghi đọc nhanh đơn giản Nhược-điểm-là-tổng-số-chân-dành cho giao tiếp LCD q nhiều, tính ln 3-chân-điều-khiển-thì-cần đến 11 đường giao tiếp cho LCD - Mode bit -LCD-cho-phép-giao-tiếp-với-bộ-điều-khiển theo chế độ bit Trong chế độ có chân từ D4 đến-D7-được-kết-nối-với-chip-bộ điều khiển ngồi Các Instruction data bit ghi-và-đọc-bằng-cách-chia-thành-2-phần, gọi Nibbles, nibble gồm bit được-giao-tiếp-thông-qua-4-chân-D7:4, nibble cao xử lý trước nibble thấp sau Ưu điểm tối-thiểu-số-lines-dùng-cho-giao-tiếp LCD Nhược điểm việc đọc ghi nibble tương đối khó khăn đọc ghi liệu bit 1.3.3 Phím bấm (Button) - Đây loại button phổ biến,-cũng-như-đèn-LED, loạ i button có kính thước cạnh 6mm 12m Và chuyên đề sử dụng loại button 6mm Loạ i-6mm-hay-được-dùng-trong-các-dự-án-nhỏ.-giá-thành-thì-khá-rẻ Loạ-i-này-tuy-là-4-chân,-nhưng-thực-chất-cũng chân Hình 1.15 Button 6mm sơ đồ chân Trạng thái logic tất đầu vào số vi điều khiển thay đổi 22 cách-sử-dụng-các-nút-nhấn 23 CHƯƠNG II – THIẾT KẾ ỨNG DỤNG VÀ GIẢI THUẬT PHẦN MỀM 2.1 Nguyên-lý-thiết-kế-ứng-dụng-và-thiết-kế phần cứng Để ứng dụng có khả đo nhiệt độ mơi trường, phần cứng cần có IC DS18B20 IC DS18B20 sử dụng giao tiếp one – wire Ưu điểm giao tiếp cần dây để-truyền-tín-hiệu-và-làm-nguồn-ni-nên-rất-gọn-nhẹ-và-dễ-sử-dụng Chức-năng-hiển-thị-giá-trị-nhiệt-độ-lên-màn-hình-máy tính thực phím bấm giao tiếp với máy tính qua chức UART Phím bấm lập trình để-sau-mỗi-lần-nhấn-phím-thì-sẽ-xuất-giá-trị-ra-máy-tính-một-lần Hình-2.1.-Sơ đồ khối ứng dụng Kết quả-cần-đạt-được: Đã-đo-được-nhiệt-độ IC DS18B20 xuất giá trị nhiệt độ lên LCD - Đã giao-tiếp-được-giữa-KIT-và-PC-giao-tiếp-truyền-thông-UART.- Đã dùng phím bấm để xuất giá trị đo sang PC thơng qua cổng USB to-COM-và-hiển-thị-lên-màn-hình-máy-tính 24 2.1.1 Khối xử lí trung tâm Khối xử lý trung tâm sử dụng vi điều khiển-Atmega32,-có-nhiệm-vụ-đọc-giá nhiệt độ đo được-từ-cảm-biến-DS18B20.-Sau-đó,-phân-tích, xử lý để có kết ý muốn gửi liệu hiển thị lên hình LCD hay gửi lên máy tính có tín hiệu-u-cầu-truyền-từ-phím-bấm Hình-2.2 Khối xử lý trung tâm 2.1.2 Khối phím bấm - Có chức-năng giúp cho người sử dụng ấn phím để cài-đặt-các-giá-trị-theo-các-chức-năng phím bấm MODE, BACK, UP, DOWN - Khối phím bấm dùng để gửi lệnh đến cho vi điều khiển,-vi-điều-khiển-sẽ xử lý lệnh cho phép xuất giữ liệu-lên-màn-hình-máy-tính-thơng qua khối truyền thơng UART Hình 2.3 Khối phím bấm 2.1.3 Khối hiển thị Khối hiển thị sử dụng hình tinh thể lỏng LCD 16x2, có nhiệm vụ hiển thị giá trị nhiệt-độ-đo-được-từ-IC DS18B20 sau qua khối xử lí trung tâm Khối hiển thị sử dụng một-biến-trở-có-giá-trị-4K7Ω để điều chỉnh-độ-tương-phản-trên-màn-hình LCD 25 Hình 2.4 Khối hiển thị LCD 2.1.4 Khối cảm biến nhiệt độ Cảm biến đo nhiệt độ được-sử-dụng-là-DS18B20 dùng giao tiếp tuyền thông one – wire để đo nhiệt độ môi trường gửi về-khối-xử-lý-trung-tâm Hình 2.5 Khối cảm biến nhiệt độ 2.2 Thuật tốn thực 26 Hình 2.7 Sơ-đồ-thuật-tốn- Hình 2.6 Sơ-đồ-thuật-tốn-đọc giá xuất-giá-trị LCD trị nhiệt độ Hình 2.8 Sơ đồ-thuật-tốn-phím-bấm-xuất-ra máy tính Chương trình phục vụ phím bấm: 27 THỰC HIỆN CHỨC NĂNG CỦA CÁC PHÍM PHÍM PHÍM PHÍM PHÍM X= ENTER X= UP X= DOWN X= BACK 28 CHƯƠNG III – KẾT QUẢ ỨNG DỤNG 3.1 Kết mơ Sau-một-thời-gian-nghiên-cứu-và-được-giáo-viên-hướng dẫn thực hiện, nhóm chúng em-đã-hồn-thành-việc-thiết-kế-mơ phần cứng lập trình phần mềm Từ đó, chạy ứng dụng phần-mềm-mơ-phỏng-Proteus.-Kết-quả đạt hình 3.1 Hình 3.1 Kết mơ phần cứng Nhóm thực đầy đủ tiêu chí đề tài: - Đo-đạc-và-hiển-thị-giá-trị-nhiệt-độ-trên-màn-hình LCD - Cảnh-báo-trạng-thái-vượt-ngưỡng-cho-phép Cấu-hình-ngưỡng-cảnh-báo-của-giá-trị-nhiệt-độ Truyền-dữ-liệu-lên-máy-tính-thơng-qua-UART,-kích-họat-bằng nút bấm 29 Hình 3.2 Cài đặt ngưỡng cao Hình 3.3 Cài đặt ngưỡng thấp 30 Hình 3.4 Cảnh báo vượt ngưỡng cao chuông đèn LED Hình 3.5 Kết mơ dùng phím bấm gửi liệu lên máy tính 3.2 Ứng dụng thực tế - Mạch-thiết-kế-trên-được-sử-dụng-cho việc đo nhiệt độ phát cảnh báo nhiệt độ vi mạch điện tử, PC, lap top, thiết kế thiết bị tự động hóa có sử dụng loại-cảm-biến-nhiệt-độ-như-quạt-cảm-biến nhiệt độ, điều hịa, máy ấp trứng, bàn là, bình nóng lạnh,… - Thiết kế mạch có cảm biến để cảnh-báo-nhiệt-độ,-xuất-ra-tín-hiệu-lên-máytính tới gửi tới người sử dụng-thông-qua-các-hệ-thống-truyền-thông để cảnh báo 31 ... chỉnh -độ- tương-phản-trên -màn- hình LCD 25 Hình 2.4 Khối hiển thị LCD 2.1.4 Khối cảm biến nhiệt độ Cảm biến đo nhiệt độ được -sử- dụng- là -DS18B20 dùng giao tiếp tuyền thông one – wire để đo nhiệt độ môi trường gửi... thiết bị tự động hóa có sử dụng loại -cảm- biến -nhiệt- độ- như-quạt -cảm- biến nhiệt độ, điều hịa, máy ấp trứng, bàn là, bình nóng lạnh,… - Thiết kế mạch có cảm biến để cảnh-báo -nhiệt- độ, -xuất-ra-tín-hiệu-lên-máytính... Hình 3.5 Kết mơ dùng phím bấm gửi liệu lên máy tính 3.2 Ứng dụng thực tế - Mạch -thiết- kế- trên-được -sử- dụng- cho việc đo nhiệt độ phát cảnh báo nhiệt độ vi mạch điện tử, PC, lap top, thiết kế thiết

Ngày đăng: 30/12/2019, 10:51

Từ khóa liên quan

Mục lục

  • Hình 2.3. Khối phím bấm

  • Hình 2.7. Sơ-đồ-thuật-toán-xuất-giá-trị ra LCD

  • Hình 2.6. Sơ-đồ-thuật-toán-đọc giá trị nhiệt độ

  • MỤC LỤC

  • CHƯƠNG I – CƠ SỞ LÝ THUYẾT CỦA ỨNG DỤNG

    • 1.1. Tổng quan về cấu trúc phần cứng KIT easyAVR V7

      • 1.1.1. Nguồn điện kép

        • Hình 1.1. Đơn vị cung cấp nguồn điện kép

        • 1.1.2. Vi điều khiển được hỗ trợ

        • 1.1.3. Xung clock

        • 1.1.4. Lập trình on-board

        • 1.1.5. Phần mềm lập trình

        • 1.1.6. UART qua RS-232

        • 1.1.7. USB UART

          • Hình 1.2. Hệ thống sơ đồ nối chân USB UART

          • 1.1.8. Đầu nối máy chủ mikroBUS

          • 1.1.9. Nhóm đầu vào / đầu ra

          • 1.1.10. LCD 16x2

            • Hình 1.3. Cấu tạo chân nối màn hình LCD

            • 1.1.11. GLCD 128X64

            • 1.1.12. Bảng điều khiển cảm ứng

            • 1.1.13. Hệ thống 4 LED 7 thanh

              • Hình 1.4. Sơ đồ chân nối hệ thống LED 7 thanh

              • 1.1.14. DS1820 - Cảm biến nhiệt độ số

                • Hình 1.5. Sơ đồ chân nối IC DS1820

                • 1.1.15. LM35 - Cảm biến nhiệt độ tương tự

                • 1.1.16. Đầu vào ADC

Tài liệu cùng người dùng

Tài liệu liên quan