前一篇提到使用USBI2C去傳送跟接收資料,只有使用到USBIO_StreamI2C這個函數,一般場合已足夠使用,可是我的裝置接收到指令需要200ms才能回覆這時就麻煩了.只好自己試試看了,終於試出來了.

 USBIO_StreamI2C(mIndex, bytes.Length, bytes, 0,null); //先送出寫入的指令
 Thread.Sleep(iDelayTime); //延遲段時間
 I2C_IssueStart(mIndex); //I2C Start
 I2C_OutByteCheckAck(mIndex, (byte)(bytes[0] + 1)); //送出讀資料的指令
 I2C_InBlockByAck(mIndex, irecvLen - 1, ref iBuff);//接收資料並送出ACK
 I2C_InByteNoAck(mIndex, ref rebyte); //接收資料後送出NACK
 I2C_IssueStop(mIndex); //I2C Stop

T2-1  


 

創作者介紹
創作者 李泥兒 的頭像
linear

李泥兒

linear 發表在 痞客邦 留言(0) 人氣( 146 )