Re: 在dsPIC30F4011上使用I2C模組問題>
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
發表於: 2006/10/16 15:11
|
|||
不要問我哪裡來,我只是個流浪天涯的工程師
|
||||
|
Re: 在dsPIC30F4011上使用I2C模組問題>
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
你 I2C bus 上的總 pull-up 電阻是多少?
ICD2 的 PGC, PGD 上固定接有 4.7K pull down 電阻,我想它的原意是在 ICD2 放開訊號時也能將此兩接腳拉到確定的固定電位。 當 ICD2 雖然拉高 MCLR, 放開 PGC, PGD,讓 PIC/dsPIC 全速執行,一般情形下,當此接腳被圖騰式驅動為 high 或 low 時,pull down 電阻影響甚微,但由於 dsPIC4011 的 PGD/PGC 恰好與 I2C 共用,因此只要 ICD2 插著, I2C 的 pull high 與 ICD2 4.7K pull down 合成結果會使 I2C 的 high 不夠 high ,尤其 pull up 電阻較大時更嚴重。 附記: ICD2 斷電時在 VPP/MCLR 腳上的 pull down 電阻為 9K ![]()
發表於: 2006/10/16 10:38
|
|||
|
Re: 在dsPIC30F4011上使用I2C模組問題>
|
||||
---|---|---|---|---|
新會員
![]() ![]() ![]() |
因為ICD2 PGC PGD,與I2C SDA,SCL 共用接腳,而ICD 2 好像沒有完全切離訊號
發表於: 2006/10/16 9:37
|
|||
|
在dsPIC30F4011上使用I2C模組問題>
|
||||
---|---|---|---|---|
資深會員
![]() ![]() ![]() |
使用I2C模組時出現問題。
問題不在程式碼,而是燒錄後我直接在MPLAB中直接將Reset 拉起,一般來說程式應該就開始執行,不過在這程式中不會開 始執行,而且I2C的Bus變成低電位。 當我把ICD2接線拿起來時,程式就開始執行。邏輯分析宜也正 確抓到bus正寫入資料,24C64正確回應ACK了。寫入結束後也 正確的將Bus拉到High,不知道有沒有人有碰到一樣的問題?可 否請教。 用過其他專案試過,已經排除是ICD2的問題。只是一接上ICD2 ,Bus電位就被拉下來。 程式碼如下:
#include <p30F4011.h>
發表於: 2006/10/13 2:38
|
|||
不要問我哪裡來,我只是個流浪天涯的工程師
|
||||
|