你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

freertos 中如何实现软件I2C 不被打断

[复制链接]
su-409464 提问时间:2020-12-23 23:12 /
有一个 产品 用到 了smbus 的电池芯片,但是由于主控芯片的SDK 提供的 I2C API 不符合 SMBUS 的要求。

导致需要用到 软件模拟的I2C.

但又有一个致命的问题,系统有一个1ms 的定时器,定时器的优先级最高。

当要读取电池多字节信息的时候,  就会不断的被1ms 的定时器打断,导致读取失败。

请问这种情况下应该如何处理。

收藏 评论2 发布时间:2020-12-23 23:12

举报

2个回答
不咸不要钱 回答时间:2020-12-24 08:54:38
定时器中断为什么会打断模拟IIC时序?不行读的时候就关掉中断,
su-409464 回答时间:2020-12-24 22:33:00
_sa 发表于 2020-12-24 08:54
定时器中断为什么会打断模拟IIC时序?不行读的时候就关掉中断,

会啊,因为这个软件IIC是用来 读取BQ4050的电池信息,它不是正规的IIC,是smbus协议, 一旦读取的字节多了, 总是被切成一块一块

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版