找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3566|回复: 6
收起左侧

lcd1602显示屏显示不了,烧录之后就只亮,黑格也没了

[复制链接]
ID:675367 发表于 2019-12-27 13:45 来自手机 | 显示全部楼层 |阅读模式
显示屏没插反,烧录之后就只亮,黑格也没了。想问问是什么原因
IMG_20191227_101855.jpg
回复

使用道具 举报

ID:584814 发表于 2019-12-30 16:19 | 显示全部楼层
显示屏没动,烧录之后就只亮黑格没了就是程序问题,比如初始化不当、程序没要求显示等。
回复

使用道具 举报

ID:395068 发表于 2019-12-31 08:30 | 显示全部楼层
一般应该是程序问题,每次操作液晶的时候要先进行忙检测
回复

使用道具 举报

ID:415088 发表于 2019-12-31 09:46 | 显示全部楼层
检查一下初始化对不对
回复

使用道具 举报

ID:155507 发表于 2019-12-31 11:17 | 显示全部楼层
使用1602液晶前先拔掉数码管J6跳帽,数码管与液晶不能共用

  1. /*********************************************************************************
  2. * 【作    者】: 清翔电子:03
  3. * 【外部晶振】: 11.0592mhz        
  4. * 【主控芯片】: STC89C52RC
  5. * 【编译环境】: Keil μVisio4        
  6. * 【程序功能】: 1602液晶显示                                                                                          
  7. * 【使用说明】: 1.使用1602液晶前先拔掉数码管J6跳帽,数码管与液晶不能共用
  8.                  2.将1602液晶接到L2排母上,液晶面向开发板外部
  9.                                  3.若程序烧写完成后,1602液晶无显示,请调节开发板右下方的电位器RV1                                 
  10. **********************************************************************************/

  11. # include <reg51.h>
  12. # include <intrins.h>
  13. typedef unsigned char BYTE;
  14. typedef unsigned int WORD;
  15. typedef bit BOOL;

  16. sbit rs=P0^7;
  17. sbit rw=P0^6;
  18. sbit ep=P0^5;

  19. BYTE code dis1 []={"     QXMCU     "};
  20. BYTE code dis2 []={"HTTP://QXMCU.COM"};

  21. void delay (int m)
  22. {
  23. unsigned char i,j;
  24. for (i=0;i<m;i++)
  25. for (j=0;j<253;j++);
  26. }

  27. BOOL lcd_bz()
  28. {
  29.   BOOL result;
  30.   rs=0;           // 读忙信号
  31.   rw=1;
  32.   ep=1;
  33.   _nop_();
  34.   _nop_();
  35.   _nop_();
  36.   _nop_();
  37.   result = (BOOL)(P2&0x80);
  38.   ep=0;
  39.   return result;
  40. }

  41. void lcd_wcmd (BYTE cmd)
  42. {
  43.   while (lcd_bz());
  44.   rs=0;
  45.   rw=0;
  46.   ep=0;
  47.   _nop_();
  48.   _nop_();
  49.   P2=cmd ;
  50.   _nop_();
  51.   _nop_();
  52.   _nop_();
  53.   _nop_();
  54.   ep=1;
  55.   _nop_();
  56.   _nop_();
  57.   _nop_();
  58.   _nop_();
  59.   ep=0;
  60. }

  61. void lcd_pos (BYTE pos)
  62. {
  63.   lcd_wcmd (pos|0x80);
  64. }

  65. void lcd_wdat (BYTE dat)
  66. {
  67.    while (lcd_bz());
  68.   rs=1;
  69.   rw=0;
  70.   ep=0;
  71.   _nop_();
  72.   _nop_();
  73.   P2=dat ;
  74.   _nop_();
  75.   _nop_();
  76.   _nop_();
  77.   _nop_();
  78.   ep=1;
  79.   _nop_();
  80.   _nop_();
  81.   _nop_();
  82.   _nop_();
  83.   ep=0;
  84. }

  85. void lcd_init ()
  86. {
  87.   lcd_wcmd (0x38);
  88.   delay (1);
  89.   lcd_wcmd (0x0c);
  90.   delay (1);
  91.   lcd_wcmd (0x06);
  92.   delay (1);
  93.   lcd_wcmd (0x01);
  94.   delay (1);
  95. }

  96. main ()
  97. {
  98.   BYTE i;
  99.   lcd_init ();
  100.   delay (10);

  101.   lcd_pos (0);
  102.   i=0;
  103.   while (dis1 [i]!='\0')
  104.    {
  105.      lcd_wdat (dis1 [i]);
  106.      i++;        
  107.    }

  108.    lcd_pos (0x40);
  109.   i=0;
  110.   while (dis2 [i]!='\0')
  111.    {
  112.      lcd_wdat (dis2 [i]);
  113.      i++;        
  114.    }
  115.    while (1);
  116. }
复制代码
回复

使用道具 举报

ID:668693 发表于 2019-12-31 13:23 | 显示全部楼层
看一下1602的初始化和读取字节以及GPIO口
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表