[应用相关] 调用HAL_SPI_Transimit函数会不会导致SPI波形异常?

[复制链接]
 楼主| cr315 发表于 2023-2-21 11:12 | 显示全部楼层 |阅读模式
有RTOS的情况下,有两个线程的使用,优先级相同,其中一个线程在调用HAL_SPI_Transimit函数(此函数为阻塞函数),该函数正在工作时发生线程调度会不会导致SPI波形异常?

在 rt_spi_transfer_message 源码中没有看到关闭线程调度的操作
我吃小朋友 发表于 2023-3-12 19:52 | 显示全部楼层
应该不会发生变形吧

失物招領 发表于 2023-3-12 20:37 | 显示全部楼层
你都说了优先级相同,那应该不会打断这个SPI的优先级吧

她已醉 发表于 2023-3-12 21:35 | 显示全部楼层
你可以试试,具体还得是以实际操作为准的

春日负喧 发表于 2023-3-13 01:15 | 显示全部楼层
我还真没研究过,我觉得应该不会发生变形的

西洲 发表于 2023-3-13 04:02 | 显示全部楼层
一般如果不被打断,那就是一直会执行下去,也不会存在变形一说

未说出口的像你 发表于 2023-3-13 07:27 | 显示全部楼层
通讯如果害怕出现时序不对的情况,可以用DMA的,能好很多

在曼谷的春 发表于 2023-3-13 09:45 | 显示全部楼层
阻塞的话,很容易出现时序不对,也就是波形不对的情况吧

月亮一键变蓝 发表于 2023-3-13 11:02 | 显示全部楼层
这种RTOS属实玩的少,不过我觉得一般不会出现时序不对情况

将爱藏于深海 发表于 2023-3-13 16:13 | 显示全部楼层
应该可以关闭线程调度的,你从mian里看看

温室雏菊 发表于 2023-3-13 19:12 | 显示全部楼层
应该不会吧,毕竟是操作系统,应该会考虑到这种情况吧

朝生 发表于 2023-3-14 14:43 | 显示全部楼层
正常来说不会,使用外设的时候正常来说不会跳转到别的任务执行这个外设的操作。
LLGTR 发表于 2023-3-14 14:44 | 显示全部楼层
如果是优先级相同,有可能被另一个任务抢占。
芯路例程 发表于 2023-3-14 14:46 | 显示全部楼层
估计是有做互斥量的处理吧。
SantaBunny 发表于 2023-5-5 23:24 | 显示全部楼层
从mian里看看,应该可以关闭线程调度的
caoenq 发表于 2023-5-6 14:28 | 显示全部楼层
失物招領 发表于 2023-3-12 20:37
你都说了优先级相同,那应该不会打断这个SPI的优先级吧

假设操作系统的时间片是1ms,SPI发送函数发送多个字节,假设用时3ms,那是一定会被打断的,因为同优先级的任务在时间片结束时切换
Undshing 发表于 2023-5-9 23:50 | 显示全部楼层
应该不会被打断
heweibig 发表于 2023-5-10 19:40 | 显示全部楼层
应该不会发生变形吧
lium 发表于 2023-5-10 19:42 | 显示全部楼层
你都说了优先级相同,那应该不会打断这个SPI的优先级吧
heweibig 发表于 2023-5-10 19:43 | 显示全部楼层
你可以试试,具体还得是以实际操作为准的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1448

主题

4810

帖子

0

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