标题: 单片机LCD12864,运行一段时间后花屏问题 [打印本页]

作者: herui2128    时间: 2023-11-17 11:19
标题: 单片机LCD12864,运行一段时间后花屏问题
单片机程序上电启动时还是显示正常,后续在程序在重复运行一段时间后就出现了显示错位等花屏问题。如图所示,请各位大神帮忙看看是那里不对。
我感觉应该是频率向显示写显示“运行模式时”出现。但是修改了很多次,一次没有在程序中找到解决办法。

11.jpg (157.28 KB, 下载次数: 69)

正常显示

正常显示

22.jpg (133.5 KB, 下载次数: 68)

错位显示

错位显示

【90C514AD 12864显示】.rar

96.26 KB, 下载次数: 2


作者: zhaxiaobian_er    时间: 2023-11-17 14:16
速度可以慢一点测试一下。
作者: yzwzfyz    时间: 2023-11-17 14:19
屏的引脚被意外(不是你希望的)驱动了。
从屏幕内容分析:多为软件问题,写屏中途被中打(例:在【转】【检】之间……),
此类问题自己细心分析,关心中断服务与显示的关系。


作者: zch5200    时间: 2023-11-17 14:49
是不是开始地址0x80变成0x84了,字被往后移动了,因为第三行是第一行0x80开头的地址的延续,第四行是第二行0x90开头的地址的延续,估计是地址被往后移动了4位,你仔细看看程序
作者: herui2128    时间: 2023-11-20 16:09
zch5200 发表于 2023-11-17 14:49
是不是开始地址0x80变成0x84了,字被往后移动了,因为第三行是第一行0x80开头的地址的延续,第四行是第二行 ...

从现象上来看是这样,但是重新启动时,是正常显示的,也可以正常运行十几个轮次,每次出现错位的时间是不同的,有时很快就出现错位,有时要运行几十次出现错位。
作者: herui2128    时间: 2023-11-20 16:14
yzwzfyz 发表于 2023-11-17 14:19
屏的引脚被意外(不是你希望的)驱动了。
从屏幕内容分析:多为软件问题,写屏中途被中打(例:在【转】【 ...

采用的是串口驱动。使用的是STC90C514AD。芯片中3个中断都用上了,T0是38K的遥控中断,T1是遥控脉冲控制中断。T2是功能按键的检测中断。T2中断中的显示程序已经移到主程序中了,目前是0报错和0报警。从程序中看,遥控时并没有执行向液晶的执行命令。我是找不出现故障原因了,只能怀疑是干扰导致显示错位问题(也加了1个104独石电容和470UF电解电容,然而并没有什么卵用)。
作者: a137135    时间: 2023-11-20 20:30
取字摸大小显示问题,改变字模的大小。
作者: herui2128    时间: 2023-11-22 17:05
a137135 发表于 2023-11-20 20:30
取字摸大小显示问题,改变字模的大小。

没有进行取模。这个12864有字库,直接写要显示的字就行了。
目前已暂时解决了,将3根串口的驱动线用锡波纸包了,程序中取消了频繁“要显示的状态”。目前没有出现错位的问题了。
作者: npn    时间: 2023-11-22 20:50
检查数组越界或指针操作有误,导致其他变量被异常修改。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1