久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2439|回復(fù): 12
打印 上一主題 下一主題
收起左側(cè)

1602不顯示內(nèi)容僅顯示白方塊

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1092057 發(fā)表于 2023-8-27 20:09 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
求助大佬幫忙看看,目的是做一個(gè)檢測(cè)光亮度的器件,目前檢測(cè)系統(tǒng)沒有問題,但原定的顯示部分(1602)無法正常顯示代碼如下
  1. #include <REG52.H>       
  2. #include <math.h>
  3. #include <stdio.h>
  4. #include <INTRINS.H>
  5. #define uchar unsigned char
  6. #define uint  unsigned int       
  7. #define DataPort P0                  
  8. sbit    LCM_RS=P2^7;
  9. sbit    LCM_RW=P2^6;
  10. sbit    LCM_EN=P2^5;

  11. sbit k1=P1^5;         

  12. sbit led=P3^7;

  13. sbit beep=P3^6;
  14. sbit light = P1^1;

  15. void    delay(unsigned int k);
  16. void    InitLcd();
  17. void    WriteDataLCM(uchar dataW);
  18. void    WriteCommandLCM(uchar CMD,uchar Attribc);
  19. void    DisplayOneChar(uchar X,uchar Y,uchar DData);
  20. void    LCD_Clear();

  21. void InitLcd()                               
  22. {                       
  23.         WriteCommandLCM(0x38,1);       
  24.         WriteCommandLCM(0x08,1);       
  25.         WriteCommandLCM(0x01,1);
  26.         WriteCommandLCM(0x06,1);       
  27.         WriteCommandLCM(0x0c,1);
  28. }

  29. void WaitForEnable(void)       
  30. {                                       
  31.         DataPort=0xff;               
  32.         LCM_RS=0;LCM_RW=1;_nop_();
  33.         LCM_EN=1;_nop_();_nop_();
  34.         while(DataPort&0x80);       
  35.         LCM_EN=0;                               
  36. }
  37. void WriteCommandLCM(uchar CMD,uchar Attribc)
  38. {                                       
  39.         if(Attribc)WaitForEnable();       
  40.         LCM_RS=0;LCM_RW=0;_nop_();
  41.         DataPort=CMD;_nop_();       
  42.         LCM_EN=1;_nop_();_nop_();LCM_EN=0;
  43. }       

  44. void WriteDataLCM(uchar dataW)
  45. {                                       
  46.         WaitForEnable();               
  47.         LCM_RS=1;LCM_RW=0;_nop_();
  48.         DataPort=dataW;_nop_();       
  49.         LCM_EN=1;_nop_();_nop_();LCM_EN=0;
  50. }

  51. void DisplayOneChar(uchar X,uchar Y,uchar DData)
  52. {                                               
  53.         Y&=1;                                               
  54.         X&=15;                                               
  55.         if(Y)X|=0x40;                                       
  56.         X|=0x80;                       
  57.         WriteCommandLCM(X,0);               
  58.         WriteDataLCM(DData);               
  59. }

  60. void delay(unsigned int k)       
  61. {                                               
  62.         unsigned int i,j;                               
  63.         for(i=0;i<k;i++)
  64.         {                       
  65.         for(j=0;j<121;j++)                       
  66.         {;}
  67.         }                                               
  68. }                                                           

  69. void LCD_Clear(void)
  70. {
  71.   WriteCommandLCM(0x01);
  72.   delay(20);
  73. }

  74. void main()
  75. {
  76.         InitLcd()
  77.         LCD_Clear();
  78.                 DisplayOneChar(0,1,'d');
  79.                 DisplayOneChar(1,1,'a');
  80.                 DisplayOneChar(2,1,'n');
  81.                 led=0;
  82.                 beep=1;
  83.                 k1=0;
  84.     WriteCommandLCM(0x08);
  85.      while(1)
  86.      {
  87.                          if(light==0)
  88.                          {
  89.                                 led=1;
  90.                                 beep=0;
  91.                          }
  92.     }
  93. }
復(fù)制代碼




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1085441 發(fā)表于 2023-8-28 00:26 | 只看該作者
這種情況一般是LCD的連接線有問題,查一下接線對(duì)不對(duì),程序中IO定義對(duì)不對(duì),程序讀寫時(shí)序?qū)Σ粚?duì)
回復(fù)

使用道具 舉報(bào)

板凳
ID:596109 發(fā)表于 2023-8-28 08:27 | 只看該作者
可以查查背光亮度調(diào)節(jié),太亮可能會(huì)這樣
回復(fù)

使用道具 舉報(bào)

地板
ID:190832 發(fā)表于 2023-8-28 08:54 | 只看該作者
調(diào)節(jié)背光電阻試試
回復(fù)

使用道具 舉報(bào)

5#
ID:712097 發(fā)表于 2023-8-28 09:05 | 只看該作者
void InitLcd()                              
{                       
        WriteCommandLCM(0x38,1);delay(50);
        WriteCommandLCM(0x08,1);delay(50);     
        WriteCommandLCM(0x01,1);delay(50);
        WriteCommandLCM(0x06,1);delay(50);
        WriteCommandLCM(0x0c,1);delay(50);
}
初始化函數(shù)每句加個(gè)延時(shí)試一下。
回復(fù)

使用道具 舉報(bào)

6#
ID:97554 發(fā)表于 2023-8-28 15:23 | 只看該作者
這個(gè)程序能編譯?有錯(cuò)誤沒有排除吧
回復(fù)

使用道具 舉報(bào)

7#
ID:97554 發(fā)表于 2023-8-28 15:42 | 只看該作者
81和95 行 WriteCommandLCM(0x08);在聲明函數(shù)的時(shí)候void WriteCommandLCM(uchar CMD,uchar Attribc)里邊這是有參數(shù)的

87 行的 InitLcd()  后邊應(yīng)該有個(gè)“ ;”吧?

原程序復(fù)制過來的話,不知道在你的KEIL里可以生成HEX?不報(bào)錯(cuò)嗎?
回復(fù)

使用道具 舉報(bào)

8#
ID:1040201 發(fā)表于 2023-8-28 15:55 | 只看該作者
確實(shí)少了;  但是顯示白塊 應(yīng)該是有數(shù)據(jù)過來了 ,檢查硬件部分看看有沒有問題。再有這種現(xiàn)象  最好是拍個(gè)圖片上來。
回復(fù)

使用道具 舉報(bào)

9#
ID:1085441 發(fā)表于 2023-8-28 17:55 | 只看該作者
如果是背光太亮,多少能看到些字符影子。
回復(fù)

使用道具 舉報(bào)

10#
ID:1092176 發(fā)表于 2023-8-29 10:15 | 只看該作者
調(diào)節(jié)背光滑動(dòng)電阻
回復(fù)

使用道具 舉報(bào)

11#
ID:20836 發(fā)表于 2023-8-29 10:59 | 只看該作者
P0口有接上拉電阻嗎?
回復(fù)

使用道具 舉報(bào)

12#
ID:202023 發(fā)表于 2023-8-29 23:37 | 只看該作者
void InitLcd()                              
{                       
        WriteCommandLCM(0x38,1);      
        WriteCommandLCM(0x08,1);      
        WriteCommandLCM(0x01,1);
        WriteCommandLCM(0x06,1);      
        WriteCommandLCM(0x0c,1);
}

void WaitForEnable(void)      
{                                       
        DataPort=0xff;               
        LCM_RS=0;LCM_RW=1;_nop_();
        LCM_EN=1;_nop_();_nop_();
        while(DataPort&0x80);      
        LCM_EN=0;                              
}
void WriteCommandLCM(uchar CMD,uchar Attribc)
{                                       
        if(Attribc)WaitForEnable();      
        LCM_RS=0;LCM_RW=0;_nop_();
        DataPort=CMD;_nop_();      
        LCM_EN=1;_nop_();_nop_();LCM_EN=0;
}      
這2個(gè)函數(shù)有問題,液晶不能初始化。你從壇子里搜一下, while(1)
     {
                         if(light==0)
                         {
                                led=1;
                                beep=0;
                         }
    }while里面沒有顯示函數(shù),就算能顯示,也一直顯示d,a,n三個(gè)字母。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产99久久精品一区二区永久免费 | 久久久久久国产 | 国产精品久久久久久久免费大片 | 亚洲系列第一页 | 国产高潮好爽受不了了夜色 | 久久久久一区二区三区 | 久久国产精品99久久久久久丝袜 | 一区二区免费在线观看 | 欧美日本免费 | 国外成人免费视频 | 伊人网91 | 日本大片在线播放 | 日韩国产在线 | 日韩欧美一区二区三区免费观看 | 欧美三级网站 | 国产一区二区三区在线视频 | 香蕉视频一区二区 | 国产精品日本一区二区不卡视频 | 国产精品久久久久久福利一牛影视 | 成人免费毛片在线观看 | 久久久亚洲一区 | 日韩一区二区成人 | 一区二区三区精品在线视频 | 欧美在线观看一区二区 | 日韩国产一区二区三区 | 日韩精品久久久 | 国产精品久久精品 | 国产98色在线 | 日韩 | 成人精品鲁一区一区二区 | 日韩在线欧美 | 精品久久影院 | 国产欧美日韩一区 | 综合色播| 在线观看黄免费 | 国产精品一区二区不卡 | 夜夜精品浪潮av一区二区三区 | 我爱操| 国产精品久久久久一区二区 | 99热国产免费 | 精品1区2区3区4区 | 国产小u女发育末成年 |