按时器中判定时和软件延时的区别在哪(单片机陈述册)?

15小时前 (07:26:11)阅读1回复0
东乐
东乐
  • 管理员
  • 注册排名3
  • 经验值93300
  • 级别管理员
  • 主题18660
  • 回复0
楼主

  1、你挪用OSTimeDly或者OSTimeDlyHMSM,意味着该使命CPU利用权会被充公,然而你开启一个按时器之后,该使命还能够利用CPU。

2、举例子:如下情景,能够利用软件按时器做超时处置,设备A治理设备B、C、E,设备A向设备BCE设备发送某一动静,假设在T时间内,设备BCE没有回应,设备A将重起并初始化BCE;那么能够在一个使命中,依次向BCE发送动静,而且启动软件动按时器TMRa,TMRb,TMRc,按时器时间到时挪用各自的重起并初始化函数;另一方面,假设领受到BCE的动静则停行按时器TMRa,TMRb,TMRc。

3、然而假设用OSTimeDly或者OSTimeDlyHMSM处置上面的场景,可能要多开几个使命治理BCE并增加信号量通知OSTimeDly或者OSTimeDlyHMSM之后,到底是“重起并初始化BCE”仍是什么都不做。

4、软件按时器和延时都是基于“系统的节拍”来计时/按时的,固然软件按时器是在一个高优先级的使命中治理,那个使命也是由“系统节拍中断“中向其发送信号量,因而仍是基于“系统的节拍”。

   予人玫瑰之手 经久犹有余香 假设对你有搀扶帮助 请点击好评。

0
回帖

按时器中判定时和软件延时的区别在哪(单片机陈述册)? 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息