• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32硬件IIC真的不好用吗

18218811680 2017-11-27 浏览量:1865
我看到网上的例程基本都是用的软件模拟iic,STM32的硬件IIC真的不好用吗?到底是哪里不行?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 好不好用试了才知道,到底是哪里不行这个问题,据说是容错性引起的,用硬件IIC收发时时,如果时序被其它中断打断,就会造成寄存器无法恢复,从而死锁。所以要么用IIC时关闭所有中断,要么将它的中断优先级提到最高(本身这个方法不合理,如果是带操作系统的,就更不合理了)。但是硬件IIC除了速度快一点,基本没什么优势。如果对速度没有要求,建议还是用模拟IIC比较好,包括移植性。
    • 发布于 2017-11-27
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了 :从声扫报告看,器件内部确实存在分层情况。 需向客户了解共购买了多少数量? 如果是大批量出现此类问题影响了性能,还请品质部帮忙校验声扫结果并向供应商反馈。 小批量可考虑补货等其他方式处理 回复

其他答案 数量:6
  • 之前在网上看过别人说M3内核的硬件I2C有问题 但是在M4就修复了
    • 发布于2017-11-27
    • 举报
    • 评论 0
    • 0
    • 0

  • HAL库的硬件I2C没有问题,只是引脚都限死了不灵活而已,而且有时候速度会突然降下来,原因未知。

    • 发布于2017-11-27
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :芯片里AS PIN D的i2C的地址不一样, 如附件图片 回复

  • 感觉不好用 经常卡死在一些标志位的死循环里
    • 发布于2017-11-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 其实都可以的,说IIC不行的其实都只会复制粘贴,根本不会修改底层的寄存器,只是比较麻烦而已,ST那么大的公司硬件IIC通信不行那不搞笑吗?
    • 发布于2017-11-28
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :受限产品不提供 回复

  • 硬件IIC其实是没有BUG的,只是用起来不好用。不过也是可以用的。


    • 发布于2017-12-14
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :见附件 回复

  • 不好用指的是STD标准库,有bug,现在HAL库已经没问题了
    • 发布于2017-11-27
    • 举报
    • 评论 0
    • -1
    • 0

相关问题

问题达人换一批

stm32硬件IIC真的不好用吗