標(biāo)題: 單片機(jī)工作電壓與IIC通信電壓有什么區(qū)別?弄不明白 [打印本頁(yè)]

作者: yxyxyxyx    時(shí)間: 2022-9-12 09:12
標(biāo)題: 單片機(jī)工作電壓與IIC通信電壓有什么區(qū)別?弄不明白
現(xiàn)在做了一個(gè)項(xiàng)目,是把一塊51單片機(jī)和STM32兩塊板子進(jìn)行IIC通信,現(xiàn)在通信不成功,領(lǐng)導(dǎo)說(shuō)可能是通信電壓不匹配,但是我現(xiàn)在對(duì)于單片機(jī)工作電壓和ICC通信電壓兩者之前有什么聯(lián)系或者區(qū)別弄不明白,在網(wǎng)上找了好多資料也沒(méi)有找到頭緒。求求大佬們回答一下。
作者: wulin    時(shí)間: 2022-9-12 11:30
兩塊板子電源電壓相同不存在通信電壓不匹配,兩塊板子電源電壓不同按下圖電路匹配。



作者: 一事無(wú)成    時(shí)間: 2022-9-12 13:08
IIC只是協(xié)議,不關(guān)電壓的事,電壓主要看單片機(jī)的電平,假如單片機(jī)1輸出最高3.3V但單片機(jī)2檢測(cè)的高電平閾值位4V,那不管單片機(jī)1發(fā)什么數(shù)據(jù)單片機(jī)2都收不到,另一個(gè)問(wèn)題是如果兩個(gè)單片機(jī)供電電壓不一樣,那單片機(jī)的電平要互相兼容才行,還有GPIO不要設(shè)置為推挽輸出,不然ACK信號(hào)下拉不下來(lái)。
作者: haiyang201    時(shí)間: 2022-9-12 13:46
C51電壓一般是5v,STM32基本都是3.3V,你要找兩款都支持3.3V電壓的 都用3.3V供電
作者: yzwzfyz    時(shí)間: 2022-9-12 14:17
需要補(bǔ)課:
1、通訊的雙方對(duì)0電壓與1電壓應(yīng)一致,否則你發(fā)1,它認(rèn)為是0就錯(cuò)了。
2、查一下51認(rèn)定的0、1分別是多少電壓?STM32認(rèn)定的0、1分別是多少電壓??jī)烧邥?huì)沖突嗎?
3、IIC通信只是一種協(xié)議格式,并未強(qiáng)制0、1的電壓大小。
以上說(shuō)的只是【通信電壓不匹配】
還有其它諸多因素與通訊相關(guān),不在此命題中,不說(shuō)了。
作者: fj51hei    時(shí)間: 2022-9-12 14:46
我的簡(jiǎn)單理解:通訊電壓就是信號(hào)電壓  也是IO擺幅電壓  實(shí)際也是約等于工作電壓吧  不知對(duì)不對(duì),可以單的測(cè)試下51  STM32出來(lái)的信號(hào)電壓  看看是不是相等  不知對(duì)不對(duì)  僅供參考
作者: yxyxyxyx    時(shí)間: 2022-9-13 08:30
fj51hei 發(fā)表于 2022-9-12 14:46
我的簡(jiǎn)單理解:通訊電壓就是信號(hào)電壓  也是IO擺幅電壓  實(shí)際也是約等于工作電壓吧  不知對(duì)不對(duì),可以單的測(cè) ...

好的好的感謝感謝
作者: yxyxyxyx    時(shí)間: 2022-9-13 08:31
一事無(wú)成 發(fā)表于 2022-9-12 13:08
IIC只是協(xié)議,不關(guān)電壓的事,電壓主要看單片機(jī)的電平,假如單片機(jī)1輸出最高3.3V但單片機(jī)2檢測(cè)的高電平閾值 ...

感謝感謝,明白了
作者: yxyxyxyx    時(shí)間: 2022-9-13 08:31
yzwzfyz 發(fā)表于 2022-9-12 14:17
需要補(bǔ)課:
1、通訊的雙方對(duì)0電壓與1電壓應(yīng)一致,否則你發(fā)1,它認(rèn)為是0就錯(cuò)了。
2、查一下51認(rèn)定的0、1分 ...

感謝感謝,get新知識(shí)了
作者: xiaohaibo81    時(shí)間: 2022-9-13 10:10
wulin 發(fā)表于 2022-9-12 11:30
兩塊板子電源電壓相同不存在通信電壓不匹配,兩塊板子電源電壓不同按下圖電路匹配。

可以按上面說(shuō)法去做肯定會(huì)沒(méi)有問(wèn)題。
作者: coody_sz    時(shí)間: 2022-9-13 10:24
這是電壓不匹配的問(wèn)題,不僅僅是I2C,是所有連接。
作者: yxyxyxyx    時(shí)間: 2022-9-14 08:36
yzwzfyz 發(fā)表于 2022-9-12 14:17
需要補(bǔ)課:
1、通訊的雙方對(duì)0電壓與1電壓應(yīng)一致,否則你發(fā)1,它認(rèn)為是0就錯(cuò)了。
2、查一下51認(rèn)定的0、1分 ...

51認(rèn)定的0、1分別是多少電壓和STM32認(rèn)定的0、1分別是多少電壓的,手冊(cè)上面是不是有,還是自己去測(cè)量
作者: sttt300    時(shí)間: 2022-9-14 08:56
看供電就好了,大多數(shù)是芯片供電電壓多少,I2C出來(lái)的信號(hào)高電平就是多少。
你看看兩個(gè)板上的電壓是不是都一樣
不同的話,你搜一下電平轉(zhuǎn)換電路,用那種一顆MOS管+兩個(gè)上拉電阻的就行了




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1