新手求助 快疯了1602搞了一天

2020-01-14 18:56发布

买了一个1602液晶屏想显示点东西玩 但是接上怎么都不现实  用的程序是 郭天祥的那个,我就把里面的   RW RS和EN改了一下
但是总是失败 一直是方块

我得 数据是接的P1  然后 RS是P3.4  RW 3.5  EN 3.6
2.jpg (167.88 KB, 下载次数: 0) 下载附件 2012-9-5 17:13 上传

线没有问题  开始用的杜邦线 后来直接焊接的  都不行  求教各位大神

  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. uchar code table[]="I LIKE MCU!";
  5. uchar code table1[]="WWW.TXMCU.COM";
  6. sbit lcden=P3^6;
  7. sbit lcdrw=P3^5;
  8. sbit lcdrs=P3^4;
  9. uchar num;


  10. void delay(uint z)
  11. {
  12.         uint x,y;
  13.         for(x=z;x>0;x--)
  14.                 for(y=110;y>0;y--);
  15. }
  16. void write_com(uchar com)
  17. {       
  18.         lcdrs=0;
  19.         P0=com;
  20.         delay(5);
  21.         lcden=1;
  22.         delay(5);
  23.         lcden=0;
  24. }

  25. void write_data(uchar date)
  26. {
  27.         lcdrs=1;
  28.         P0=date;
  29.         delay(5);
  30.         lcden=1;
  31.         delay(5);
  32.         lcden=0;
  33. }
  34. void init()
  35. {
  36.         lcdrw=0;
  37.         lcden=0;
  38.         write_com(0x38);
  39.         write_com(0x0e);
  40.         write_com(0x06);
  41.         write_com(0x01);
  42.         write_com(0x80+0x10);
  43. }
  44. void main()
  45. {
  46.         init();
  47.         for(num=0;num<11;num++)
  48.         {
  49.                 write_data(table[num]);
  50.                 delay(20);
  51.         }
  52. //        write_com(1);
  53.         write_com(0x80+0x53);
  54.         for(num=0;num<13;num++)
  55.         {
  56.                 write_data(table1[num]);
  57.                 delay(20);
  58.         }
  59.         for(num=0;num<16;num++)
  60.         {
  61.                 write_com(0x18);
  62.                 delay(20);
  63.         }
  64.         while(1);
  65. }


复制代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
43条回答
zhaoqingtao008
1楼-- · 2020-01-18 23:12
1602是很简单的。楼主先查一下硬件电路,确保没问题的话再看看程序
二进制
2楼-- · 2020-01-19 00:31
看楼主搞定了,恭喜了,
gzrldt
3楼-- · 2020-01-19 02:13
目测楼主里面的端口错了,你接的是P1,代码里定义的是P0???
玉洋子
4楼-- · 2020-01-19 04:48
rundll32 发表于 2012-9-5 18:09
SCT89c51这个

修改延迟就可正常,话说1602真的很慢,还不如用5110一点都不用延迟
bbssilverkey
5楼-- · 2020-01-19 06:00
 精彩回答 2  元偷偷看……
huq2012
6楼-- · 2020-01-19 09:38
我也正在搞,MARK一下,LZ加油啊

一周热门 更多>