• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::


Browsing this Thread:   1 Anonymous Users






Re: 軟體模擬IIC
#8
資深會員
資深會員


查看用戶資訊
^^|||
會變成"救世主"是因為我的問題太多^^"
不過問得多也學得多~

現在要小心的是SDA被附屬端拉住的問題了...
剛剛有發生幾次SDA被拉住的情況
必須把附屬端的電源拔掉才能恢復...
原因出在我等待回應ACK的時間太短
他還沒回應時我就認為傳輸錯誤要離開了
結果SDA被拉住(ACK=0)我無法控制...
雖然說把等待時間拉長就解決了
不過還是怕會有其他突發狀況拉住SDA

以前曾在板上問過這問題
不過因為當時用的是硬體IIC不會發生這問題
請問如果真的發生的話
除了用繼電器把SLAVE電源切斷外
還有其他方法解決嗎?
SCL送幾個CLK訊號有辦法引誘SLAVE解除鎖定嗎?
本來想試試看的
結果不知為何SLAVE現在鎖不住SDA了 = =|||

發表於: 2005/6/22 15:01
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 軟體模擬IIC
#7
版主
版主


查看用戶資訊
我就知道憑您「救世主」等級的功力,一定沒問題。

發表於: 2005/6/22 14:45
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 軟體模擬IIC
#6
資深會員
資深會員


查看用戶資訊
嘿嘿
成功了
可以控制IIC的DAC囉^^

原來用軟體寫也不很難嘛
當初以為很複雜...
其實只要SDA準位設定好後
再丟出一個SCL把資料送出去就好
只要看規格書提供的時序圖就夠了~

只不過我寫的很簡單
一對一控制一個slave而已
所以不必去考慮衝突的問題~
簡單的控制會寫後再去考慮其他問題吧~~~

發表於: 2005/6/22 14:33
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 軟體模擬IIC
#5
資深會員
資深會員


查看用戶資訊
AN554這個應該是吧
http://0rz.net/a30rQ
程式還沒去看
不過他用的PIC16C71好像沒有硬體IIC
所以這個應該就是用軟體模擬硬體的


發表於: 2005/6/22 9:12
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 軟體模擬IIC
#4
版主
版主


查看用戶資訊
用一般I/O來當作I2C的MASTER端,程式不用自己傷腦筋!

到MICROCHIP美國網站,找一下APPLICATION NOTE,關鍵字也許是I2C或24 (EEPROM),應該可以找到了。

找到了,告訴大家正確的APP. NOTE編號,分享一下吧!

APP. NOTE的程式,通常寫得比較嚴謹。搞不好,到時候您還可以東刪西刪,拿掉不太需要的程式。

發表於: 2005/6/21 22:47
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 軟體模擬IIC
#3
資深會員
資深會員


查看用戶資訊
謝謝你的意見
看來平常還是把SCL SDA設為輸入端比較好...

我不能用硬體IIC啦
因為硬體端IIC規劃為SLAVE
我要另外做一個軟體MASTER來控制IIC的DAC

剛剛試了
其實也滿好寫的
只是不知為何
當附屬端沒回應時
我要送出一個SCL的CLK時ICD2就不受控制一直跑

如果附屬端沒有回應的話
那我還必須送出一個SDA的高準位訊號嗎?

發表於: 2005/6/21 17:23
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 軟體模擬IIC
#2
高級會員
高級會員


查看用戶資訊
提供個人撰寫的經驗..

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
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


軟體模擬IIC
#1
資深會員
資深會員


查看用戶資訊
要寫IIC的MASTER端
不使用內部IIC硬體模組

目前關於偵測附屬端的回應部分沒弄好
不知道如何判斷到底有無收到回應訊號...
請問有沒有範例程式
或是程式虛擬碼或流程圖可供參考?

用軟體模擬的話
自己定義的SCL與SDA接腳還是必須接提昇電阻嗎?
是否除了要偵測回應與接收資料時
SDA需設為輸入端
其他時候都設為輸出端對吧?!
那SCL是否永遠都是設為輸出端?!

發表於: 2005/6/21 15:01
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------