您好!
我将 Timer1设置为20us。 我在计时器函数中发布一个信号量、并在测试时切换端口引脚。 挂起的信标处于高优先级任务中。 从发布信标到任务中的待处理信标停止阻断、所花费的时间几乎为13us。 这似乎是一段很长的时间。 我预计只有几微秒。 这是正常现象吗?
静态空 Timer1 (UARg 参数)
{
HWREG (GPIO_PORTN_BASE +((GPIO_PIN_2 <<2)))= 4;
HWREG (GPIO_PORTN_BASE +((GPIO_PIN_2 <<2)))= 0;
Semaphore_post (sem1);
}
静态空 mainTaskFxn (UARg arg0、UARg arg1)
{
while (1)
{
Semaphore_pend (sem1、BIOS_wait_forever); //布置后用13us 解除阻断
HWREG (GPIO_PORTN_BASE +((GPIO_PIN_2 <<2)))= 4;
HWREG (GPIO_PORTN_BASE +((GPIO_PIN_2 <<2)))= 0;
}
}