[51单片机] 要延时几小时的话怎么做比较好?

[复制链接]
 楼主| fasm 发表于 2016-1-23 16:18 | 显示全部楼层 |阅读模式
请问用循环延时还是用定时器比较好?或者有其他的方法!谢谢!
JY-DX-JY 发表于 2016-1-23 16:18 | 显示全部楼层
当然定时器了,设几个计数器。
 楼主| fasm 发表于 2016-1-23 16:27 | 显示全部楼层
了解了,我去试试!
 楼主| fasm 发表于 2016-1-23 16:35 | 显示全部楼层
JY-DX-JY 发表于 2016-1-23 16:18
当然定时器了,设几个计数器。

再问个问题!在串口发送后使用定时器T0延时2min,此时串口中断会不会被定时器中断打断啊?
JY-DX-JY 发表于 2016-1-23 16:38 | 显示全部楼层
有可能,看谁的优先级高了
 楼主| fasm 发表于 2016-1-23 17:00 | 显示全部楼层
JY-DX-JY 发表于 2016-1-23 16:38
有可能,看谁的优先级高了

那是否需要手动把串口中断优先级提高,然后降低T0的优先级?
JY-DX-JY 发表于 2016-1-23 17:09 | 显示全部楼层
是什么单片机?51吗?如果可以调,那就手动提高串口中断优先级。提高之后,定时器中断就不会打断串口中断了。
 楼主| fasm 发表于 2016-1-23 17:27 | 显示全部楼层
JY-DX-JY 发表于 2016-1-23 17:09
是什么单片机?51吗?如果可以调,那就手动提高串口中断优先级。提高之后,定时器中断就不会打断串口中断了 ...

是51
zyj9490 发表于 2016-1-23 21:00 | 显示全部楼层
fasm 发表于 2016-1-23 16:35
再问个问题!在串口发送后使用定时器T0延时2min,此时串口中断会不会被定时器中断打断啊? ...

如果串口中断不允许被打断或延时,就把定时器中断关闭,等接收结速后,再打开定时中断,2MIN定时丢失几十MS有何妨呢?
zyj9490 发表于 2016-1-23 21:04 | 显示全部楼层
请问串口主动还是被动的,低波特率不需要考量以上的问题,对高波特率才需要这样做,因为几MS一侦的刹时过去了,接收不了完整的一侦。
ddllxxrr 发表于 2016-1-23 22:00 | 显示全部楼层
用定时器中断,然后用整型变量多重循环,三重不行用四重
bbstr 发表于 2016-1-24 09:33 来自手机 | 显示全部楼层
加个rtc芯片
bkn1860 发表于 2016-1-24 10:37 | 显示全部楼层
用RTC可以不用担心断电 ,重新上电还能继续。如果只用定时器,断电之后延时就废了
小马儿 发表于 2016-1-24 10:54 | 显示全部楼层
不能说延时几个小时的,在嵌入式系统中,说延时,一般就是这段时间会被独占,延时几个小时,还不让其他模块都死翘翘了,最好的说法还是需要几个小时后给我发送一个消息,我有一些事要做。
 楼主| fasm 发表于 2016-1-24 20:47 | 显示全部楼层
小马儿 发表于 2016-1-24 10:54
不能说延时几个小时的,在嵌入式系统中,说延时,一般就是这段时间会被独占,延时几个小时,还不让其他模块 ...

因为只用到串口发送,其他模块全都用不上。
 楼主| fasm 发表于 2016-1-24 20:51 | 显示全部楼层
多谢各位的回答,心里有个数,非常感谢!
coody 发表于 2016-1-24 22:06 | 显示全部楼层
当然是定时器中断,然后在中断里数数,1,2,3.。。。。
cliffboy 发表于 2016-1-25 15:50 | 显示全部楼层
定时器或者空操作指令,建议是定时器,不过话说好像没见过延时几小时的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

27

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部