最近做了一個(gè)項(xiàng)目,需要用到RS232和RS485(單片機(jī)只用一個(gè)串口),一般情況下,都是用兩個(gè)跳線冒或者是撥碼開關(guān)作硬件切換就可以了,但是,不能打兩個(gè)芯片的輸出接在一起,所以這次這個(gè)比較特殊,板子是放在一個(gè)盒子里面,手動切換就不方便,只有想辦法要么通過軟件,要么通過硬件切換。我還是打算在硬件上面動手,就實(shí)現(xiàn)一個(gè)簡單的功能,硬件自動切換。后來就想起我當(dāng)初在做電視機(jī)維修用到的音視頻通道切換芯片74HC4052。
功能:當(dāng)DB9端口有線連接時(shí),這個(gè)時(shí)候選擇用RS232。 當(dāng)RS485端口有連接時(shí),選擇用RS485。
所用到的主要器件: 1、RS3232(3.3V芯片) 2、RS3485(3.3V芯片) 3、74HC4052 上面1,2兩種基本上都使用過了,就不需要說了,主要說明一下74HC4052。
74HC4052:是一個(gè)雙刀四擲模擬雙向開關(guān)。
引 腳 圖
74HC4052.PNG (38.85 KB, 下載次數(shù): 192)
下載附件
2015-6-10 22:40 上傳
引腳功能: A0~A3:A通道通道輸入/輸出端 B0~B3:B通道通道輸入/輸出端 AN: A通道公共輸出/輸入端 BN: B通道公共輸出/輸入端 S0,S1:地址端 E:使能端(低電平有效,一般和地接在一起) VEE:模擬信號接地端(一般和數(shù)字地接在一起) GND:數(shù)字信號接地端 VCC:電源+
74HC4052相當(dāng)于一個(gè)雙刀四擲開關(guān),具體接通哪一通道,由輸入地址碼S0,S1地址端來決定。其真值表如下
電路圖如下:
串口—RS485自動切換.PNG (61.5 KB, 下載次數(shù): 249)
下載附件
2015-6-10 22:40 上傳
工作原理:高電平接通RS232,低電平接通RS485。
RS232的輸出接在74HC4052的A3和B3,因?yàn)楫?dāng)S0和S1是高電平的時(shí)候就接通這兩路。 RS485的輸出接在74HC4052的A0和B0,因?yàn)楫?dāng)S0和S1是低電平的時(shí)候就接通這兩路。 這里需要注意的是,一定不要把串口通信的兩根線弄反了,也就是RXD和TXD兩根線。 S0和S1我是接在DB9針的4腳,因?yàn)槲业拇诰這個(gè)引腳是高電平,當(dāng)這個(gè)線接上后,4腳會有一個(gè)5V的電平(ON_RS232),經(jīng)過R97下拉電阻,提供74HC4052開關(guān)地址選擇信號。就能夠進(jìn)行通道選擇。
限于能力和水平有限,如有不對之處,請大家指出。。。。。。
|