打印
[其它应用]

中颖SH32F9B00的TWI 中断和超时的处理注意事项

[复制链接]
1778|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

SH32F9B00 的 TWI 有 3 个中断源:通讯中断、总线超时、SCL 高电平超时。对应的三个中断标志分别
是 TWINT、TOUT、TFREE。

SH32F9B00 的总线超时(TOUT)功能和 SCL 高电平超时(TFREE)功能是恒开的,无法关闭。


TOUT 是 SCL 低电平超过一定时间后发生,表示某个主机或从机能够把总线时钟拉低的时间上限,超过
此时间将产生总线超时事件,硬件自动释放总线,并送出相应标志(ETOT 使能时)。

【注意】TOUT 超时功能是固定开启的,如果长时间拉低 SCL,必然会发生 TOUT 事件。TOUT 的
默认超时时间是 25000 个 TWI 时钟。
TFREE 是 SCL 高电平超过一定时间后发生,表示总线处于“空闲”状态,发生 TFREE 事件后,硬件自动
释放总线,并送出相应标志(EFREE 使能时)。

【注意】TFREE 超时功能是固定开启的,如果长时间拉高 SCL(因为 SCL 默认上拉,此状态表示
SCL 空闲),必然会发生 TFREE 事件。TFREE 的默认超时时间是 HOC×256 个 TWI 时钟(HOC 默认
值 255)。

【注意】ETOT 和 EFREE 是控制 TOUT 和 TFREE 事件发生时是否产生超时标志的使能位,不是模块功
能使能位(再次强调:模块功能是固定开启的)。只有产生了超时标志才能产生 TWI 中断,如果 ETOT 和
EFREE 关闭,标志不会产生,中断自然也不会发生。

【注意】TWINT 是通讯中断标志,TWI 的状态改变时会引起置位,但从其他状态进入 F8 状态不会引起
置位。

【注意】TWINTE 是总中断使能位。

使用特权

评论回复
沙发
Candic12e| | 2023-5-19 15:20 | 只看该作者
在这个芯片中,总线超时、SCL高电平超时和SCL低电平超时是硬件中断,无法通过软件关闭

使用特权

评论回复
板凳
Allison8859| | 2023-5-19 16:31 | 只看该作者
模块功能是固定开启的

使用特权

评论回复
地板
Emily999| | 2023-5-19 17:46 | 只看该作者
只有产生了超时标志才能产生 TWI 中断

使用特权

评论回复
5
Charlene沙| | 2023-5-20 07:22 | 只看该作者
如果ETOT和EFREE关闭,标志不会产生,中断自然也不会发生

使用特权

评论回复
6
Belle1257| | 2023-5-20 12:00 | 只看该作者
TWINTE标志是总中断使能位。当该标志被置位时,所有的总线中断都会被使能

使用特权

评论回复
7
OKAKAKO| | 2023-11-12 18:58 | 只看该作者
TWINTE 是总中断使能位

使用特权

评论回复
8
szt1993| | 2023-11-12 20:32 | 只看该作者
SH32F9B00 的 TWI 有 3 个中断源:通讯中断、总线超时、SCL 高电平超时。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

200

主题

1391

帖子

2

粉丝