<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 電源與新能源 > 設計應用 > PC機擴展RS-232接口

PC機擴展RS-232接口

作者: 時(shí)間:2007-01-25 來(lái)源:網(wǎng)絡(luò ) 收藏
 機的C串行口是使用最多的接口之一。因此,4串口、8串口等以增加串口數量為目的的ISA總線(xiàn)卡產(chǎn)品大量問(wèn)世。一般串口應用只是使用了RXD和TXD兩條傳輸線(xiàn)和地線(xiàn)所構成的串口的最基本的應用條件,而本文介紹一個(gè)利用機的串口加上若干電路來(lái)實(shí)現多串口需求的接口電路。
1.機串口的RTS和DTR及
 RTS和DTR是PC機中8250芯片的MODEM控制寄存器的兩個(gè)輸出引角D1和D0位,口地址為COM1的是3FCH,口地址為COM2的是2FCH。我們可以利用對MODEM控制寄存器3FCH或2FCH的寫(xiě)操作對其進(jìn)行控制。從而利用該操作和實(shí)現對TXD和RXD進(jìn)行多線(xiàn)擴展,圖1是其。
 在圖1所示的PC機串口擴展電路中,74LS161是二進(jìn)制計數器,1腳是清0端,2腳是計數端,計數脈沖為負脈沖信號,4051是八選一雙向數字/模擬電子開(kāi)關(guān)電路,其中一片用于正向輸出,一片用于反向輸出。該擴展電路工作原理是通過(guò)控制PC機串口的DTR輸出的高低電平來(lái)形成74LS161的P2腳計數端的負脈沖信號,使161的輸出端P14(QA)、P13(QB)、P12(QC)、P11(QD)腳依次在0000到1111十六個(gè)狀態(tài)中變化,本電路僅使用了QA、QB、QC三個(gè)輸出來(lái)形成對4051的ABC控制,最終使得4051(1)的輸入端TXD依次通過(guò)與TX1~TX8導通而得到輸出信號,4051(2)的輸出端RXD與RX1~RX8依次導通形成輸入信號。由于RXD和TXD的導通是一一對應的,因此串口通信就可以依次通過(guò)與多達8個(gè)帶有三線(xiàn)基本串口的外部設備進(jìn)行通信傳輸以實(shí)現數據傳送。PC機端的電平轉換電路是將RS232電平轉換為T(mén)TL電平,外設端的電平轉換電路是將TTL電平轉換為RS232電平。由于這種轉換有許多電路可以實(shí)現,因而,這里不再介紹。
2.電路使用程序
對PC機串口COM1的編程如下:
……
… ;對COM1口的波特率等設置;
MOV DX,3FCH
MOV AL,XXXXXX01B
OUT DX,AL;D1生成RTS負脈沖,對74LS161輸出端清0
MOV AL,XXXXXX11B;
OUT DX,AL ;4051的RX1和TX1導通
CALL COM ;調用通信子程序,與第一個(gè)外部設備通信;
MOV CX,7 ;設置循環(huán)計數器;
NEXT:MOV DX ,3FCH
MOV AL,XXXXXX10B
OUT DX ,AL ;D0位生成DTR的負脈沖,形成161的P2腳計數脈沖
MOV AL,XXXXXX11B
OUT DX,AL ;RX2和TX2導通
CALL COM ;調用通信子程序,與第二個(gè)外部設備通信
LOOP NEXT ;循環(huán)與另外6個(gè)外部設備通信
… ;通信子程序略
3.使用說(shuō)明
 由于該擴展的多路接口在通信時(shí)共用一個(gè)子程序,因此在與某一路導通時(shí),系統只能與這一路的外部設備進(jìn)行通信聯(lián)絡(luò )。
 如果工作現場(chǎng)需要立即和某一路通信,則需要對3FCH的D1位執行兩個(gè)寫(xiě)操作并在RTS腳形成負脈沖,以對7416I清0后,再連接執行若干次對DTR的兩次寫(xiě)操作。例如想對第4路外設通信,則需要執行完成對74LS161清0后,再連續三次對3FCH的D0位進(jìn)行兩個(gè)寫(xiě)操作以形成DTR腳的負脈沖,然后即可調用通信子程序。
 如需使用PC機的COM2串口,只需將程序中的3F8H~3FDH全部換成2F8H~2FDH即可。
 如果使用十六選一雙向數字/模擬電子開(kāi)關(guān)電路,可將74LS161的QA、QB、QC、QD四個(gè)輸出端接至電子開(kāi)關(guān)的四個(gè)控制端A、B、C、D,這樣就可以達到一個(gè)PC機的RS232口與16個(gè)帶有串口的外設的數據通信。


關(guān)鍵詞: PC RS-232 串行接口 擴展電路

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>