This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM3352:[Part2]在 CPU 引导后切换 I2C1 引脚多路复用器

Guru**** 2903660 points

Other Parts Discussed in Thread: AM3352

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1647240/am3352-part2-switching-i2c1-pin-mux-after-cpu-boot

器件型号: AM3352

您好、
 
这是与前面关于在 AM3352 CPU 引导后切换 I2C1 引脚多路复用器的讨论相关的问题。
 
我们知道在更改引脚多路复用设置之前、应停止 I2C1 外设。
 
在对引脚重新多路复用之前、您能否确认停止 I2C1 控制器的正确过程?
 
具体来说、清除 I2C_CON 寄存器中的 I2C_ENA 位 15 位是否足以禁用 I2C1 控制器?
 
我们假定的顺序如下。
1.确认当前 I2C 传输已完成。
2.确认 I2C 总线空闲。
清除 I2C_CON[I2C_ENA]以禁用 I2C1。
4.更改插针复用设置。
5.再次设置 I2C_CON[I2C_ENA]以启用 I2C1。
6.恢复 I2C 通信。
 
您能否确认此顺序是否正确?
 
此外、在清除 I2C_ENA 之前或在更改引脚多路复用器之前、是否应检查任何其他寄存器、状态位或等待条件?
 
此致、
Conor
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Conor、

    具体而言、清除 I2C_CON 寄存器中的 I2C_ENA 位 15 位是否足以禁用 I2C1 控制器?

    是的、将 I2C CON 寄存器[I2C_EN](位 15)清零 将禁用 AM3352 I2C1 控制器。

    您能否确认此序列是否正确?

    顺序正确。 唯一的额外检查是确保总线真正空闲(无挂起的主模式事务,FIFO 为空、BB(总线繁忙)标志被清除、如果使用中断、则在将使能位拉至低电平之前屏蔽/清除它们。

    此致、

    Borislav Lazarkov