Thread:SysBIOS,sysconfig中讨论的其它部件
在TI-RTOS中,10us系统的优先级是多少? 较高优先级的HWI是否会抢占系统刻度,从而导致系统刻度不准确?
此致,
双阳
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
在TI-RTOS中,10us系统的优先级是多少? 较高优先级的HWI是否会抢占系统刻度,从而导致系统刻度不准确?
此致,
双阳
您好,Shuyang,
默认情况下,Clock模块使用ti.SysBIOS.hal.Timer模块创建一个计时器,以生成基于硬件的系统tick,这基本上是对Clock_tick()的定期调用。 时钟使用的Swi的优先级可通过在 项目的配置文件中配置Clock.swiPriority来更改。 HWI优先级取决于NVIC_PRI*寄存器,默认情况下,这些寄存器均为0x00,但始终会被复位/NMI/硬故障抢占。 由于10 µs相当于48 MHz时钟上的480个时钟,另一个被禁用的HWI抢占或HWI/SWI将需要消耗大约960个时钟,才能完全忽略Clock_tick的计时器增量。 有关 详细信息,请参阅TI-RTOS内核用户指南和运行时API以及Cortex-M4设备通用用户指南。
此致,
Ryan
您好,Ryan:
感谢您的澄清。 由于我不是RTOS专家 ,我仍有一些问题,我想找出这些问题,以便更好地理解问题。
据我所知 ,HWI的优先级高于任何SWI? 因此,任何卫生福利机构可能会抢占系统的先机。
我想了解的是,使用HWI的原因是什么,并且能够提前排除系统的故障。 例如,TI驱动程序是否使用HWI或SWI? 如果他们使用SWI,如何设置优先级? 是否有其他HWI可能会抢占软件中的系统信号(如可能生成的RF内核)?
此致,
双阳