主题中讨论的其他器件:MSPWARE
我已设置为将 P1.3和 P1.2用于 I2C 接口。 我在这两个引脚上连接了3.3K 上拉电阻器。 在完成设置并取消软件复位的置位后、I2C 事务甚至不会进入第一个起始字节输出。 I2C 状态寄存器显示在没有任何其他器件连接到总线的情况下总线忙被置为有效、这解释了为什么不启动启动。 SCL 和 SDA 引脚测量高电平(3V3)。 我确实验证了我是否已将选择引脚设置为选择外设而不是 GPIO。
然后、我选择通过重新配置为 GPIO 并使所有 P1引脚输出来排除引脚行为故障。 P1OUT 设置为08h、仅将 P1.3驱动为高电平。 然后、我在代码中设置一个断点以检查寄存器内容。 它显示 P1OUT 包含预期的08h。 但 P1IN 显示的输入值为2Fh。 我的理解是、如果没有其他连接、除非存在故障器件、否则它应与 P1OUT 匹配。 P1.2和 P1.3的测量验证它们是否均为高电平、而不是预期值 P1.2低电平、P1.3高电平。
对于这种意外行为、是否有其他合理的解释?