找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4849|回复: 7
打印 上一主题 下一主题
收起左侧

1602液晶只显示黑块,电路是正确的,请大家帮我看看程序,谢谢

[复制链接]
跳转到指定楼层
楼主
ID:115690 发表于 2016-5-9 23:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  1. #include<reg51.h>   
  2. #include<intrins.h>
  3. typedef unsigned char uchar;
  4. typedef unsigned char uint;
  5. unsigned char code table[]= {"Temp wireless   "};
  6. unsigned char code table1[]={"Temp:           "};
  7. unsigned char code shuzi[]={"123456789ABCDEFG"};

  8. unsigned char num;      
  9. sbit rs=P1^2;//LCD数据/命令选择端(H/L)
  10. sbit rw=P1^1;//LCD读/写选择端(H/L)
  11. sbit en=P1^0;//LCD使能控制

  12. /*******************************************************************************
  13. 以下是对液晶模块的操作程序
  14. *******************************************************************************/
  15. /***********1602液晶显示部分子程序****************/
  16. void ready()
  17. {
  18.         P0=0xff;
  19.         rs=0;  //RS(H/L),低电平选择命令
  20.         rw=1;  //RW(H/L),读操作
  21.         en=1;
  22.         while(P0&0x80);  //当为0时表示不忙,退出循环。
  23.         en=0;
  24. }
  25. void write_com(uchar com)
  26. {
  27.         ready();
  28.         rs=0;//命令
  29.         rw=0;
  30.         P0=com;
  31.         en=1;//ready()执行完后,en为0。形成高脉冲,表示可对液晶读写。
  32.         en=0;
  33. }
  34. void write_date(uchar date)
  35. {
  36.         ready();
  37.         rs=1;//数据
  38.         rw=0;
  39.         P0=date;
  40.         en=1;//ready()执行完后,en为0。形成高脉冲,表示可对液晶读写。
  41.         en=0;
  42. }

  43. /**************************************************
  44. 函数功能:主函数
  45. ***************************************************/
  46. void main(void)
  47. {         
  48.           en=0;
  49.           P0=0xff;

  50.         write_com(0x38);        //设置工作方式
  51.         write_com(0x0c);        //设置光标
  52.         write_com(0x06);        //设置输入方式
  53.         write_com(0x01);        //清屏
  54.         write_com(0x80);
  55.           for(num=0;num<16;num++)
  56.         {
  57.            write_date(shuzi[num]);
  58.         }
  59.         while(1);
  60. }//      
复制代码

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:113415 发表于 2016-5-10 07:13 | 只看该作者
先看对比度调整是否合适,要不然就是接线有问题。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

板凳
ID:119751 发表于 2016-5-10 11:59 | 只看该作者
会不会是V0这个接口的滑动变阻器没有调节好。这个应该是硬件问题

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

地板
ID:109272 发表于 2016-5-10 12:27 | 只看该作者
加一些延时,以防数据丢失。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

5#
ID:119759 发表于 2016-5-10 12:59 | 只看该作者
顶,顶起来!
回复

使用道具 举报

6#
ID:97438 发表于 2016-5-10 17:23 | 只看该作者
估计是硬件问题,那个调节显示灰度的电阻没有调好

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

7#
ID:117574 发表于 2016-5-10 18:25 来自手机 | 只看该作者
我也存在这种问题
回复

使用道具 举报

8#
ID:1 发表于 2016-5-10 22:06 | 只看该作者
默认插上去1602液晶没有用软件初始化都是只显示黑块的。说明软件或者硬件有问题 得一个个的排查
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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