思考题

  1. 查阅“双向三态门”电路及其逻辑,并根据图5.2的“线与”接口电路,请试着使用双向三态门单元改进I2C接口单元的硬件接口电路,并分别描述主机发送-从机接收、从机发送-主机接收的两种工作模式的控制信号状态。
  2. 根据图5.5所示的双向电平电压转换电路,请简要分析其工作过程。
  3. 当你设计一个嵌入式系统时所用到的I2C功能组件通讯接口速度不一致,请给出合理的解决方案。
  4. 单主-多从结构的I2C通讯接口中仅使用7位宽从机地址即可连接上百个I2C功能组件,请说明7位从机地址的作用,并简述主机访问某个从机的过程。
  5. 当MCU片上I2C功能单元工作在主机模式时,以读取某I2C接口的传感器数据为例,简述SCL和SDA信号的输出方向和两者关系。
  6. 以I2C通讯接口软件的分层抽象为例,简述硬件层、硬件抽象层、BSP(或中间层)、用户层等各层的功能和作用,并总结分层抽象软件结构的优缺点。
  7. 在Arduino平台的I2C硬件抽象层中,为什么“beginTransmission()”、“endTransmission()”和“setClock()”是主机模式专用的接口?
  8. 参照图5.8的流程,设计I2C接口的“主机写后读”的操作流程,即“主机写-从机读-(无STOP时序)-主机请求-从机写”的操作流程。