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

stm32的硬件IIC如何避免丢数据

木兮青鱼 2018-12-07 浏览量:949
stm32的硬件IIC如何避免丢数据
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 在使用HAL库时,是可以没有任务BUG的使用硬件IIC的,也不会丢数据的,关键就是在使用IIC时关中断

    最好是使用DMA进行传输

    • 发布于 2018-12-07
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:12
  • 硬件不会丢,只有软件模拟才会丢,我就喜欢用硬件i2c的感觉很好用
    • 发布于2018-12-07
    • 举报
    • 评论 0
    • 1
    • 0

  • 也有可能是你的程序的优化等级太高时,程序逻辑问题会丢数据
    • 发布于2018-12-07
    • 举报
    • 评论 0
    • 1
    • 0

  • 很少是会丢数的,有可能你的速度太快了 ,反应不过来 处理数据了吧
    • 发布于2018-12-07
    • 举报
    • 评论 0
    • 1
    • 0

  • IIC 本来是个应答式的通信,不能保证不丢数据,不能保证数据没有错误

    如果要可靠就用协议来保证数据完整性,正确性

    • 发布于2018-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • I2C每次通信都要握手确认,基本不可能丢数据的,除非你从机器件通信速度太快或者内部存在问题才会频繁丢数据。

    • 发布于2018-12-08
    • 举报
    • 评论 1
    • 0
    • 0
robe_zhang 回复了 donatello :tcp is也是握手,会不会丢数据。丢数据和握手有什么必然 回复

  • I2C正确使用应该不怎么掉数据的,除非速度过快使得不稳定或者程序设计、编译优化太高级等问题才会频繁丢数据。
    • 发布于2018-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • iic如果想保证数据不丢失,在程序上是不可能再提高的,只能用通信协议可以筛查掉错误的数据,用CRC校验等
    • 发布于2018-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 保证不丢需要在更高层次做校验.
    • 发布于2018-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 硬件 的IIC是很稳定的,要不是配置不对,或是程序不对,一般是不会丢数的
    • 发布于2018-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • STM32的硬件I2C操作有返回值的,通过读那个返回值可以知道成功还是失败,失败再重新读一次就好
    • 发布于2019-01-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 最好是对你的IIC进行握手的确认和校验,这样可以保证数据的正确性
    • 发布于2019-01-15
    • 举报
    • 评论 0
    • 0
    • 0

  • IIC你的数据要做一个校验的处理,对校验的出错的数据重发
    • 发布于2019-01-18
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32的硬件IIC如何避免丢数据