問題由來:
兩個(gè)板子之間要通過開關(guān)量通信,比如,我這個(gè)板子發(fā)現(xiàn)你那個(gè)板子是高電平,我就怎么樣;我給你輸出一個(gè)高電平,你那邊得板子就怎么樣。就是這么一個(gè)開關(guān)量通信得問題。
主要問題是:低電平肯定都是0,高電平就有可能是3.3V或者5V,甚至是12V。(這是由不同得廠家自己規(guī)定得,也沒有一個(gè)統(tǒng)一得標(biāo)準(zhǔn))
解決方案:
接收對(duì)方電平得電路設(shè)計(jì):
分析:假設(shè)我現(xiàn)在用得單片機(jī)是3.3V得,所以我得單片機(jī)引腳接了一個(gè)10K得上拉電阻到3.3V。
如果對(duì)方電平輸入是0V,由于肖特基二極管導(dǎo)通壓降很小,我得單片機(jī)就會(huì)檢測(cè)為低電平。
如果對(duì)方電平輸入3.3V,5V,12V,總之只要是大于3.3V得電壓,我得單片機(jī)測(cè)到得電壓永遠(yuǎn)是3.3V,這樣就不會(huì)由于輸入單片機(jī)引腳得電平過高燒壞單片機(jī)。同時(shí),由于BAT54C可以承受30V得反向電壓,所以只要小于30V得電平都不會(huì)損壞BAT54C。
給對(duì)方高低電平得電路:
分析:CON3得1腳接對(duì)方板子得高電平VCC,3腳接對(duì)方板子得地,2腳是輸出得高低電平。
我得單片機(jī)引腳輸出低電平,光耦導(dǎo)通,S8050基極接收低電平,不導(dǎo)通,對(duì)方接收到高電平,它接收到得高電平就是它要求得高電平,從而不會(huì)損壞對(duì)方得電路板。
我得單片機(jī)引腳輸出高電平,光耦不導(dǎo)通,S8050基極接收高電平,導(dǎo)通,對(duì)方接收到低電平。
總結(jié):電路雖然簡(jiǎn)單,但是可以解決大問題。