硬汉嵌入式论坛

 找回密码
 立即注册
查看: 299|回复: 4
收起左侧

[I2C] IIC多从设备 ,一根总线同时访问问题

[复制链接]

13

主题

105

回帖

144

积分

初级会员

积分
144
发表于 2026-1-28 13:26:23 | 显示全部楼层 |阅读模式
如果一个STM32的IIC, 下面挂了多个从设备 ,STM32使用RTOS ,多个线程如果同时调用IIC的接口读写 ,但是往不同从设备读写 ,IIC总线会仲裁么 ,还是需要在调用IIC读写的位置加互斥
回复

使用道具 举报

15

主题

103

回帖

168

积分

初级会员

积分
168
发表于 2026-1-28 13:40:10 | 显示全部楼层
建议对这种公共资源的使用权加锁。虽然HAL库内部自带lock操作,但是不处于关中断的临界区内,所以极低概率下仍会出现冲突。
回复

使用道具 举报

13

主题

105

回帖

144

积分

初级会员

积分
144
 楼主| 发表于 2026-1-28 15:34:55 | 显示全部楼层
egoistaw 发表于 2026-1-28 13:40
建议对这种公共资源的使用权加锁。虽然HAL库内部自带lock操作,但是不处于关中断的临界区内,所以极低概率 ...

感谢
回复

使用道具 举报

8

主题

13

回帖

42

积分

新手上路

积分
42
发表于 2026-1-28 16:57:21 | 显示全部楼层
我一般是使用互斥信号量来管理IIC资源。使用前上锁,使用后释放
回复

使用道具 举报

1万

主题

7万

回帖

12万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
121123
QQ
发表于 2026-1-29 10:19:05 | 显示全部楼层
也可以专门开一个I2C任务,其它任务要操作,对其发命令消息。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2026-2-24 10:56 , Processed in 0.046909 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表