当前位置: 代码迷 >> 驱动开发 >> 请问 uboot模式下 - I2C硬件发送寄存器的理解
  详细解决方案

请问 uboot模式下 - I2C硬件发送寄存器的理解

热度:21   发布时间:2016-04-28 10:52:54.0
请教 uboot模式下 - I2C硬件发送寄存器的理解。
Hi 大侠:
omap 3530板子。其中有一个寄存器:
register name :I2C_STAT
第4个bit位的描述:
XRDY Transmit Data Ready IRQ status. Set to 1 in transmit mode when new data is requested RW 0
for transmission. When this bit is set to 1, an interrupt is signaled to MPU subsystem
  Read 0x0: No transmit data is requested for transmission
  Read 0x1: Transmit data is requested for transmission
  Write 0x0: No effect
  Write 0x1: Clear this bit to 0.

再看另外一短描述:
Poll the I2Ci.I2C_STAT[4] XRDY bit, 
or use the XRDY interrupt (the I2Ci.I2C_IE[4] XRDY_IE bit must be
set to 1) 
or the DMA TX channel (the I2Ci.I2C_BUF[7] XDMA_EN bit must be set to 1) to write data to the I2Ci.I2C_DATA register.


在uboot的代码中就是对这个位设置“1”。这个时候是不是触发了数据发送?在没有中断(uboot)的情况下:也就是在这个位设置“1”以后。data line上就会出现串行的数据?

希望做过类似驱动的大虾们给点帮助。
谢谢

------解决方案--------------------
不对。
这个状态位只是起到1个提醒程序员"数据已经准备好了"的作用。
也就是说,在这个代码里就算你不清零,数据也会发送出去。