嵌入式技术william hill官网
直播中

张桂兰

7年用户 1312经验值
私信 关注
[问答]

rt_spi_send与rt_spi_recv为什么不能放在定时器里进行使用呢?

rt_spi_send、rt_spi_recv放在定时器里使用会出现
Function[rt_mutex_take] shall not be used in ISR
(0) assertion failed at function:rt_mutex_take, line number:656
我是在定时器里通过SPI读取数据,如果在定时器里发送信号给任务,任务再去读数据,会不会造成读取数据不正确

回帖(2)

李波

2023-2-13 14:16:15
硬件定时器在中断ISR中运行,
而中断里不能用带阻塞的API,可以改为软定时器,这样在 timer 线程中运行。
举报

张桂兰

2023-2-13 14:16:22
好的谢谢,我改为软件定时器去试一下
举报

更多回帖

发帖
×
20
完善资料,
赚取积分