phmg.net
当前位置:首页 >> 为什么我的LCD1602单片机程序显示日期时间错乱 >>

为什么我的LCD1602单片机程序显示日期时间错乱

程序有问题,一般要么是显示时的换算出了问题,要么是显示地址写错乱了

DS1302的数据显示存在16进制转换的问题,这个要特别注意。 另外不要随便抄别人的程序,用之前一定要读懂,就是抄也要抄那种有正规注释的程序,这样查找问题比较容易。。 建议你去杜洋的网站去下载一段标准的代码使用。。 下面只是一部分。。 /**...

void main() { timer_init(); write_init(); while(1) { delay_ms(10); write_com(0x80+0x00); write_date (Disp_Tab[a/600]); write_date (Disp_Tab[a%600/60]); write_date (Disp_Tab[10]); write_date (Disp_Tab[a/10]); write_date (Disp_Ta...

很大的可能是1302的问题,比如1302的32K晶振停振(运行的时候不要用手触摸晶振引脚,出现乱码的时候用示波器观察下晶振的波形),1302读取错误等等,先试试不用1302,只用单片机让1602显示字符,看看有没有问题,然后再检查程序和1302

1.硬件连接接触不良、虚焊。 2.LCD初始化函数写的不好,偶尔上电后初始化失败,就不能显示。建议上电延时一段时间,待LCD稳定后在执行初始化函数。 3.程序上要注意读写时序,加入适当的延时时间。 4.调节LCD第三脚V0的电压,调节到一个合适的值...

肯定是你 的程序有问题了。

#include#define uchar unsigned char#define uint unsigned intuchar code table[]="I LIKE MCU!";uchar code table1[]="www.TXMCU.COM";sbit lcden=P3^4;sbit lcdrs=P3^5;sbit dula=P2^6;sbit wela=P2^7;uchar num;void delay(uint z){uint x,...

LCD是静态显示,不用反复刷新,所以主程序可以检测按键并显示,由于你用了定时器,可在定时器中断程序里处理时间数据,中断不会被错过的 主程序里只管检测按键和显示,送LCD显示大约需十几到几十ms,所以不影响对按键的响应,定时器中断一般设定5...

是不是你初始化时间程序一直在起作用,初始化以后要把初始化时间程序注释掉再烧录一遍,不然单片机每次重启都会重新初始化一次。

这个是正常的现象,因为板内接线的原因,你没有控制的情况下,如果那部分电路有别的地方用到,高低电平就会使有效的部分的类亮,在你初始化后,即控制下它就不会那样了,把程序下进去看一下,单步跟一下哪里第一次灭了就是哪里就是初始化了。

网站首页 | 网站地图
All rights reserved Powered by www.phmg.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com