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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 12639|回復: 30
打印 上一主題 下一主題
收起左側

LCD1602上電后只顯示第一排的方塊,初始化應該沒問題

  [復制鏈接]
跳轉到指定樓層
樓主
請問大佬們,為什么液晶上電后只顯示第一排的方塊。初始化應該沒問題,下面代碼,幫幫忙,急!!!

單片機源程序如下:
  1. #include<reg52.h>
  2. #include<string.h>

  3. sbit rs=P0^7;
  4. sbit rw=P0^6;
  5. sbit en=P0^5;

  6. char t0[]="HELLO WORLD!";
  7. char t1[]="HELLO NEUSOFT!";
  8. int i;

  9. void delay(int z);
  10. void write_cmd(char cmd);
  11. void write_data(char dt);
  12. void init();

  13. void main()
  14. {
  15.         init();
  16. //        write_data('1');
  17.         for(i=0;i<strlen(t0);i++)
  18.         {
  19.                 write_data(t0[i]);
  20.                 delay(20);
  21.         }
  22.         while(1);
  23. }

  24. void init()
  25. {
  26.         write_cmd(0x38);
  27.         write_cmd(0x0c);
  28.         write_cmd(0x06);
  29.         write_cmd(0x01);
  30.         write_cmd(0x80);}

  31. void write_data(char dt)
  32. {
  33.          
  34.         rs=1;
  35.         rw=0;
  36.         P2=dt;

  37.         delay(5);
  38.         en=1;
  39.         delay(5);
  40.         en=0;
  41. }

  42. void write_cmd(char cmd)
  43. {
  44.         
  45.         rs=0;
  46.         rw=0;
  47.         P2=cmd;

  48.         delay(5);
  49.         en=1;
  50.         delay(5);
  51.         en=0;
  52. }

  53. void delay(int z)
  54. {
  55.         int x,y;
  56.         for(x=z;x>0;x--)
  57.                 for(y=110;y>0;y--);
  58. }
復制代碼


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

使用道具 舉報

沙發
ID:307020 發表于 2019-8-21 12:30 | 只看該作者
調LCD的驅動電壓試試沒有?就是原理圖中的電位器,管對比度的,對比度過大就會全是小方塊。
回復

使用道具 舉報

板凳
ID:213173 發表于 2019-8-21 12:59 | 只看該作者
程序沒有問題只能說沒有語法和邏輯問題,不代表沒有時間問題。主時鐘頻率和延時函數對LCD1602驅動碼的時序影響很大。這是典型的初始化失敗的現象。
回復

使用道具 舉報

地板
ID:10193 發表于 2019-8-21 13:25 | 只看該作者
第一行和第二行的地址是不一樣的,具體請看1602的手冊
回復

使用道具 舉報

5#
ID:267330 發表于 2019-8-21 14:39 | 只看該作者
有顯示,不過對比度調錯了,調節R15
回復

使用道具 舉報

6#
ID:290170 發表于 2019-8-21 14:42 | 只看該作者
void main() {         init(); //        write_data('1');          for(i=0;i<strlen(t0);i++)         {                 write_data(t0[i]);                 delay(20);         }         while(1); }
回復

使用道具 舉報

7#
ID:290170 發表于 2019-8-21 14:43 | 只看該作者
你程序只讓第一行顯示 第二行當然不會顯示啦
回復

使用道具 舉報

8#
ID:572374 發表于 2019-8-21 18:26 | 只看該作者
wj_yuq 發表于 2019-8-21 12:30
調LCD的驅動電壓試試沒有?就是原理圖中的電位器,管對比度的,對比度過大就會全是小方塊。

調過了,都擰壞了還是一樣...
回復

使用道具 舉報

9#
ID:572374 發表于 2019-8-21 18:28 | 只看該作者
gb302 發表于 2019-8-21 13:25
第一行和第二行的地址是不一樣的,具體請看1602的手冊

這個我知道,我是想讓第一行顯示hello world,我在模擬電路上試過是可以的,但是用在這就不行了
回復

使用道具 舉報

10#
ID:572374 發表于 2019-8-21 18:29 | 只看該作者
999994 發表于 2019-8-21 14:42
void main() {         init(); //        write_data('1');          for(i=0;i

??請問你這是什么意思,看不懂...
回復

使用道具 舉報

11#
ID:572374 發表于 2019-8-21 18:30 | 只看該作者
999994 發表于 2019-8-21 14:43
你程序只讓第一行顯示 第二行當然不會顯示啦

這個當然知道鴨,我代碼就是只讓第一行顯示hello world
回復

使用道具 舉報

12#
ID:572374 發表于 2019-8-21 18:30 | 只看該作者
本帖最后由 Conlin不喝飲料 于 2019-8-21 18:47 編輯
wulin 發表于 2019-8-21 12:59
程序沒有問題只能說沒有語法和邏輯問題,不代表沒有時間問題。主時鐘頻率和延時函數對LCD1602驅動碼的時序 ...

不是很懂...能再準確的說一下嗎,請問我應該怎么樣初始化...
回復

使用道具 舉報

13#
ID:235543 發表于 2019-8-21 20:33 | 只看該作者
將第一行程序顯示位置的代碼改一下,放到第二行試一試
回復

使用道具 舉報

14#
ID:531987 發表于 2019-8-21 22:12 | 只看該作者
你會不會是插反了。。。,我有塊一樣的板
回復

使用道具 舉報

15#
ID:531987 發表于 2019-8-21 22:12 | 只看該作者
1602反過來插試試
回復

使用道具 舉報

16#
ID:531987 發表于 2019-8-21 22:15 | 只看該作者
而且這個板數碼管跟1602不能同時用,用的時候要拔跳線帽的
回復

使用道具 舉報

17#
ID:56665 發表于 2019-8-22 08:58 | 只看該作者
1602插反了不會燒,但是輸入電流會變大,模塊發熱,這是我曾經碰到過的。
回復

使用道具 舉報

18#
ID:572374 發表于 2019-8-22 09:03 | 只看該作者
107056 發表于 2019-8-21 22:12
你會不會是插反了。。。,我有塊一樣的板

沒有,我也試過反著插,你有沒有測試程序,能不能發給我
回復

使用道具 舉報

19#
ID:572374 發表于 2019-8-22 09:04 | 只看該作者
107056 發表于 2019-8-21 22:15
而且這個板數碼管跟1602不能同時用,用的時候要拔跳線帽的

對,不能同時使用
回復

使用道具 舉報

20#
ID:572374 發表于 2019-8-22 09:09 | 只看該作者
107056 發表于 2019-8-21 22:12
1602反過來插試試

你是反著插的嗎,你的可以用嗎?我太難了
回復

使用道具 舉報

21#
ID:214223 發表于 2019-8-22 09:43 | 只看該作者
最好和你的數碼管分開使用,不然會有影響的
回復

使用道具 舉報

22#
ID:572374 發表于 2019-8-22 13:35 | 只看該作者
Host 發表于 2019-8-22 09:43
最好和你的數碼管分開使用,不然會有影響的

這個數碼管關不了,他有一些管口和液晶共用
回復

使用道具 舉報

23#
ID:531987 發表于 2019-8-22 15:38 | 只看該作者
Conlin不喝飲料 發表于 2019-8-22 13:35
這個數碼管關不了,他有一些管口和液晶共用

你J1跳線帽拔了數碼管跟1602應該就不會共用了
回復

使用道具 舉報

24#
ID:366214 發表于 2019-8-23 14:57 | 只看該作者
我說一下自己的看法啊,lcd1602不都是先寫命令,然后再寫數據的嗎,main函數里面你沒有寫命令,你可以試一下,然后你確定了你的開發板與那個圖是對應的嗎
回復

使用道具 舉報

25#
ID:572374 發表于 2019-9-4 14:22 | 只看該作者
韋孟祥 發表于 2019-8-23 14:57
我說一下自己的看法啊,lcd1602不都是先寫命令,然后再寫數據的嗎,main函數里面你沒有寫命令,你可以試一 ...

命令已經在初始化函數里面寫了噢,這個圖也是對的,我要裂開來了....
回復

使用道具 舉報

26#
ID:572374 發表于 2019-9-4 14:35 | 只看該作者
107056 發表于 2019-8-22 15:38
你J1跳線帽拔了數碼管跟1602應該就不會共用了

拔了跳線帽確實數碼管沒顯示了,但是液晶還是只是上電狀態...太難了
回復

使用道具 舉報

27#
ID:575597 發表于 2020-12-1 11:44 | 只看該作者
同樣的問題,想問問你解決了嗎= =
回復

使用道具 舉報

28#
ID:517951 發表于 2020-12-2 09:10 | 只看該作者
初始化代碼沒有執行到1602就會導致第一行顯示全黑,需要檢查RW,E,rs,P2是否與單片機引腳可靠連接,且51單片機的P0口必須要有上拉10k電阻,3條控制信號線接到了P0上了,沒有10K電阻就會有問題。
回復

使用道具 舉報

29#
ID:429356 發表于 2020-12-2 09:51 | 只看該作者
你這是調的過亮了。
回復

使用道具 舉報

30#
ID:839796 發表于 2020-12-13 23:16 | 只看該作者
同樣問題,想問問解決了沒
回復

使用道具 舉報

31#
ID:859795 發表于 2020-12-14 00:45 來自手機 | 只看該作者
volarge current is low, repair your IC
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 青青草综合网 | 蜜桃传媒av| 日韩欧美中文字幕在线观看 | 久久久亚洲一区 | 国产一区二区在线播放视频 | 美女天天操| 日韩成年人视频在线 | 国产99在线 | 欧美 | 久久久国产视频 | 能看的av| 国产精品免费一区二区三区四区 | 99精品免费久久久久久日本 | 日韩欧美一区二区三区在线播放 | 伊人激情网 | 精品成人在线视频 | 国产免费一区二区 | 美女人人操 | 久久久久久黄 | 黄色毛片免费看 | 久久久婷 | 久久综合伊人 | 懂色一区二区三区免费观看 | 久久99精品久久久久久国产越南 | 国产四区 | a在线视频观看 | 五月天天丁香婷婷在线中 | 另类视频在线 | 久久综合av | 国产福利网站 | 亚洲欧美日本在线 | 91精品久久| 在线欧美亚洲 | 国产高清视频在线观看 | 成人精品国产一区二区4080 | 亚洲视频在线播放 | 日韩精品在线一区 | 久久久久av | 久久精品国产亚洲 | 日本免费一区二区三区视频 | 免费亚洲婷婷 | 四虎影视在线 |