打印

关于单片机同时定3个时间的问题

[复制链接]
2102|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gary2009|  楼主 | 2011-5-2 12:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 gary2009 于 2011-5-2 12:15 编辑

我想用单片机汇编语言实现如下定时功能,要求如下:
1。同时启动3个定时器
2。定时时间大约为几毫秒到几十毫秒,这三个定时可能有相同时间,所定时间在存储器中,其中预先需要读出时间,并用子程序转化为定时器接受的格式。
3。精度为微秒级
4。各自的定时时间到后去执行相应的命令
希望各位高手赐教,普通单片机能否用汇编来实现。是否何以这样,我只设定一个定时器,定时到哪个时间,与所定时间比较后,便执行相应的命令,但是我觉得这个误差可能会很大,请大家发表高见!

相关帖子

沙发
playjian| | 2011-5-2 13:15 | 只看该作者
用什么MCU~?

使用特权

评论回复
板凳
老鱼探戈| | 2011-5-2 13:35 | 只看该作者
只作记时用的话,用一个定时器就可以了.
多个定时器同时工作,如果有优先级,会导致其他的中断不能及时响应,只有一个中断入口的MCU,当某个中断发生时,会把另外的中断暂时禁止.

使用特权

评论回复
地板
NE5532| | 2011-5-2 14:09 | 只看该作者
1.与用不用汇编无关
2.1MPS以上的单片机可以满足你uS级定时精度的需要
3.用一个定时器发生多个定时的技术叫“定时器复用”,你所谓的误差来源于中断服务程序的长度带来的抖动。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
gary2009 + 1
5
cecwxf| | 2011-5-3 00:16 | 只看该作者
多个定时器定时  误差应该如楼上所说  来源于中断服务程序的长度。

使用特权

评论回复
6
云的追寻| | 2011-5-3 00:55 | 只看该作者
能不能过一定的时间让程序在次同步(就是回到最初状态)当然现有数据要保存下来的,接着运行

使用特权

评论回复
7
joyme| | 2011-5-3 15:07 | 只看该作者
"是否何以这样,我只设定一个定时器,定时到哪个时间,与所定时间比较后,便执行相应的命令,但是我觉得这个误差可能会很大"

可以,定时到达的标志在中断里置起,只要子程序(相应的命令)不超过最小的时间间隔就不会有误差,如定义4ms执行sub01,7ms周期性执行sub02,那么sub01执行时间需小于3ms,sub02的执行时间需小于1ms。一般单片机在ms级的时间里可以做不少事情,基本上没什么问题的。

使用特权

评论回复
8
abin0415| | 2011-5-3 20:34 | 只看该作者
是做定时用还是做中断用?

使用特权

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

本版积分规则

11

主题

30

帖子

0

粉丝