![]() |
|
Tài trợ cho PIC Vietnam |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#2 |
Nhập môn đệ tử
Tham gia ngày: Dec 2012
Bài gửi: 5
: |
![]() day la doan code bao gom file mo phong ve he thong bao chay khi nhiet do vuot nguong cho phep.moi nguoi tham khao gop y.thank!
//*CODE MACH BAO CHAY BANG CHUONG VA HIEN THI CANH BAO LEN LCD*// #include <16f877a.h> #include <def_877a.h> #fuses HS,NOWDT,NOPROTECT,NOLVP,PUT #device adc=10//SU DUNG ADC 10 BIT #use delay(clock=20000000) #include <lcd_lib_4bit.c>//file dinh nghia ve LCD 4 bit// INT ADC; FLOAT NHIETDO; void doc_adc(void);//CHUONG TRINH CON DOC TIN HIEU// void xuly_adc(void);//CHUONG TRINH CON XU LY TIN HIEU// void hienthi_lcd(void);//CHUONG TRINH CON HIEN THI LEN LCD// //CHUONG TRINH CHINH// void main() { SET_TRIS_A(0XFF); SET_TRIS_b(0X00); SET_TRIS_C(0x00); lcd_init();//ham khai bao co su dung lcd// setup_adc(adc_clock_internal);//chon thoi gian lay mau 2-6us// setup_adc_ports(an0);//CHAN AN0 NHAN ANALOG// DELAY_MS(10); //VONG LAP WHILE XU LY HIEN THI LCD// WHILE (true) { doc_adc();//nhay den ct con xuly_adc(); hienthi_lcd(); IF (NHIETDO >=79) { OUTPUT_LOW(PIN_C2);//BAT CHUONG BAO CHAY// } ELSE { OUTPUT_HIGH(PIN_C2);//TAT CHUONG BAO CHAY// } } } //CHUONG TRINH DOC TIN HIEU VAO ANALOG// void doc_adc(void) { set_adc_channel(0);//CHON CHAN AN0 DE DOC VAO GIA TRI ANALOG// delay_us(10); ADC = read_adc();//lenh doc gia tri vao analog// } //chuong trinh xu ly tin hieu A/D// void xuly_adc(void) { NHIETDO =((float)ADC*4.88)/10; //cong thuc chuyen doi tra datasheet ve ADC 10 O DAY LA ADC 10 BIT// } //CHUONG TRINH HIEN THI LEN LCD// void hienthi_lcd(void) { lcd_putcmd(line_1);//hien thi dong 1 IF (NHIETDO<79) { printf(lcd_putchar,"Welcom to vanson"); } ELSE //THEM LENH XOA KI TU HIEN TAI???// printf(lcd_putchar," CHU Y: CO CHAY "); lcd_putcmd(line_2);//hien thi dong 2 printf(lcd_putchar,"NHIETDO =%3.1f ^C",NHIETDO); //=%3.1 ket qua chinh xac den 3 chu so va phan thap phan sau dau , la 1 so// } thay đổi nội dung bởi: ducmotlang, 20-07-2013 lúc 08:34 PM. |
![]() |
![]() |
|
|