|
已經(jīng)告訴你了,你上傳的代碼中,你的端口設(shè)置是對(duì)的,就不要再去找端口的毛病了
SDA和SCL都要加上拉10K電阻!!!!!!!
IIC可以驅(qū)動(dòng)其它的IIC器件也不一定是對(duì)的!!!!!
為什么要叫你用24c01,這個(gè)器件是標(biāo)準(zhǔn)的IIC,不支持高速IIC的,在它上面運(yùn)行正常了,在SD3078就能正常了
不要duang!duang!duang!先寫(xiě)一堆幾千行的代碼,然后就進(jìn)行驗(yàn)證,那么多代碼,問(wèn)題出在哪里你都不一定知道
"先驗(yàn)證IIC從機(jī)地址對(duì)不對(duì),先不管數(shù)據(jù)讀寫(xiě),先寫(xiě)一個(gè)驗(yàn)證代碼,向從機(jī)發(fā)送地址,看一下有沒(méi)有響應(yīng),可以用一個(gè)LED或者某個(gè)端口的電平來(lái)進(jìn)行驗(yàn)證"
1,什么其它的代碼都不要,只要端口設(shè)置和IIC寫(xiě)入一個(gè)字節(jié)函數(shù),外加一個(gè)延時(shí)函數(shù),延時(shí)可以設(shè)定為1秒2,P0^1=0;//LED這個(gè)端口先滅燈
3,寫(xiě)入從機(jī)地址 0x64
4,等待IIC從機(jī)應(yīng)答,如果不應(yīng)答就是死循環(huán)
5,P0^1 = 1;//
while(1);
6,燒錄驗(yàn)證,不要仿真!!!!!!!!!
以上6步,從P.01端口的電平信號(hào)就可以知道從機(jī)是否能響應(yīng)主機(jī)的IIC信號(hào)了
低電平:說(shuō)明從機(jī)沒(méi)有應(yīng)答
高電平:說(shuō)明從機(jī)已經(jīng)應(yīng)答,寫(xiě)字節(jié)的IIC代碼是對(duì)的
再不行,把你的所有代碼,原理圖上傳
還是不行,那就放棄吧
|
評(píng)分
-
查看全部評(píng)分
|