打印
[AVR单片机]

关于M128的T0定时器

[复制链接]
1161|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yzgln|  楼主 | 2008-11-21 11:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在使用M128的T0定时器时,遇到一个问题,下面是我的程序,请高手看看有什么问题,ldi r16,0x01        ;设置T0
out timsk,r16        ;允许T0溢出中断
ldi r16,0b00000111    ;
out tccr0,r16        ;预分频CLK/1024
ldi r16,0x06        ;预T0计数寄器为6
out tcnt0,r16        ;T0中断一次为250ms
sei                 ;开全局中断    
.
.
.中断服务程序
time_t0:
in temp_int,sreg
push temp_int
ldi temp_int,0x06
out tcnt0,temp_int
inc timet01        ;0.5s计时加1
inc timet02        ;1s计时加1
pop temp_int
out sreg,temp_int
reti
我用这个程序执行后,这个定时器刚开始时还能运行,但是上电后要过一阵子才能工作,有时等的时间长,有等的时间短,可过了一天我再操作时,这个定时器不工作了.不知是怎么了?
盼复!   谢谢

相关帖子

沙发
avrvi| | 2008-11-21 23:13 | 只看该作者

啊 汇编的

是不是硬件有问题呢? 同一个程序 不应该有时候等的长 有时候等的短。

如果用C语言,倒是可以帮上忙了。
相关链接:http://shop.avrvi.com

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

13

帖子

0

粉丝