![]() |
|
![]() |
#1 | |
Đệ tử 7 túi
Tham gia ngày: May 2005
Bài gửi: 258
: |
Trích:
Code:
/*----------------------------------------------------------------------------- * Author : nhh * Date : 05/04/06 * Hardware : PIC16F877A * Compiler : CCS C 3.249 * Description : Hien thi LCD *=============================================================================*/ #include <16F877A.h> #include <DEFS_16F877A.h> #fuses XT,NOWDT,NOPROTECT,NOLVP #use delay(clock=4000000) #define RS RD0 #define RW RD1 #define E RD2 #define LCD PORTB const unsigned char key[]="HELLOPICVIETNAM!"; int i = 0; /*Ham yeu cau goi lenh dieu khien LCD*/ void comnwrt(void) { RS = 0; RW = 0; E = 1; delay_ms(1); E = 0; delay_ms(1); } /*Ham yeu cau goi du lieu hien thi len LCD*/ void datawrt(void) { RS = 1; RW = 0; E = 1; delay_ms(1); E = 0; delay_ms(1); } /*Ham main*/ void main(void) { set_tris_B(0); set_tris_D(0); delay_ms(100); // Tao tre 100ms cho LCD khoi dong LCD = 0x38; // Hai hang, ma tran dot 5*7, 8 bit interface comnwrt(); LCD = 0x0C; // Bat hien thi, tat con tro comnwrt(); LCD = 0x86; // Vi tri hang 1,cot 7 comnwrt(); while(true) { LCD = key[i]; datawrt(); delay_ms(100); i++; if(i==5) // Hien thi xong HELLO { LCD = 0xC3; // Vi tri hang 2,cot 4 comnwrt(); delay_ms(100); } if(i==16) // Hien thi xong PICVIETNAM! { delay_ms(1100); LCD = 0x01; // Xoa man hinh hien thi comnwrt(); delay_ms(500); LCD = 0x86; // Vi tri hang 1,cot 7 comnwrt(); i = 0; } } }
__________________
viết chương trình cho vdk chạy ổn định là cả một vấn đề. |
|
![]() |
![]() |
![]() |
|
|