Re: 軟體模擬IIC
|
||||
---|---|---|---|---|
版主
|
我就知道憑您「救世主」等級的功力,一定沒問題。
發表於: 2005/6/22 14:45
|
|||
|
Re: 軟體模擬IIC
|
||||
---|---|---|---|---|
資深會員
|
嘿嘿
成功了 可以控制IIC的DAC囉^^ 原來用軟體寫也不很難嘛 當初以為很複雜... 其實只要SDA準位設定好後 再丟出一個SCL把資料送出去就好 只要看規格書提供的時序圖就夠了~ 只不過我寫的很簡單 一對一控制一個slave而已 所以不必去考慮衝突的問題~ 簡單的控制會寫後再去考慮其他問題吧~~~
發表於: 2005/6/22 14:33
|
|||
|
Re: 軟體模擬IIC
|
||||
---|---|---|---|---|
資深會員
|
發表於: 2005/6/22 9:12
|
|||
|
Re: 軟體模擬IIC
|
||||
---|---|---|---|---|
版主
|
用一般I/O來當作I2C的MASTER端,程式不用自己傷腦筋!
到MICROCHIP美國網站,找一下APPLICATION NOTE,關鍵字也許是I2C或24 (EEPROM),應該可以找到了。 找到了,告訴大家正確的APP. NOTE編號,分享一下吧! APP. NOTE的程式,通常寫得比較嚴謹。搞不好,到時候您還可以東刪西刪,拿掉不太需要的程式。
發表於: 2005/6/21 22:47
|
|||
|
Re: 軟體模擬IIC
|
||||
---|---|---|---|---|
資深會員
|
謝謝你的意見
看來平常還是把SCL SDA設為輸入端比較好... 我不能用硬體IIC啦 因為硬體端IIC規劃為SLAVE 我要另外做一個軟體MASTER來控制IIC的DAC 剛剛試了 其實也滿好寫的 只是不知為何 當附屬端沒回應時 我要送出一個SCL的CLK時ICD2就不受控制一直跑 如果附屬端沒有回應的話 那我還必須送出一個SDA的高準位訊號嗎?
發表於: 2005/6/21 17:23
|
|||
|
Re: 軟體模擬IIC
|
||||
---|---|---|---|---|
高級會員
|
提供個人撰寫的經驗..
1.ACK 訊號的接收,利用SDA設為輸入來抓取. 2.另外..SDA SCL 還是要接Pull-High電阻... 3.I2C在不使用Bus的時候是不輸出訊號的..所以建議你.MCU不使用Bus的時候,要設為輸入(高阻抗狀態).雖然設為輸出High也可以. 4.I2C要用軟體寫很耗資源,除非你的MCU閒閒沒事幹.而且也很累.Single Master就已經佔用不少資源了,如果你還要設計Multi Master 那可能..不知道會怎樣..CC...(我是只有寫過 I2C Single Master 的Aaaembly 16的 )... 以上..提供你參考...
發表於: 2005/6/21 16:24
|
|||
|
軟體模擬IIC
|
||||
---|---|---|---|---|
資深會員
|
要寫IIC的MASTER端
不使用內部IIC硬體模組 目前關於偵測附屬端的回應部分沒弄好 不知道如何判斷到底有無收到回應訊號... 請問有沒有範例程式 或是程式虛擬碼或流程圖可供參考? 用軟體模擬的話 自己定義的SCL與SDA接腳還是必須接提昇電阻嗎? 是否除了要偵測回應與接收資料時 SDA需設為輸入端 其他時候都設為輸出端對吧?! 那SCL是否永遠都是設為輸出端?!
發表於: 2005/6/21 15:01
|
|||
|