|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
有關(guān)I2C總線的問(wèn)題求助 |
| 作者:fqg900 欄目:單片機(jī) |
I2C總線上的AT24C04,對(duì)掛在同一總線上的PCF8563的數(shù)據(jù)讀取有影響,導(dǎo)致讀取的時(shí)間是錯(cuò)誤的.拔掉AT24C04后,8563的數(shù)據(jù)能正常讀取.硬件均按照資料推薦設(shè)計(jì).只是單片機(jī)的I2C總線選在P1口.本人才疏學(xué)淺,望各位高人指教. |
| 2樓: | >>參與討論 |
| 作者: hujiahua 于 2005/5/3 9:07:00 發(fā)布:
是不是地址沖突 我記得PCF8563的寫入和讀出在不同的地址段,是不是和你的AT24C04的地址有沖突. |
|
| 3樓: | >>參與討論 |
| 作者: fqg900 于 2005/5/4 13:56:00 發(fā)布:
不是地址沖突 8563的地址是A2,24C04的地址是A0。 |
|
| 4樓: | >>參與討論 |
| 作者: zhang08 于 2005/5/4 15:21:00 發(fā)布:
如果口線有空余 如果口線有空余 最好不要掛在一起 |
|
| 5樓: | >>參與討論 |
| 作者: net_walker 于 2005/5/4 16:23:00 發(fā)布:
具體時(shí)間出錯(cuò)什么表現(xiàn)? 具體時(shí)間出錯(cuò)什么表現(xiàn)? 我用I2C總線掛了8563 和 8566 。 掛了8566后8563的秒時(shí)間會(huì)出錯(cuò),其他準(zhǔn)確,讀十次出一次錯(cuò)。 去了8566(程序上)就沒(méi)問(wèn)題。后來(lái)我把秒連續(xù)讀輛次就沒(méi)問(wèn)題了。 原因正在調(diào)試中,奇怪? |
|
| 6樓: | >>參與討論 |
| 作者: fqg900 于 2005/5/4 17:09:00 發(fā)布:
端口無(wú)空余 如果不要掛在一起I2C總線還有什么意義呢?它最大的優(yōu)點(diǎn)是總線上可以掛很多個(gè)不同地址的器件. 時(shí)間并沒(méi)有出錯(cuò),就是讀取的時(shí)候分的中間有幾位讀不出來(lái).個(gè)位數(shù)8和9就顯示為0和1,十位數(shù)只有4能顯示.也就是說(shuō)讀取分鐘的時(shí)候第4,5,6位(從低位算起)不論是0還是1;都為0.從而導(dǎo)致顯示的時(shí)候出錯(cuò).小時(shí)也是同樣的錯(cuò)誤,但是讀不出的位數(shù)不一樣.其他的數(shù)據(jù)不讀取.也不知道是不是一樣的錯(cuò)誤 * - 本貼最后修改時(shí)間:2005-5-4 17:12:00 修改者:fqg900 |
|
| 7樓: | >>參與討論 |
| 作者: fqg900 于 2005/5/5 15:49:00 發(fā)布:
希望各位高手多加指點(diǎn).謝謝了! |
|
| 8樓: | >>參與討論 |
| 作者: nongcunren 于 2005/5/5 16:03:00 發(fā)布:
你是使用的模擬程序嗎 是的話,把時(shí)序加長(zhǎng)點(diǎn)試一試,即加幾個(gè)nop |
|
| 9樓: | >>參與討論 |
| 作者: cxd731 于 2005/5/5 16:36:00 發(fā)布:
24C04.html">24C04的I2C器件地址是可以通過(guò)PIN腳選擇的 24C04.html">24C04的I2C器件地址是可以通過(guò)PIN腳選擇的,如果要讓它的器件地址是A0,那A0、A1、A2、WP這幾跟PIN都要接地;只要你的I2C程序是軟件模擬的,總線掛在什么口上都無(wú)所謂;24C04供電范圍教大(1.8-5.5V),你是不是MCU的電壓跟24C04的電壓不一樣(5V和3.3V?),導(dǎo)致總線上拉電平不一致,不過(guò)這種情況導(dǎo)致總線數(shù)據(jù)出錯(cuò)的可能性也很小 |
|
| 10樓: | >>參與討論 |
| 作者: winhiwang 于 2005/5/5 16:39:00 發(fā)布:
DAT腳加5K上拉,讀寫時(shí)序放慢謝試試 能否找到出錯(cuò)的點(diǎn),看是和哪些因素有關(guān) |
|
| 11樓: | >>參與討論 |
| 作者: fqg900 于 2005/5/5 19:41:00 發(fā)布:
P1口不是不需要上拉電阻嗎?程序是使用軟件模擬的. |
|
| 12樓: | >>參與討論 |
| 作者: fqg900 于 2005/5/5 19:53:00 發(fā)布:
回cxd731 單片機(jī)使用的是華邦的W77E58增強(qiáng)型51.其電源使用+5V和24C04的一樣的.應(yīng)該不是這個(gè)問(wèn)題.如果是的話也不大可能是固定的幾位不能讀取. |
|
| 13樓: | >>參與討論 |
| 作者: fqg900 于 2005/5/9 11:12:00 發(fā)布:
加上拉電阻和延長(zhǎng)數(shù)據(jù)讀取時(shí)間都沒(méi)有用 給8563加的是3.6V的電壓,單片機(jī)和2404加的是5V電壓。8563還使用了CLOCK OUT,其輸出電壓能達(dá)到5V。不知各位還有什么高招賜教。 |
|
| 14樓: | >>參與討論 |
| 作者: stonenut 于 2005/5/12 10:46:00 發(fā)布:
雖然P1口有上拉,但你最好把上拉也加上吧! 雖然P1口有上拉,但你最好把上拉也加上吧!我前幾天也用軟件模擬過(guò),并用示波器看有關(guān)時(shí)序,發(fā)覺(jué)不加上拉的話,波形是有點(diǎn)問(wèn)題的(雖然不加上拉,當(dāng)時(shí)我讀寫2402還是正確的),所以建議加上上拉看看,等待你的消息! |
|
| 15樓: | >>參與討論 |
| 作者: chlyoung 于 2005/6/16 15:30:00 發(fā)布:
會(huì)不會(huì)是stop condition錯(cuò) 24系列的EEPROM在完成一個(gè)字節(jié)的讀寫后,發(fā)送應(yīng)答信號(hào),經(jīng)過(guò)一個(gè)上升沿的確認(rèn),SDA引腳會(huì)自動(dòng)的升到高電平,便于MASTER發(fā)送stop condition,如果發(fā)送結(jié)束信號(hào)不正確,SDA引腳會(huì)一直維持高電平。 |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |