LCD显示不完整

2019-07-15 09:06发布

本帖最后由 blackwinter 于 2017-12-25 14:02 编辑

通过单片机控制LCD显示,但是并不能完全显示所需内容 ,只能显示一部分
如图1、2 且运行过程LCD闪烁数字时显时不显

注:在启动的瞬间有过完整显示

QQ图片20171225134741.png
QQ图片20171225134732.png
汇编.docx 下载积分: 积分 -1 分
13.41 KB, 阅读权限: 1, 下载次数: 2, 下载积分: 积分 -1 分 程序
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
blackwinter
1楼-- · 2019-07-16 10:43
人中狼 发表于 2017-12-25 16:10
最好把代码贴上来,下载是要扣积分的

新手,编的不整齐
JQ_Lin
2楼-- · 2019-07-16 12:28
仿真中不存在LCD损坏的问题。何况也出现过完整显示的情形。
任何不被留意的瑕疵都会导致错误,而又难以找到缘由。
从LCD初始化和每一个显示的程序安排来查找,看看程序执行中临时修改过什么,事后又忘记恢复到原有设置。

仅供参考。

人中狼
3楼-- · 2019-07-16 14:01
最好能更改一下程序结构,现在的结构不容易读,也不容易查错,再增加一个扫描按键的程序,
比如主程序可以改成
A1:    LCALL  DISPLAY
        LCALL         SCAN_KEY
        JNB        PRESS_KEY,A1
        MOV        A,KEY_VALUE
        CJNE        A,#S_SET,A2
        LCALL        SET_SECOND
        SJMP        A1
A2:
        CJNE        A,#M_SET,A3
        LCALL        SET_MINUTE
        SJMP        A1
A3:
        CJNE        A,#H_SET,A4
        LCALL        SET_HOUR
        SJMP        A1
A4:
        CJNE        A,#D_SET,A5
        LCALL        SET_DATE
        SJMP        A1
A5:
        CJNE        A,#YUE_SET,A6
        LCALL        SET_MONTH
        SJMP        A1
A6:
        CJNE        A,#Y_SET,A7
        LCALL        SET_YEAR
        SJMP        A2
A7:
        CJNE        A,#REST,A1
        SJMP        START
设置时分秒等部分可以写成子程序,每个子程序都尽量只有一个出口
按键扫描程序除了要判断是哪个按键按下外,还要判断按键的松开。
人中狼
4楼-- · 2019-07-16 16:51
DISPLAY里的初始化和开显示部分只需要再单片机启动后执行一次就可以了,不需要每次显示的时候都执行,如果不想改太多的话,可以把DISPLAY放到START里,从A1开始都用DISPLAY1应该就可以了
ccn
5楼-- · 2019-07-16 19:21
 精彩回答 2  元偷偷看……
勿忘初心11
6楼-- · 2019-07-17 00:40
牛X,搞汇编啊

一周热门 更多>