![]() |
|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Aug 2010
Bài gửi: 9
: |
![]() alo chào các pác. em dang làm 1 đề tài về LDC , mô phỏng bằng proteus, mạch hiển thị trên màn hinh LCD đc rùi nhưng chữ ko chạy qua lại trên LCD đc . pác nào rành về cái này giúp em với. đây là Code viết băng Pic C compiler:
#INCLUDE<16F877A.h> #FUSES XT,NOWDT,NOPROTECT,NOLVP #USE DELAY(CLOCK=4000000) #BYTE PORTB=0X06 #BYTE PORTC=0X07 #BYTE PORTD=0X08 #define lcd portB CONST UNSIGNED CHAR DIG[]={'T','u','y',' ','C','h','o','n',' ','s','o','#'}; INT8 A=0; void lenh(void) { OUTPUT_LOW(PIN_c0); OUTPUT_LOW(PIN_c1); OUTPUT_HIGH(PIN_c2); OUTPUT_LOW(PIN_c2); DELAY_MS(5); } VOID DU_LIEU(VOID) { OUTPUT_HIGH(PIN_c0); OUTPUT_LOW(PIN_c1); OUTPUT_HIGH(PIN_c2); OUTPUT_LOW(PIN_c2); DELAY_MS(5); } VOID MAIN(VOID) { OUTPUT_B(0X38); LENH(); OUTPUT_B(0X0E); LENH(); OUTPUT_B(0X80); LENH(); WHILE(DIG[A]!='#') { PORTB=DIG[A]; DU_LIEU(); DELAY_MS(100); A++; } OUTPUT_B(0XC0); LENH(); DELAY_MS(100); OUTPUT_D(0B11111111); WHILE(true) { //***************************************** OUTPUT_D(0B11111110); DELAY_MS(10); IF(INPUT(PIN_D4)==0)//CHO KHI D4 XUONG 0 { OUTPUT_B(0X37);//GHI7 DU_LIEU(); DELAY_MS(150); } IF(INPUT(PIN_D5)==0)//CHO KHI D5 XUONG 0 { OUTPUT_B(0X38);//GHI 8 DU_LIEU(); DELAY_MS(150); } IF(INPUT(PIN_D6)==0)//CHO KHI D6 XUONG 0 { OUTPUT_B(0X39);//GHI 9 DU_LIEU(); DELAY_MS(150); } IF(INPUT(pin_D7)==0)//CHO KHI D7 XUONG 0 { OUTPUT_B('H');//GHI h DU_LIEU(); DELAY_MS(150); } //************************************************ OUTPUT_D(0B11111101); DELAY_MS(10); IF(INPUT(pin_D4)==0)//CHO KHI D4 XUONG 0 { OUTPUT_B(0X34);//GHI 4 DU_LIEU(); DELAY_MS(150); } if(input(pin_d5)==0)//cho khi d5 xuong 0 { OUTPUT_B(0X35);//GHI 5 DU_LIEU(); DELAY_MS(150); } if(input(pin_d6)==0)//cho khi d6 xuong 0 { OUTPUT_B(0X36);//GHI 6 DU_LIEU(); DELAY_MS(150); } if(input(pin_d7)==0)//cho khi d7 xuong 0 { OUTPUT_B('I');//GHI i DU_LIEU(); DELAY_MS(150); } //****************************************** OUTPUT_D(0B11111011); DELAY_MS(10); IF(INPUT(PIN_D4)==0)//CHO KHI D4 XUONG 0 { OUTPUT_B(0X31);//GHI 1 DU_LIEU(); DELAY_MS(150); } if(input(pin_d5)==0)//cho khi d5 xuong 0 { OUTPUT_B(0X32);//GHI 2 DU_LIEU(); DELAY_MS(150); } if(input(pin_d6)==0)//cho khi d6 xuong 0 { OUTPUT_B(0X33);//GHI 3 DU_LIEU(); DELAY_MS(150); } if(input(pin_d7)==0)//cho khi d7 xuong 0 { OUTPUT_B('E');//GHI e DU_LIEU(); DELAY_MS(150); } //************************************************** * OUTPUT_D(0B11110111); DELAY_MS(10); IF(INPUT(PIN_D4)==0)//CHO KHI D4 XUONG 0 { OUTPUT_B('*');//GHI * DU_LIEU(); DELAY_MS(150); } if(input(pin_d5)==0)//cho khi d5 xuong 0 { OUTPUT_B(0X30);//GHI 0 DU_LIEU(); DELAY_MS(150); } if(input(pin_d6)==0)//cho khi d6 xuong 0 { OUTPUT_B(0X01);//clear DU_LIEU(); DELAY_MS(150); } if(input(pin_d7)==0)//cho khi d7 xuong 0 { portB='U';//GHI u DU_LIEU(); DELAY_MS(150); } } } |
![]() |
![]() |
![]() |
#2 |
Đệ tử 1 túi
Tham gia ngày: Sep 2010
Bài gửi: 12
: |
ở đây mình có 1 cái code chạy qua một lần bạn xem thử đi.
http://www.mediafire.com/?8r1m29aeo6af9 thik thì liên lạc, mình cũng đang làm về cái lcd với pic. hí |
![]() |
![]() |
![]() |
|
|