这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 12232 用12232做显示的实时时钟,碰到的怪问题?

共2条 1/1 1 跳转至

12232 用12232做显示的实时时钟,碰到的怪问题?

院士
2006-09-17 18:14:16     打赏
12232 用12232做显示的实时时钟,碰到的怪问题?



关键词: 12232     显示     实时     时钟     碰到     问题    

院士
2006-12-22 22:43:00     打赏
2楼
问 本人在做实验的过程中,对LCD显示程序的单独调试中没有问题,但是把时钟调整程序 ( 定时器1开中断 ) 加进来后运行几分钟LCD局部地方会出现乱码,或者是时钟调整后也会显示乱码?现在已经不知所措......

请高手不吝赐教!

部分程序如下:
main()
{

SP= 0x30;
lcd_init();
clr_scr();//清屏
t0_init();//40MS定时中断 40MS*25=1S
t1_init();//10MS定时中断 键盘扫描
dis_init();

while(1)
{
key_sm();
dis_sm();
work();//温度测量
//flash();
}
//dis_sm();
}

1: 个人见解使用的是间接读写方式吧?
在读写LCD时关中断,完毕后开中断.
在最靠近硬件操作语句的地方修改,可以减短关中断的时间 2: to : zgl7903谢谢!
但这样会不会影响到时间精度问题呢?
另外
今天又做了个实验:不调用温度测量和闪烁程序时,程序可以正常运行,我想是不是函数太多了,堆栈出错...
本人菜鸟,没有调试经验,望大虾位指点!
3: 没有顶吗自己顶一点
请各位高手说说自己的看法.......(现在都在郁闷中度过....) 4: 个人见解定时精度可以使用自装载模式,没有累计误差就可以保证
5: 用显示缓冲区并在一处操作LCD.关中断就没必要了~~~ 6: 用显示缓冲区并在一处操作LCD.怎么理解?(小弟...愚..)

对LCD 显示操作,我只是在相对数据应发生变化时,才调用显示函数.
如:秒加1了,就把秒显示刷新一次,没有对其它数据进行显示刷新(个人认为没必要)

if(time1.sec != sec_buf)
{
sec_buf = time1.sec;
bcd(time1.sec,6);
dis(45, * ( BCD ) );//秒
dis(53, * ( BCD + 1 ) );
}

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]