1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đo nhiệt độ độ ẩm hiển thị LCD sử dụng ATmega

52 3.7K 14

Đ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

Đồ án đo nhiệt độ độ ẩm hiển thị LCD sử dụng vi điều khiển atmegaTrình bày về các linh kiện sử dụng trong báo cáoPhương thức của cảm biến đo độ ẩm, nhiệt độCách thức lập trình cho ATmegacode và mạch in

MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG I: TỔNG QUAN VÀ NHIỆM VỤ I.1.Tổng quan I.2 Nhiệm vụ CHƯƠNG II: GIỚI THIỆU CHUNG VỀ ATMEGA8 VÀ CÁC LINH KHIỆN SỬ DỤNG TRONG ĐỀ TÀI II.1.ATmega8 II.1.1 Tổng quan II.2 Cảm Biến LM35 23 II.3 Cảm biến HS1101 25 CHƯƠNG III: 32 GHÉP NỐI VÀ LẬP TRÌNH ĐO NHIỆT ĐỘ, ĐỘ ẨM 32 III.1 Sơ đồ khối tính chọn linh kiện 33 III.1.1 Sơ đồ khối chức nhiệm vụ khối 33 III.1.2 Ghép nối tính toán chọn linh kiện 34 III.2 Sơ đồ mô kết mô 38 III.3 Lập trình cho vi điều khiển 40 III.3.1 Lưu đồ chương trình 40 III.3.2 Phần mềm lập trình CodevisionAVR 43 III.3.3 Lập trình 44 III.3.4 Mạch in 50 CHƯƠNG IV: 51 TỔNG KẾT 51 IV.1 Hướng phát triển đề tài 52 IV.2 Tổng kết 52 Nguyễn Thanh Tùng –ĐỒ ÁN I LỜI NÓI ĐẦU Ngày nay, bùng nổ khoa học kỹ thuật đòi hỏi phải ứng dụng công nghệ mới, đại vào sản xuất đời sống để đạt hiệu cao Những thành tựu khoa học kỹ thuật tiên tiến làm giới ngày thay đổi, văn minh đại Sự phát triển kỹ thuật điện tử tạo hàng loạt thiết bị với đặc diểm bật xác cao,tốc độ nhanh, gọn nhẹ yếu tố cần thiết góp phần cho hoạt động người đạt hiệu cao Kỹ thuật vi điều khiển phát triển, co ứng dụng vào nhiều lĩnh vực sản xuất công nghiệp, tự động hóa, đời sống nhiều lĩnh vực khác So với kỹ thuật số kỹ thuật vi điều khiển nhỏ gọn nhiều tích hợp lại có khả lập trình để diều khiển Nên tiện dụng động Các vi điều khiển theo thời gian với phát triển công nghệ bán dẫn phát triển nhanh,từ vi điều khiển bit đơn giản đến vi điều khiển 32 bit, sau 64 bit Điện tử trở thành ngành khoa học đa nhiệm vụ Điện tử đáp ứng đòi hỏi không ngừng yêu cầu cần thiết hoạt động đời sống ngày Một số ứng dụng nhiệt kế điện tử vào sản xuất đời sống nhắm xác định nhiệt độ xác thiết bị hệ thống có điều chỉnh phù hợp Chính thế, với kiến thức học vi điều khiển số nghiên cứu cảm biến nhiệt độ ẩm em định làm đồ án “Đo nhiệt độ độ ẩm hiển thị dùng LCD” Bài báo cáo chia thành chương xếp sau: Chương I: Giới thiệu tổng quan đề tài nhiệm vụ đặt việc thực đề tài Chương II: Giới thiệu chung vi điều khiển ATmega8 linh kiện sử dụng đề tài Chương III: Trình bày cách tính chọn linh khiện mạch cách thức lập trình cho vi điều khiển Chương IV: Tổng kết,qua báo cáo thu hoạch,nhận xét làm chưa làm để rút kinh nghiệm Nguyễn Thanh Tùng –ĐỒ ÁN I Nhóm sinh viên chúng em xin cảm ơn thầy Lê Hải Sâm, thời gian vừa qua hướng dẫn, bảo chúng em hoàn thành đề tài này.Trong thời gian làm việc với thầy, học kiến thức mới, bổ ích mà chúng em học tinh thần thái độ làm việc, việc hoạt động nhóm cho có hiệu Mặc dù cố gắng để hoàn thành đồ án làm quen với vi điều khiển nên tránh khỏi sai sót Chúng em mong thầy có nhận xét góp ý để đồ án hoàn thiện Chúng em xin chân thành cảm ơn! Sinh viên thực hiện: Nguyễn Thanh Tùng Nguyễn Đức Nhân Nguyễn Thanh Tùng –ĐỒ ÁN I CHƯƠNG I: TỔNG QUAN VÀ NHIỆM VỤ Nguyễn Thanh Tùng –ĐỒ ÁN I I.1.Tổng quan 1.Mục tiêu đề tài Thiết kế mạch dùng để đo nhiệt độ độ ẩm kết đo hiển thị thông qua hình hiển thị Thiết bị đo nhiệt độ đo độ ẩm môi trường , hiển thị thông qua hình: hiển thị nhiệt độ đo được, hiển thị độ ẩm đo - Dải đo nhiệt độ 0ĢC đến 150ĢC với sai số cực đại 1.5ĢC - Dải đo độ ẩm từ 0% đến 100%, với sai số tuyệt đối 2% 2.Lựa chọn linh kiện - Vi điều khiển ATmega8 - Cảm biến đo nhiệt độ LM35 - Cảm biến đo độ ẩm HS1101 - Màn hình hiển thị gồm dòng nên lựa chọn LCD 16x2 3.Ý nghĩa khoa học đề tài - Ngày với phát triển công nghiệp vi điện tử, kỹ thuật số, hệ thống điều khiển tự động hóa Với kỹ thuật tiên tiến vi xử lí,vi mạch số… ứng dụng vào lĩnh vực điều khiển, hệ thống điều khiển khí thô sơ,với tốc độ xử lí chậm chạp xác thay hệ thống điều khiển tự dộng với lệnh chương trình thiết lập trước - Trong trình sản xuất nhà máy, xí nghiệp nay, vấn đề nhiệt độ độ ẩm xem quan trọng đặt lên hàng đầu Để đảm bảo cho hệ thống làm việc xác hiệu vận hành an toàn việc đo hiển thị nhiệt độ độ ẩm quan trọng Chúng ta cần phải biết giá trị nhiệt độ độ ẩm để có điều chỉnh phù hợp, để tránh cố đáng tiếc giúp cho hệ thống kiểm soát cách tự động tiết kiệm lượng - Để đáp ứng yêu cầu đặt đòi phải có biện pháp cụ thể để tiến hành đo thị giá trị nhiệt độ độ ẩm cảnh báo cách xác Chính đồ án chúng em dùng vi điều khiển ATmega8 vào việc đo nhiệt độ độ ẩm vào việc đo hiển thị, sử dụng LCD bit để hiển thị giá trị nhiệt độ độ ẩm I.2 Nhiệm vụ Trong báo chúng em phải trình bày số vấn đề sau đây: - Chức cấu tạo vi điều khiển ATmega8 - Tính chọn linh kiện để tiến hành lắp đặt - Cách ghép nối ATmega8 với thiết bị ngoại vi(cụ thể là: ghép nối với LCD, cảm biến nhiệt LM35, cảm biến HS1101 để hình thành mạch đo nhiệt độ độ ẩm) Nguyễn Thanh Tùng –ĐỒ ÁN I - Cách lập trình cho vi điều khiển, sử dụng ngôn ngữ C biên dịch qua phần mềm biên dịch riêng cho AVR CodeVisionAVR - Ứng dụng hướng phát triển đề tài Nguyễn Thanh Tùng –ĐỒ ÁN I CHƯƠNG II: GIỚI THIỆU CHUNG VỀ ATMEGA8 VÀ CÁC LINH KHIỆN SỬ DỤNG TRONG ĐỀ TÀI Nguyễn Thanh Tùng –ĐỒ ÁN I II.1.ATmega8 II.1.1 Tổng quan ATmega8 vi điều khiển thuộc dòng Mega AVR sản phẩm hãng Atmel( Hoa kỳ), xử lý có kiến trúc kiểu Harvard, nghĩa đơn vị xử lý trung tâm có nhớ chương trình nhớ liệu tách biệt Bộ vi điều khiển AVR có nhiều khả để giảm lượng tiêu thụ Đây ưư điểm lớn họ vi điều khiển So với chip vi điều khiển bits khác, AVR có nhiều đặc tính hẳn, tính ứng dụng (dễ sử dụng) đặc biệt chức năng:  Gần không cần mắc thêm linh kiện phụ sử dụng AVR, chí không cần nguồn tạo xung clock cho chip (thường khối thạch anh)  Thiết bị lập trình (mạch nạp) cho AVR đơn giản, có loại mạch cần vàicon điện trở làm Một số chip hỗ trợ lập trình on-chip bootloader không cần mạch nạp  Bên cạnh lập trình ASM, cấu trúc AVR thiết kế tương thích với ngôn ngữ C  Nguồn tài nguyên source code, tài liệu internet lớn Họ vi điều khiển AVR gồm nhiều điều khiển với tài nguyên khác phận ngoại vi, nhớ chương trình kiểu đóng vỏ AVR có nhiều dòng khác bao gồm dòng Tiny AVR (như AT tiny 12, ATtiny 22…) có kích thước nhớ nhỏ, phận ngoại vi, đến dòng AVR ( hạn AT90S8535, AT90S8515) có kích thước nhớ vào loại trung bình mạnh dòng Mega (như Atmega32, Atmega128,…) với nhớ có kich thước vài Kbyte đến vài Kb với ngoại vi đa dạng tích hợp chíp, có dòng tích hợp LCD chip (dòng LCD AVR) Tốc độ dòng mega cao dòng khác Sự khác dòng cấu trúc ngoại vi, nhân • Tốc độ tối đa: 16MHz • Dung lượng nhớ chương trình: KB • Bộ nhớ EEPROM: 512 Byte • Dung lượng nhớ RAM: KB • Bộ nhớ chương trình có khả ghi 10.000 lần, nhớ EEPROM ghi 100.000 lần Hỗ trợ bootloader, có khả tự ghi vào nhớ chương trình, cập nhật chương trình cho chip mà không cần mạch nạp • Timer bit: • Timer 16 bit: • ADC: kênh, 10 bit • Giao tiếp: TWI (I2C), UART, SPI • Điện áp hoạt động: Nguyễn Thanh Tùng –ĐỒ ÁN I • • Atmega8L: 2.7V – 5.5V Atmega8: 4.5V – 5.5V Sơ đồ chân: Hình 2.1: Sơ đồ chân ATmega8 • Hệ thống clock: Nguồn clock: Chip hoạt động với nguồn Clock tương ứng với việc thiết lập FUSE tương ứng: Bảng 1.1 Ta tập trung vào hai nguồn clock sử dụng thạch anh sử dụng mạch RC tích hợp chip (dao động nội) Sử dụng thạch anh ngoài: Nguyễn Thanh Tùng –ĐỒ ÁN I Hình 2.2: Thạch anh Bảng 2.2 Để chip hoạt động cần FUSE Khi xuất xưởng mặc định chip FUSE sử dụng dao động nội với tần số 1MHz • Nguồn RESET: - Reset cấp nguồn - Reset (thông qua chân RESET) - Watchdog RESET - Reset nguồn bị sụt áp II.1.2 Điều khiển vào (IO): Nguyễn Thanh Tùng –ĐỒ ÁN I 10 Hình 3.4: Tạo tín hiệu reset Như ta biết chân Reset vi điều khiển ATmega8 (PC6/RESET) chân tích cực mức cao nên ta tạo tín hiệu reset cho hình vẽ Khi không ấn nút B1 tín hiệu đưa vào chân PC6 tín hiệu logic ân nút B1 tín hiệu có mức logic 0, lúc vi điều khiển khởi động lại III.2 Sơ đồ mô kết mô Nguyễn Thanh Tùng –ĐỒ ÁN I 38 Hình 3.5: Sơ đồ mô *Tụ C1 nối với chân AREF có tác dụng lọc nhiễu cho nguồn nuôi ADC ATmega8 Nguyễn Thanh Tùng –ĐỒ ÁN I 39 Hình 3.6: Kết mô III.3 Lập trình cho vi điều khiển III.3.1 Lưu đồ chương trình a.Chương trình Nguyễn Thanh Tùng –ĐỒ ÁN I 40 Chương trình START Cấu hình vi điều khiển ATmega8 với clock nội 8Mhz Cấu hình cho ADC (sử dụng ADC bit) Cấu hình cho Timer1 (cho phép ngắt tràn Timer, cho phép ngắt InputCapture) Port D cổng vào điều khiển LCD Đầu vào PC0 nối tới LM35 Nhận liệu điện áp từ LM35 liệu tần số từ HS1101 Chương Trình đọc ADC Chương trình đọc giá trị độ ẩm Hiển thị liệu đọc lên LCD END Nguyễn Thanh Tùng –ĐỒ ÁN I 41 b Các chương trình Chương trình ngắt tràn Timer1 Chương trình ngắt Input Capture Timer1 START START timer1_over= timer1_over+ 0xFFFF END Nguyễn Thanh Tùng –ĐỒ ÁN I chu_ky = timer1_over + ICR1 - icp1; icp1 = ICR1; timer1_over = 0; STOP 42 Chương trình đọc ADC START Chương trình hiển thị giá trị nhiệt độ đo ADC_VREF= 0xE0 START ADMUX= adc_input| ADC_VREF ADCSRA|=0x40 S Hiển thị số hàng trăm lcd_putchar((z/100)+48) ( !(ADCSRA & 0x10)) ==1 ? Hiển thị số hàng chục lcd_putchar((z%100/ 10)+48) Đ Return ADCH Hiển thị số hàng đơn vị lcd_putchar((z%10)+48) END END III.3.2 Phần mềm lập trình CodevisionAVR CodeVisionAVR - môi trường phát triển tích hợp phần mềm cho vi điều khiển Atmel AVR Nó cung cấp hỗ trợ rộng rãi cho thiết bị AVR tạo đoạn mã nhỏ gọn hiệu CodeVisionAVR bao gồm thành phần sau: Nguyễn Thanh Tùng –ĐỒ ÁN I 43 - Trình biên dịch ngôn ngữ C cho AVR; - Trình biên dịch hợp ngữ cho AVR; - Các máy phát điện mã chương trình ban đầu cho phép khởi tạo thiết bị ngoại vi; - Module giao tiếp với debug board STK-500; - Module tương tác với lập trình viên; - Terminal Hình 3.7: Môi trường làm việc phần mềm CodevisionAVR III.3.3 Lập trình a.Cấu hình cho vi điều khiển * Cổng vào ra: - Chân PC0 PB0 cổng vào - Thiết lập Port D để điều khiển LCD - Trong mục Characters/line chọn 16 để cấu hình cho LCD hàng 16 ký tự Nguyễn Thanh Tùng –ĐỒ ÁN I 44 Hình 3.8: Cấu hình cho LCD *Cấu hình cho Timer1: - Tích vào ô Timer1 Overflow phép ngắt tràn Timer1 - Tích chọn ô Input Capture phép ngắt Input Capture - Tích chọn ô Rise Edge để chọn kiểu ngắt ngắt theo sườn lên *Code chương trình #include #include #include #include // khai bao bien cho chuong trinh am unsigned long int timer1_over; Nguyễn Thanh Tùng –ĐỒ ÁN I 45 unsigned long int chu_ky; unsigned int icp1; // khai bao bien cho chuong trinh nhiet #define FIRST_ADC_INPUT #define LAST_ADC_INPUT unsigned char adc_data[LAST_ADC_INPUT-FIRST_ADC_INPUT+1]; #define ADC_VREF 0xe0 unsigned char read_adc(unsigned char adc_input) { ADMUX=adc_input | ADC_VREF; // Chọn kênh ADC điện áp so sánh ADCSRA|=0x40; //Start ADC thực chất set bit ADSC(ADC Start Convertion) lên để bắt đầu chuyển đổi //đây phép tính ADCSRA=(ADCSRA OR 0x40) với mục đích set bit ADSC // ADCSRA: ADC control and status register A-> ghi trạng thái điều khiển ADC while (!(ADCSRA & 0x10)); tự động set lên //Kiểm tra cờ ADC chuyển đổi kết thúc bit // kiểm tra bit để đảm bảo trình chuyển đổi hoàn tất ADCSRA|=0x10; return ADCH; //ADC 8bit chọn ADLAR=1 nên trả kết 8bit lưu ADCH( high) } // Timer1 overflow interrupt service routine interrupt [TIM1_OVF] void timer1_ovf_isr(void) Nguyễn Thanh Tùng –ĐỒ ÁN I 46 { // Place your code here timer1_over += 0xffff; } // Timer1 input capture interrupt service routine interrupt [TIM1_CAPT] void timer1_capt_isr(void) { // Place your code here chu_ky = timer1_over + ICR1 - icp1; icp1 = ICR1; timer1_over = 0; } // Place your code here // Declare your global variables here void lcd_temp(unsigned char z)// hàm chyển đổi hiển thị nhiệt độ { //Chuyen doi hien thi lcd_puts("Nhiet do: "); lcd_putchar((z/100)+48); lcd_putchar((z%100/10)+48); lcd_putchar((z%10)+48); lcd_puts("oC"); } Nguyễn Thanh Tùng –ĐỒ ÁN I 47 //Bảng tra giá trị tần số const unsigned long HS1101_Table[101]={ 7410,7392,7374,7357,7340,7323,7307,7290,7274,7259, 7243,7228,7213,7198,7183,7169,7155,7140,7127,7113, 7099,7086,7072,7059,7046,7033,7020,7007,6995,6982, 6969,6957,6945,6932,6920,6908,6896,6884,6872,6860, 6848,6836,6824,6812,6800,6788,6776,6764,6752,6740, 6728,6716,6704,6692,6680,6668,6656,6643,6631,6619, 6606,6594,6581,6568,6556,6543,6530,6517,6504,6491, 6477,6464,6450,6437,6423,6409,6395,6381,6367,6352, 6338,6323,6309,6284,6279,6264,6248,6233,6217,6202, 6186,6170,6154,6137,6121,6104,6087,6070,6053,6036, 6019}; void main(void) { // Declare your local variables here unsigned char doam[15]; unsigned long int T; float F; int i,k; //Cấu hình LCD lcd_init(16); lcd_clear(); lcd_gotoxy(0,0); lcd_puts("DO AN I K57"); Nguyễn Thanh Tùng –ĐỒ ÁN I 48 delay_ms(200); lcd_clear(); #asm("sei") //Chương trình while while (1) { // Place your code here lcd_gotoxy(0,0); lcd_temp(read_adc(0)); T=(float)(chu_ky); F=1000000/T; for(i=0;i=7410) k=0; else { if(((F+25)=HS1101_Table[i+1])) k=i+1; }; }; lcd_gotoxy(0,1); sprintf(doam,"Do Am: %3d ",k); lcd_puts(doam); lcd_puts("%"); delay_ms(500); } Nguyễn Thanh Tùng –ĐỒ ÁN I 49 III.3.4 Mạch in Sử dụng phần mềm Proteus để vẽ mạch in Hình 3.9: Mạch in Nguyễn Thanh Tùng –ĐỒ ÁN I 50 CHƯƠNG IV: TỔNG KẾT Nguyễn Thanh Tùng –ĐỒ ÁN I 51 IV.1 Hướng phát triển đề tài Đề tài ứng dụng để làm số sản phẩm cần đo nhiệt độ độ ẩm ví dụ lò ấp trứng, hệ thống tự động tưới nước cho trồng, số ứng dụng công nghiệp ứng dụng vào đo nhiệt độ lò cách thay cảm biến LM35 thành can nhiệt để đo dải nhiệt độ cao IV.2 Tổng kết Trên toàn chúng em tìm hiểu vi xử lí atmega8 thực đề tài đo nhiệt độ độ ẩm.Dù thời gian tìm hiểu chưa nhiều, kiến thức ngành hạn chế, dẫn thầy Lê Hải Sâm chúng em hoàn thành báo cáo thời gian quy định.Vì lần chúng em tiến hành làm mạch thực tế nên không tránh khỏi sai sót mong thầy bảo thêm để đề tài chúng em hoàn thiện hơn.Chúng em xin chân thành cảm ơn thầy! Nguyễn Thanh Tùng –ĐỒ ÁN I 52 [...]... GHÉP NỐI VÀ LẬP TRÌNH ĐO NHIỆT ĐỘ, ĐỘ ẨM Nguyễn Thanh Tùng –ĐỒ ÁN I 32 III.1 Sơ đồ khối và tính chọn linh kiện III.1.1 Sơ đồ khối và chức năng nhiệm vụ của từng khối III.1.1.1 Sơ đồ khối Cảm biến nhiệt độ Màn hình LCD 16x2 LM35 Vi điều khiển ATmega8 Cảm biến độ ẩm HS1101 IC NE555 Hình 3.1: Sơ đồ khối III.1.1.2 Chức năng nhiệm vụ của từng khối - Khối cảm biến nhiệt độ LM35 đo nhiệt độ của môi trường trả... Áp dụng công thức tính giá trị ADC ta tính được giá trị ADC chuyển đổi được là: ADC= 0.17∗ 1024 2.56 = 68 =00010001002 Lúc này thanh ghi ADCH có giá trị 000100012 =17 Vậy giá trị nhiệt độ đọc được là 17ĢC Ta sử dụng kết quả này để hiển thị lên LCD III.1.2.2 Ghép nối LCD với ATmega8 - Do sử dụng chế độ 4 bit của LCD nên chỉ cần nối 4 đường bus dữ liệu từ LCD đến vi điều khiển Chân D4 đến D7 của LCD. .. biến độ ẩm và IC NE555, tín hiệu này đưa vào vi điều khiển dưới dạng đơn xung với tần số thay đổi theo giá trị điện dung của HS1101, ATmega8 tiến hành xử lý và trả về giá trị của độ ẩm tương ứng với giá trị của tần số đo được và hiển thị lên màn hình hiển thị cùng với nhiệt độ Nguyễn Thanh Tùng –ĐỒ ÁN I 33 III.1.2 Ghép nối và tính toán chọn linh kiện III.1.2.1 Ghép nối cảm biến nhiệt độ LM35 với ATmega8 ... chân ADC0 của ATMega8 - Khối cảm biến độ ẩm HS1101 và IC NE555 được ghép với nhau HS1101 hoạt động tương tự như một tụ điện có giá trị điện dung thay đổi, ghép nối với NE555 thành một mạch tạo đơn xung đưa vào vi điều khiển Giá trị điện dung của HS1101 thay đổi sẽ làm thay đổi tần số của đơn xung đưa vào vi điều khiển - Khối hiển thị (LCD 16x2) làm nhiệm vụ hiển thị giá trị độ ẩm và nhiệt độ đo được thông... đến 30V + Độ phân giải điện áp đầu ra là 10mV/oC + Độ chính xác cao ở 25 C là 0.5 C + Trở kháng đầu ra thấp 0.1 cho 1mA tải Nguyễn Thanh Tùng –ĐỒ ÁN I 24 Dải nhiệt độ đo được của LM35 là từ -55 C - 150 C với các mức điện áp ra khác nhau Xét một số mức điện áp sau : - Nhiệt độ -55 C điện áp đầu ra -550mV - Nhiệt độ 25 C điện áp đầu ra 250mV - Nhiệt độ 150 C điện áp đầu ra 1500mV Tính toán nhiệt độ đầu... là nhiệt độ môi trường đo k là hệ số theo nhiệt độ của LM35 10mV/1 độ C Giả sử điện áp Vcc cấp cho LM35 là 5V ADC 10bit Vậy bước thay đổi của LM35 sẽ là 5/(2^10) = 5/1024 Giá trị ADC đo được thì điện áp đầu vào của LM35 là (t*k)/(5/1024) = ((10^-2)*1024*t)/5 = 2.048*t Vậy nhiệt độ ta đo được t = giá trị ADC/2048 Tương tự với ADC 11bit và Vcc khác ta cũng tính như trên để được công thức lấy nhiệt độ. .. PD6 và PD7 của vi điều khiển - Chân RS, RW, E lần lượt được nối với chân PD2, PD1, PD0 của vi điều khiển cho phép điều khiển hoạt động của LCD Nguyễn Thanh Tùng –ĐỒ ÁN I 34 - Để cấp nguồn cho LCD thì chân Vdd của LCD phải được nối với nguồn 5V và chân VSS nối với đất - Chân Vee của LCD là chân điều chỉnh độ tương phản (cho phép ta chỉnh được độ đậm nhạt của các ký tự hiển thị lên LCD) , ở đây cần nối với... DS18B20 dùng đo nhiệt độ -Nguyên lí làm việc Cảm biến HS1101 là cảm biến đo điện dung.Khi độ ẩm thay đổi,điện dung của HS1101 thay đổi.Do vậy, để đo được độ ẩm người ta thiết kế đo điện dung của HS1101.Trong thực tế,người ta thường ghép nối HS1101 va IC NE555.Khi đó giá trị điện dung của HS1101 thay đổi thì làm thay đổi tần số đầu ra của IC555.Như vậy chỉ cần đo tần số đầu ra là có thể đo được điện... bit: TIMER1 -Timer – Counter có các chế độ hoạt động chính : +Chế độ định thời +Chế độ đếm sự kiện +Chế độ tạo xung điều rộng PWM (chỉ có trong bộ TIMER1 và TIMER2) +Chế độ Input Capture (trong bộ TIMER1) -Các thanh ghi dùng để điều khiển các bộ TIMER: TCNTx, TCCRx, TIMSK • CÁC CHẾ ĐỘ HOẠT ĐỘNG CỦA TIMER – COUNTER +CHẾ ĐỘ ĐỊNH THỜI -Ở chế độ này, TIMER1 hoạt động như sau: khi có tín hiệu kích, thanh... Lm35 + Tại0 độ C thì điện áp của LM35 là 10mV + Tại 150 độ C thì điện áp của LM35 là 1.5V ==> Giải điện áp ADC biến đổi là 1.5 - 0.01 = 1.49 (V) + ADC 11 bit nên bước thay đổi của ADC là : n = 2.44mV Vậy sai số của hệ thống đo là : Y = 0.00244/1.49 = 0.164 % II.3 Cảm biến HS1101 HS1101 là loại cảm biến đo độ ẩm Độ chính xác +-2%.Dãy nhiệt độ hoạt động từ 400C ->1000C.Cảm biến HS1101 đưuọc sử dụng phổ

Ngày đăng: 15/05/2016, 19:57

Xem thêm: Đo nhiệt độ độ ẩm hiển thị LCD sử dụng ATmega

TỪ KHÓA LIÊN QUAN

w