找回密码
 立即注册
楼主: ider

8G如何避免硬件IIC等死在Wait函数中?| 为什么要死等,没有应答就跳过啊

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2024-01-15 09:24:33

1

主题

11

回帖

80

积分

注册会员

积分
80
发表于 2023-12-25 12:06:40 | 显示全部楼层
模拟,多线程,用判断跳转
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:478
  • 最近打卡:2025-06-28 23:52:37
已绑定手机

40

主题

370

回帖

1012

积分

金牌会员

积分
1012
发表于 2023-12-26 09:27:58 | 显示全部楼层
Mr.*** 发表于 2023-12-23 11:25
不是还有一个看门狗么的东西么,长时间就复位单片机

看门狗不是用在这里的,超时报警跳出重新判断,如果单片机突然复位程序重头来会造成意想不到的麻烦。
纸上得到终觉浅,绝知此事要躬行。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:21
  • 最近打卡:2025-04-06 00:03:37
已绑定手机

10

主题

45

回帖

224

积分

中级会员

积分
224
发表于 2025-2-24 22:35:14 | 显示全部楼层
我碰到同样问题,已经许多许多次了。开始复制官方例程可用,移植程序时换个函数名就卡死,经常的事。迫不得已改用模拟IIC,移植性还好,能在不同厂家的单片机上用。STC的硬件IIC就是个鸡肋,出现这样的问题,找不到答案。

点评

模拟IIC我平时也用得比较多,因为它移植性强  发表于 2025-2-25 13:22
好用得很 https://www.stcaimcu.com/forum.php?mod=viewthread&tid=4612 https://www.stcaimcu.com/forum.php?mod=viewthread&tid=4613 https://www.stcaimcu.com/forum.php?mod=viewthread&tid=4698 https://ww  详情 回复 发表于 2025-2-25 11:54
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:481
  • 最近打卡:2025-06-29 12:34:20
已绑定手机

81

主题

5220

回帖

9304

积分

超级版主

DebugLab

积分
9304
发表于 2025-2-25 11:54:21 | 显示全部楼层
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:481
  • 最近打卡:2025-06-29 12:34:20
已绑定手机

81

主题

5220

回帖

9304

积分

超级版主

DebugLab

积分
9304
发表于 2025-2-25 12:23:30 | 显示全部楼层
为什么要死等,没有应答就跳过啊
白话:叫它它不答应还等它干嘛不要耽误老子干别的事情
这个SHT30例程就是I2C一直在读,SHT30准备好数据之后才会应答,有应答才读数据,否则跳过读数据的阶段
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=4612
截图202502251220151865.jpg


DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:579
  • 最近打卡:2025-06-29 08:50:47

116

主题

2038

回帖

5893

积分

论坛元老

积分
5893
发表于 2025-2-25 13:20:49 | 显示全部楼层
我也觉得官方应该能考虑到这个死等的问题,所以会找到一个解决的办法。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-29 21:23 , Processed in 0.119963 second(s), 82 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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