作者liangzhi ()
看板C_and_CPP
標題[問題] I2C always low
時間Mon Jul 27 23:57:35 2015
代po
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
C
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
unknow
問題(Question):
MSP430 I2C SCL default always low
餵入的資料(Input):
I2C register address
預期的正確結果(Expected Output):
I2C register value 應該要 0x82
錯誤結果(Wrong Output):
但是讀出來的值,卻會亂飄
程式碼(Code):(請善用置底文網頁, 記得排版)
https://gist.github.com/anonymous/bcd2f9e577e2f091fe1a
補充說明(Supplement):
這個是用Ti的msp430 控制ADI(AD5933),來達到讀取阻抗值效果
目前的問題是在Read值得時候,SCL一開始處於low的位置 如附圖。
http://imgur.com/VVOdIcj
所以造成目前都讀不到正確的值。希望有人幫我解決 plz
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.249.111.109
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1438012659.A.C6B.html
※ liangzhi:轉錄至看板 Programming 07/28 00:06
※ liangzhi:轉錄至看板 Electronics 07/28 08:30
推 youfe: SCL外掛一個470k電阻到power試試看 07/28 13:51
→ liangzhi: 加了還是沒有效果 ,而且我write的時候是正常的。但就是 07/28 16:26
→ liangzhi: read有問題,附上write的圖 07/28 16:26
→ kingofsdtw: 看不懂..這是C嗎? 有沒有考慮沒device 回ACK時候狀況? 07/29 01:06
推 asdrtyjkl925: 注意一下I2C write的最後有沒有做STOP的動作 07/30 22:47
→ asdrtyjkl925: 另外SCL是在哪個程序之後 開始always low的呢? 07/30 22:48