欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機+LCD1602四線驅動,亂碼 [打印本頁]

作者: BaseNet    時間: 2020-3-28 16:56
標題: 單片機+LCD1602四線驅動,亂碼
原來的延時都是3ms,我測試的時候改成的15ms,現在顯示的是第一行有一堆亂碼,第二行空。麻煩各位大神幫我看看哪里出問題了唄,謝謝。
  1. #include <stc89c5xrc.h>
  2. #include <intrins.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. typedef unsigned int u16;
  6. typedef unsigned char u8;
  7. sbit lcdrs=P1^0;
  8. sbit lcdrw=P1^1;
  9. sbit lcden=P2^5;
  10. sbit P2_0=P2^0;
  11. sbit P2_1=P2^1;
  12. uchar key_s, key_v, tmp;
  13. uchar code table1[]="    5675747456:    ";
  14. uchar code table2[]="  the best one! ";
  15. void delayms(uint x);
  16. void Lcd_1602_write(uchar com,date);
  17. void Lcd_1602_init();
  18. void main() {
  19.         uchar num;        
  20.         P0=0xFF;
  21.   Lcd_1602_init();
  22.          Lcd_1602_write(0,0x80);
  23.          for(num=0;num<16;num++)
  24.   {
  25.     Lcd_1602_write(1,table1[num]);
  26.     delayms(15);
  27.   }
  28.   Lcd_1602_write(0,0xc0);
  29.   for(num=0;num<16;num++)
  30.   {
  31.      Lcd_1602_write(1,table2[num]);
  32.      delayms(15);
  33.   }        
  34.         while(1) {
  35.         }
  36. }
  37. void delayms(uint x)
  38. {
  39.           uint i,j;
  40.           for(i=x;i>0;i--)
  41.                 for(j=110;j>0;j--);
  42. }
  43. void Lcd_1602_write(uchar com,date)
  44. {
  45.           uchar i;
  46.           lcdrw=0;
  47.           lcdrs=com;
  48.           for(i=0;i<2;i++)
  49.           {
  50.        lcden=1;
  51.        P0=(P0&0x0f)|(date&0xf0);
  52.        delayms(15);
  53.        lcden=0
  54.        date<<=4;
  55.           }
  56. }
  57. void Lcd_1602_init()
  58. {                                                                                          

  59.           Lcd_1602_write(0,0x28);
  60.         delayms(15);
  61.         lcden=1;
  62.         lcden=0;
  63.         Lcd_1602_write(0,0x28);
  64.           Lcd_1602_write(0,0x0e);
  65.           Lcd_1602_write(0,0x06);
  66.           Lcd_1602_write(0,0x01);
  67. }
復制代碼





作者: wbaisenn    時間: 2020-3-28 17:17
為何一定要用4線驅動,網上例程非常多
作者: man1234567    時間: 2020-3-31 17:03
編譯時注意看提示,你貼的這程序根本通不過編譯。
第53行 lcden=0 后面少了個分號,加上后已在普中板上完美運行。
一般不改1602可以4數據2控制2電源共8線運行,如果加工或用轉換口還可以少線。
建議找個4線任意口的程序,你的這個程序4線還是占了整個P0





歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1