|
Tài trợ cho PIC Vietnam |
Thực hành Bắt đầu làm một robot như thế nào? Mẹo vặt? Kỹ thuật? Công nghệ?... Hãy bắt tay vào việc... |
|
Ðiều Chỉnh | Xếp Bài |
27-11-2010, 10:06 AM | #6 |
Đệ tử 2 túi
Tham gia ngày: Nov 2010
Bài gửi: 26
: |
pic
và đây là code chỉnh nút tăng vì toàn bộ truong trình thì dài quá. Nếu xong ai quan tâm mình post toàn bộ
#include <16F877A.h> #include <DEF_16F877A.h> #device *=16 adc=8 #fuses NOWDT,NOPROTECT,NOLVP,HS,NOPUT,NODEBUG, NOBROWNOUT,NOCPD, NOWRT #use delay(clock=20000000) #define RS RB0 #define RW RB1 #define E RB2 #define LED RB3 #define LCD PORTC #define TANG rd0 unsigned char CD[]="N_DO BAO:"; unsigned char so[]="0123456789"; int8 I,CHUC,DV,BIEN; void CONTROL(void) { RS = 0; RW = 0; E = 1; E = 0; delay_ms(1); } void WRITE(void) { RS = 1; RW = 0; E = 1; E = 0; delay_ms(1); } // KHOI TAO LCD void main(void) { set_tris_B(0); set_tris_C(0); set_tris_D(0xff); delay_ms(100); LCD = 0x38; CONTROL(); LCD = 0x0C; CONTROL(); WHILE(TRUE) { bien=0; delay_ms(10); if(tang==0) { delay_ms(50); while(tang==0) { CONTINUE ; }; bien++; } CHUC=BIEN/10; DV =BIEN%10; LCD = 0xC0; CONTROL(); i=0; while (i<=8) { LCD = CD[i]; WRITE(); i++; } LCD = 0xCA; CONTROL(); LCD = so[chuc]; WRITE(); LCD = so[dv]; WRITE(); } } |
|
|