串口中断和定时中断,外部中断在一起如何调用?

[复制链接]
1725|3
 楼主| 蜡烛芯 发表于 2013-5-31 14:16 | 显示全部楼层 |阅读模式
当系统有个定时中断。
比如定时采集温度值,然后通过串口发送到上位机。这样程序里要用到定时中断和串口中断
比如定时1s采样一次。那么是1s内调用串口中断。还是1s外再调用
如果是1s后才允许用串口中断。是不是就不是1s定时采样了?那也就是说,执行1s以后。再调用串口接收中断了。就会不准。接收数据也要时间的哈。比如上位机向下位机写入一帧数据,24个字节。(接收中断)。波特率9600. 那么24*8/9600=20ms
也就是说,处理了定时中断后,再处理的串口中断
时间上:实际是定时+串口

如果是1s内,那么定时中断内嵌套串口中断?

不清楚,串口接收中断究竟用于定时中断内,还是外。

当然,定时中断内只是设定个标志位,具体运算程序还是在主循环里做

担心有无这种情况出现:

上位机发来数据,不收就会丢。计时被中断,就会错过。
唯一一个,就是发命令时候正想翻转输出脚时候,来了串口中断。。。
lqfy 发表于 2013-5-31 15:02 | 显示全部楼层
兰天白云 发表于 2013-5-31 16:12 | 显示全部楼层
楼主基本概念不清楚
3个中断同时工作也不会有问题,比如定时采样1秒1次,串口中断由上位决定(不是你决定哦)
工作时,采样结束做一个标志,当有串口中断时在服务程序里判断标志,有标志就发数据,然后清标志
huangxz 发表于 2013-5-31 16:53 | 显示全部楼层
一般情况下中断很快就处理完的,程序写的好51的也就us级搞定,三个中断没问题的,三百个中断也没问题,放心用吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

3

帖子

0

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