




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
串行通信接口串行傳送的基本概念9/1一、串行傳送的特點
第一個特點串行傳送是在一根傳輸線上一位一位地傳送,這根線既作數據線又作聯絡線,也就是說要一根傳輸線上既傳送數據信息,又傳送聯絡控制信息。第二個特點是它的據格式有固定的要求(即固定的數據格式),分異步和同步數據格式,與此相應,就有異步通和同步通信兩種方式。第三個特點是串行通信中對信號的邏輯定義與TTL不兼容,因此,需進行邏輯關系和邏輯電平轉換。第四個特點是串行傳送信息的速率需要控制,要求雙方約定通信傳輸的波特率。HOME串行傳送的基本概念9/1二、串行數據傳送方向
在串行通信中,數據通常是在兩個站(如終端和微機)之間進行傳送,按照數據流的方向可分成3種基本的傳送方式:全雙工、半雙工和單工。
1.全雙工當數據的發送和接收分流,分別由兩根不同的傳輸線傳送時,通信雙方都能在同一時刻進行發送和接收操作,這樣的傳送方式就是全雙工(FullDuplex)制,如圖9.1所示。發送器接收器接收器發送器A
站B站圖9.1全雙工方式示意圖HOMEBACK串行傳送的基本概念9/12.半雙工
若使用同一根傳輸線既作接收又作發送,雖然數據可以在兩個方向上傳送,但通信雙方能同時收發數據,這樣的傳送方式就是半雙工(HalfDuplex)制,如圖9.2所示。
圖9.2半雙工方式示意圖A
站B
站發送器發送器接收器接收器HOMEBACK串行傳送的基本概念9/1三、信號的調制和解調采用調制器(Modulator)把數字信號轉換為模擬信號,送到通信鏈路上去,而用解調器(modulator)再把從通信鏈路上收到的模擬信號轉換成數字信號。大多數情況下,通信是雙向的,調制器和解調器合在一個裝置中,這就是調制解調器MODEM,如圖9.3所示。可見調制和解調器是在利用電話網進行遠距離數據通信時所需的設備,因此把它叫做數據通信設備DCE或數傳(DATASET)。HOMEBACK串行傳送的基本概念9/1三、信號的調制和解調
調制解調器的類型比較多,有振幅鍵控(ASK),頻移鍵控(FSK)和相移鍵控(PSK)。當波特率小于300時,一般采用頻移鍵控(FSK)調制方式,或者稱為兩態調頻。它的基本原理是把“o”和“1”的兩種數字信號分別調制成不同頻率的兩個音頻信號,其原理如圖9.4所示。HOMEBACK串行傳送的基本概念9/1四、信息的檢錯與糾錯
檢錯----我們把如何發現傳輸中的錯誤。糾錯----發現錯誤之后,如何消除錯誤。在基本通信規程中一般采用奇偶校驗或方陣碼檢錯,以反饋重發方式糾錯。在高級通信控制規程中一般采用循環冗余碼(CRC)檢錯,以自動糾錯方法來糾錯。方陣碼檢錯技術是奇偶校驗與“檢驗和”的綜合。HOMEBACK串行傳送的基本概念9/1四、信息的檢錯與糾錯
圖9.5給出一個方陣檢驗字符的生成示例。在接收時,數據塊讀出產生一個檢驗字符,和發送來的檢驗字符進行比較。如果兩者不同,就表明有錯碼,反饋重發。
11O100100100000110l01O10111lOO1111000011圖9.5方陣檢驗字符生成原理OO0O1O0
1HOMEBACK串行傳送的基本概念9/1五.波特率與發送/接收時鐘
1.波特率——是指單位時間內傳送二進制數據的位數,其單位是位/秒(b/s)。
它是衡量串行數據速度快慢的重要指標。有時也用“位周期”來表示傳輸速率;位周期是波特率的倒數。最常用的標準波特率是110、300、600、1200、2400、4800、9600和19200b/s。在串行通信中,所說的傳輸速率是指波特率。假如在異步串行通信中,傳送一個字符,包括12位(其中有1個起始位,8個數據位,1個偶校驗位,2個停止位),其傳輸速率是1200b/s,那么,每秒所能傳送的字符數是1200/(1+8+1+2)=100個.HOMEBACK串行傳送的基本概念9/12.發送/接收時鐘在發送數據時,發送器在發送時鐘(下降沿)作用下將發送移位寄存器的數據按位串行移位輸出;在接收數據時,接收器在接收時鐘(上升沿)作用下對來自通信線上串行數據,按位串行移人接收移位寄存器。因此,發送/接收時鐘又可叫做移位時鐘脈沖。另外,從數據傳輸過程中,收方進行同步檢測的角度來看,接收時鐘成為收方保證正確接收數據的重要工具。為此,接收器采用比波特率更高頻率的時鐘來提高定位采樣的分辨率能力和抗干擾能力。圖9.6示出了一個頻率為16倍波特率的接收時鐘的作用。HOMEBACK串行傳送的基本概念9/12.發送/接收時鐘采樣、檢測過程如下:在停止位或空閑位的后面,接收器利用每個接收時鐘的上升沿對輸入數據流進行采樣,通過檢測是否有8個連續的低電平,來確定它是否為起始位。如果都是低電平,則確認是起始位,且對應的是起始位中心,然后以此為時間基準,每隔16個時鐘脈沖采樣一次,定位檢測1個數據位。如果不是8個連續低電平(即使8個采樣值中有1個非“0”),則認為這1位是干擾信號,把它刪除。可見,采用16倍頻措施后,不僅有利于實現收發同步,而且有利于抗干擾和提高異步串行通信的可靠性。HOMEBACK串行傳送的基本概念9/13.波特因子所謂波特因子(Factor)是發送/接收1位數據(1個數據位)所需要的時鐘脈沖個數,其單位是個/位。若傳送1位數據需要16個時鐘,則波特因子為16個/位。因此,在實際應用中,可根據所要求的傳輸波特串及所選擇的波特因子來確定發送/接收時鐘的頻率。發/收時鐘脈沖與波特率之間的關系,可用下式表示。
Txc=BaudxFactor(9.1)
從關系式(9.1)可以看出,在波特因子選定的情況下,可利用改變發/收時鐘頻率來控制串行通信的波特率。
HOMEBACK串行傳送的基本概念9/14.傳輸距離與傳輸速率的關系串行接口或終端直接傳送串行數據的最大距離(當然,波形要不發生畸變)與傳輸速率及傳輸線的電氣特性有關,傳輸距離是隨傳輸速率的增加而減小。實際應用中,利用電話網對遠距離傳送,一般都需使用通信設備調制解調MODEM。HOMEBACK串行傳送的基本概念9/1六、串行通信的基本方式根據在串行通信中,對數據流的分界、定時及同步的方法不同,串行通信可分為異步串行通信方式和同步串行通信方式。異步串行通信的基本特點是:異步串行通信是以字符為信息單位傳送的。每個字符作為—個獨立的信息單位(1幀數據),可以隨機出現在數據流中,即發送端發出的每個字符在數據流中出現的時間是任意的,接收端預先并不知道。所以,所謂異步通信是指字符與字符之間的傳送是異步的,而字符內部位與位之間傳送是同步的。HOMEBACK串行傳送的基本概念9/1六、串行通信的基本方式
同步串行通信的基本特點是:同步串行通信是以數據塊(字符塊)為信息單位傳送,而每幀信息包括成百上千個字符,因此,傳送一旦開始,要求每幀信息內部的每一位都要同步。因此,異步串行通信一般用在數據傳送時間不能確知,發送數據不連續,數據量較少和數據傳輸速率較低的場合;而同步串行通信則用在要求快速、連續傳輸大批量數據的場合oHOMEBACK串行通信的數據格式9/2
在串行傳輸中,通信雙方都按通信協議進行。所謂通信協議是指通信雙方的一種約定。約定中包括對數據格式、同步方式、傳送速度、傳送步驟、檢糾錯方式以及控制字符定義等問題作出統一規定,通信雙方必須共同遵守。目前,采用的通信協議有兩類:異步和同步協議。同步協議又有面向字符(Character-Oriented)和面向比特(Bit-Oriented)以及面向字節計數等。其中,面向字節計數的同步協議在此不作討論。HOMEBACK串行通信的數據格式9/2一、起止式異步通信數據格式
1.特點與格式起止式數據格式:這種通信的數據格式是靠起始位和停止位來進行字符同步的。異步通信時,為了確保異步通信的正確性,因此,在字符數據格式中設置起始位和停止位,發送端在一個字符正式發送之前先發一個起始位,而在該字符結束時再發一個(或幾個)停止位。接收端在檢測到起始位時,便知道字符已到達,應開始接收字符;當檢測到停止位時,則知道字符已結束。起止式的幀數據格式如圖9.7所示。HOMEBACK串行通信的數據格式9/22.起/止位的作用傳送開始之前,發/收雙方把所采用的起止式格式(包括字符的數據位長度,停止位位數有無校驗位以及是奇校驗還是偶校驗等)和數據傳輸速率作統一約定。傳送開始后,接收設備不斷地檢測傳輸線,看是否有起始位到來。當收到一系列的“1”(停止位或空閑位)之后,檢測到一個下跳沿,說明起始位出現,起始位經確認后,就開始接收所規定的數據位和奇偶校驗位以及停止位。經過處理將停止位去掉,把數據位拼裝成——個并行字節,并且經校驗后,無奇偶錯才算正確地接收一個字符。一個字符接收完畢,接收設備又繼續測試傳輸線,監視“下跳沿”的到來和下一字符的開始,直到全部數據傳送完畢。HOMEBACK串行通信的數據格式9/2二、面向字符的同步通信數據格式
1.特點與格式特點:一次傳送由若干個字符組成的數據塊,而不是只傳送一個字符,并規定了10個特殊字符作為這個數據塊的開頭與結束標志以及整個傳輸過程的控制信息,它們也叫做通信控制字。由于被傳送的數據塊是由字符組成,故被稱作面向字符的數據格式。SYNSYNSOH標題
STX
數據塊
ETB/ETX
校驗塊圖9.8面向字符同步通信數據的幀格式HOMEBACK串行通信的數據格式9/22.特定字符(控制字符)的定義
SOH是序始字符(StartofHeader),它表示標題的開始。標題中包括源地址、目標地址和路由指示等信息。
STX是文始字符(StartofText),它標志著傳送的正文(數據塊)開始。ETB(EndofTransmissionBlock)或文終字符EXT(EndofText)。3.數據透明的實現協議應將數據塊中具有將特定字符作為普通數據處理的能力,這種能力叫做“數據透明”。當把一個特定字符看成數據時,在它前面要加一個DLE,這樣接受器收到一個DLE就可預知下一個字符是數據字符,而不會把它當作控制字符處理了。HOMEBACK串行通信的數據格式9/21.特點與格式這些協議的特點是所傳輸的一幀數據可以是任意位,而且它是靠約定的位組合模式,而不是靠特定字符來標志幀的開始和結束,故稱“面向比特”的協議。這種通信的數據幀格式如圖9.9所示。8位8位8位>=0位16位8位01111110ACIFC01111110開始標志地址場控制場信息場校驗場結束標志圖9.9面向比特同步通信數據的幀格式2.幀信息的分段
(1)SDLC/HDLC協議規定,所有信息傳輸必須以一個標志字符開始,且以同一個標志字符結束。HOMEBACK串行通信的數據格式9/2
2.幀信息的分段
(2)地址場和控制場——在標志場之后,可以有一個地址場A(Address)和一個控制場C(Contr01)。地址場用來規定與之通信的次站的地址;控制場可規定若干個命令。
(3)信息場——跟在控制場之后的是信息場I(1nformation)。I場包含有要傳送的數據,并不是每一幀都必須有信息場。即數據場可以為o,當它為。時,則這一幀主要是控制命令。
(4)幀校驗場——緊跟在信息場之后的是兩字節的幀校驗場,幀校驗場稱為FC(FrameCheck)場或稱為幀校驗序列FCS(FramecheckSequence)。除了標志場和自動插入的“0”位外,所有的信息都參加CRC計算。HOMEBACK串行通信的數據格式9/23.實際應用時的兩個技術問題
(1)“0”位插入/刪除技術發送端在發送所有信息(除標志字節外)時,只要遇到連續.5個“1”,就自動插入一個“0”,當接收端在接收數據時(除標志字節)如果連續接收到5個“1”,就自動將其后的一個“0”刪除,以恢復信息的原有形式。這種“0”位的插入和刪除過程是由硬件自動完成的。
(2)SDLC/HDLC異常結束如在發送過程中出現錯誤,SDLC/HDLC協議用異常結束(Abort)字符,或稱失效序列使本幀作廢。SDLC/HDLC協議規定,在一幀之內不允許出現數據間隔。在兩幀信息之間,發送器可以連續輸出標志字符序列,也可以輸出連續的高電平,它被稱為空閑(1die)信號。HOMEBACK串行通信接口標準9/3一、RS—232C接口標準該標準的全稱是EIA-RS-232C標準(ElectronicIndustrialAssociate-RecommendedStandard-232C)是美國EIA(電子工業聯合會)與BELL等公司一起開發的1969年公布的通信協議。它適合于數據傳輸速率在0-20000b/s范圍內的通信。說明:首先,RS-232C標準最初是為遠程通信連接數據終端設備DTE(DataTerminalEquipment)與數據通信設備DCE(DataCommunicationEquipment)而制訂的。其次,RS。232C標準中所提到的“發送”和“接收”,都是站在DCE的立場上,而不是站在DCE的立場來定義的。HOMEBACK串行通信接口標準9/3一、RS—232C接口標準
1.EIA。RS-232C標準的信號線
(1)RS—232C的信號線定義
EIA-RS-232C標準規定·了在串行通信時,數據終端設備DTE和數據通信設備DCE之間的接口信號。表9.2給出了RS—232C信號的名稱、引腳號及功能:2號線發送數據(Transmitteddata--TxD):通過TxD線終端將串行數據發送到MODEM。
3號線接收數據(Receiveddata--RxD):通過RxD線終端接收從MODEM發來的串行數量據。HOMEBACK串行通信接口標準9/34號線請求發送(RequesttosendRTS):用來表示DTE請求DCE發送數據,即當終端重要發送數據時,使該信號有效(ON狀態),向MODEM請求發送。
5號線清除發送(Cleartosend——CTS):用來表示DCE準備好接收DTE發來的數據,是對請求發送信號RTS的響應信號。
6號線數傳機就緒(Datasetready-DSR):有效時(ON狀態),表明MODEM處于可以使用的狀態。
7號線信號地(SignalGroud--SG):信號地線,無方向。
8號線數據載體檢出(DataCarderdetection-DCD)線:用來表示DCE已接通通信鏈路,告之DTE準備接收數據。
20號線數據終端就緒(Datasetready——DTR):有效時(ON狀態),表明數據終端可以使用。
22號線振鈐指示(RingingIndicatorR1):當MODEM收到交換臺送來的振鈴呼叫信號時,使該信號有效(ON狀態),通知終端,已被呼叫。HOMEBACK串行通信接口標準9/3(2)信號線的連接和使用
①遠距離(15米以上)通信時,一般要加調制解調器MODEM,故所使用的信號線較多。此時,若在通信雙方的MODEM之間采用專用電話線進行通信,則只要使用2—8號信號線進行聯絡與控制,如圖9.10(a)所示。若在雙方MODEM之間采用普通電話交換線進行通信,則還要增加RI(22號線)和DTR(20號線)兩個信號線進行聯絡,如圖9,10(b)所示。
②近距離通信(小于15米)時,不采用調制解調器MODEM(稱零MODEM方式),通信雙方可以直接連接,這種情況下,只需使用少數幾根信號線。如圖9.11所示。如果想在直接連接時,而又考慮RS-232C的聯絡控制信號,則采用零MODEM方式的標準連接方法,其通信雙方信號線的安排如圖9.12所示。HOMEBACK串行通信接口標準9/3雙方握手信號關系如下(注:甲方、乙方并未在圖中標出):
a.甲方的數據終端就緒(DTR)和乙方的數傳機就緒(DSR)及振鈴信號(RI)兩個信號互連。這時,一旦甲方的DTR有效,乙方的RI就立即有效,產生呼叫,并應答響應,同時又使乙方的DSR有效。這意味著,只要一方的DTE準備好,便同時為對方的DCE準備好,盡管實際上對方DCE并不存在。
b.甲方的請求發送(RTS)及清除發送(CTS)自連,圖9.12零MODEM方式的標準信號連接并與乙方的數據載體檢出(DCD)互連,這時,一旦甲方請求發送(RTS有效),便立即得到發送允許(CIS有效),同時使乙方的DCD有效,即檢測到載波信號,表明數據通信鏈路已接通。這意味著只在一方的DTE請求發送,同時也為對方的DCE準備好接收(即允許發送),盡管實際上對方DCE并不存在。
c.雙方的發送數據(TxD)和接收數據(RxD)互連,這意味意著雙方都是數據終端設備(DTE),只要上述的握手關系一經建立,雙方即可進行全雙工傳輸或半雙工傳輸。HOMEBACK串行通信接口標準9/32.電氣特性
(1)在TxD和RxD數據上邏輯1(MARK)=-3~-15V;邏輯0(SPACE)=+3~+15V
(2)在RTS、CTS、DSR、DTR、CD等控制線上信號有效(接通,ON狀態,正電壓)=+3~+15V
信號無效(斷開,OFF狀態,負電壓)=-3~-15V(3)EIA-RS-232C與TTL轉換很明顯,EIA-RS-232C是用正負電壓來表示邏輯狀態,與TIL以高低電平表示邏輯狀態的規定不同。
MAX232芯片可完成TTL←→EIA雙向電子轉換,圖9.13示出了MCl488和MCl489的內部結構和引腳。
MCl488的引腳2,4,5,9,10和12,13接TTL輸入。引腳3,6,8,11輸出端接EIA-RS-232C。MC1489的1,4,10,13腳接EIA輸入,而3,6,8,11腳接TTL輸出。如圖9.14HOMEBACK串行通信接口標準9/33.機械特性
(1)連接器
①DB-25型連接器。只需9個信號:2個數據信號、6個控制信號、1個信號地線。DB-25型連接器的外形及信號分配如圖9.17所示。
②DB-9型連接器。由于286以上微機申行門取消了電流環接門,故采用DL9型連接器,作為多功能I/0卡或主板上COM1和COM2兩個串行口的連接器,其引腳及信號分配如圖9.18所示。若與配接DB-25型連接器的DCE設備連接,必須使用專門的電纜,其對應關系如圖9.19所示。
(2)電纜長度在通信速率低于20kb/s時,RS-232C所能直接連接的最大物理距離為15m(50英尺)。HOMEBACK串行通信接口標準9/3(3)最大直接傳輸距離的說明
DTE和DCE之間最大傳輸距離為15m(50英尺)。為了保證碼元畸變小于4%的要求,借口標準在電器特性中規定,驅動器的負載電容應小于2500pF。
例如,采用每0。3m(約1英尺)的電容值為40~50pF的普通非屏蔽多芯電纜作傳輸線,則傳輸電纜的長度,即傳輸距離為:
L==50英尺≈15。24m
2500F50pF/英尺HOMEBACK串行通信接口標準9/3
二、RS-422A接口標準
RS-422A標準是一種平衡方式傳輸。所謂平衡方式,是指雙端發送和雙端接收,所以,傳送信號送信號要用兩條線AA’和BB’,發送端和接收端分別采用平衡發送器(驅動器)和差動接收器。如圖9.20所示。平衡發送器差動接收器
ARS-422A電平A’MC3487MC3486BB’圖9.20RS-422A標準傳輸線連接HOMEBACK串行通信接口標準9/3
二、RS-422A接口標準
RS-422A接口標準的電路由發送器、平衡連接電纜、電纜終端負載和接收器組成。它通過平衡發送器把邏輯電平變換成電位差,完成始端的信息傳送;通過差動接收器,把電位差變成邏輯電平,實現終端的信息接收。
為了實現RS-422A標準的連接,許多公司推出了平衡驅動器/接收器集成芯片,如MC3487/3486、SN75174/75175等。例如,在YSJC-A型微機遠距離水位自動監測系統中,采用MCM87和MC3486分別作為平衡發送器和差動接收器,傳輸線采用普通的雙絞線,在零MODE方式下傳輸速率為8Kb/s時,傳送距離達到了1.5km。MC3486和MC3487的連接,如圖9.21所示。HOMEBACK串行通信接口標準9/3三、RS—485接口標準它與RS422A標準一樣,也是—種平衡傳輸方式的串行接口標準,它和RS--422A兼容且擴展了11S-422A的功能。兩者主要差別是:RS-422A標準只許電路中有一個發送器,而RS—485標準允許在電路中可有多個發送器,因此,它是——種多發送器的標準。其配置如圖9.22所示。
RS-485標準的特點有:
a.共模抑制比高,抗干擾能力強。
b.傳輸速率高,它允許的最大傳輸速率可達10Mb/s(傳送15m)。
c.傳送距離遠(指無MODEM的直接傳輸),采用雙絞線.d.能實現多點對多點的通信,RS-485允許平衡電纜上連接32個發送器/接收器對。HOMEBACK串行通信接口標準9/3四、幾種標準的比較
表9。3列出了RS-232C、RS-423、RS-422A和RS-485幾種標準的工作方式、直接傳輸的最大距離、最大數據傳輸速率、信號電平以及傳輸線上允許的驅動器和接收器的數目等特性參數。HOMEBACK串行通信接口的任務及組成9/4
一、串行通信接口的基3-任務
1.實現數據格式化因為來自CPU的是普通的并行數據,所以,接口電路應具有實現不同串行通信方式下的數據格式化的任務。
2.進行串←→并轉換串行傳送,數據是一位一位串行傳送的,而計算機處理數據是并行數據。所以當數據由計算機送至數據發送器時,首先把并行的數據轉換為串行的數據再傳送。
3.控制數據傳輸速率串行通信接口電路應具有對數據傳輸速率——波特率進行選擇和控制的能力。HOMEBACK串行通信接口的任務及組成9/44.進行錯誤檢測在發送時接口電路對傳送的字符數據自動生成奇偶校驗位或其他校驗碼。在接收時,接口電路檢查字符的奇偶校驗位或其他校驗碼,以確定師傅發生傳送錯誤。5,進行T1L與EIA電平轉換
CPU和終端均采用TIL電平及正邏輯,他們與EIA采用的電平及負邏輯不兼容,需在接口電路中進行轉換。6.提供符合EIA-RS-232C接口標準所要求的信號線遠距離通信采用MODEM時,需要9根信號線;近距離零MODEM方式,只需要3根信號線。這些信號線由接口電路提供,以便與MODEM或終端進行聯絡與控制。HOMEBACK串行通信接口的任務及組成9/4二、串行通信接口電路的組成為完成上述串行接口的任務,串行通信接口電路—般由可編程的串行接口芯片,波特率發生器,EIA與TTL電平轉換器以及地址譯碼電路組成。通用的同步(USRT)和異步(UART)接口芯片種類如表9.4所示。
表9.4部分串行接口芯片及其功能芯片
同步(USRT)面向字符HDLC異步(UART)(起止式)
傳輸速率b/s同步
異步
56k1M19。2K1。5M1。5M64K64KINS8250MC6850MC6852MC6854Int8251AInt8273Z-80SIO800K√√√√√√√√√HOMEBACK可編程串行接口芯片8251A9/5一、8251A的外部特性和內部邏輯
1.8251A外部引腳信號(如圖9.23所示)
(1)面向CPU的連接信號除了三態雙向數據總線(Do—D7),讀寫信號(RD、WR),片選信號(CS)之外,還有:①RESET:芯片復位線。②C/D:地址線。
(2)狀態信號(供CPU查詢或向CPU申請中斷)
①TxRDY(TransmitterReady):發送器準備好,高電平有效。
②RxRDY(ReceiverReady):接收器準備好,高電平有效。
③TxE(TransmitterEmpty):發送器空,高電平有效。
④SYNDET(SynchronousDetection)/BD(BreakDetection)雙功能引腳。HOMEBACK可編程串行接口芯片8251A9/5(3)時鐘信號
包括發送器時鐘、接收器時鐘以及內部的工作時鐘信號CLK①TxC(TransmitterClock)發送器時鐘,由外部(波特率時鐘發生器)提供。由它控制8251A發送數據的速率。在異步方式下,TxC的頻率可以等于波特率,也可以是波特率的16倍或64倍。在同步方式下,TxC的頻率與數據速率相同。
②RxC(ReceiverClock):接收器時鐘,由外部(波特率時鐘發生器)提供。其頻率選擇和的TxC相同。實際應用中,把TxC和RxC連接在一起,使用同—個時鐘源——波特率時鐘發生器。
③ClX:工作時鐘,由外部時鐘源提供。為芯片內部電路提供定時,并非發送或接收數據的時鐘。CLK的周期要0.42us到1.35us范圍內。HOMEBACK可編程串行接口芯片8251A9/5(4)面向調制器的接口信號
8251A提供了4個與MODEM相連的控制信號和數據發送以及數據接收信號線。它們的含義與RS-232C標準定義相同。
①DTR:數據終端準備好,是輸出信號效,用以表示8251A準備就緒。
②DSR:數據裝置準備好,是輸入信號過虞狀態寄存器的D7位檢測這個信號。低電平有效。它由工作命令字的Dl置“1”變為有低電平有效。用以表示調制器已準備好。CPU通
③RTS:請求發送,是輸出號,低電信平有效。作命令字的D5置“1”來使其有效。
④CTS:清除傳送(即允許傳送),是輸入信號響應,當其有效時8251A方可發送數據。
⑤TxD:發送數據線。
⑥RxD:接收數據線。HOMEBACK可編程串行接口芯片8251A9/52,8251A的內部結構框圖
8251A的信號的8251A的結構如圖9,24所示,分成5個主要部分:接收器、發送6D、調制控制、讀/寫控制以及系統數據總線緩沖器。
(1)數據總線緩沖器:數據總線緩沖器是三態雙向8位緩沖器,它使8251A與系統數據總線連接起來。它含有數據緩沖器和命令緩沖器。
(2)接收器:接收器的功能是在接收時鐘RXC作用下接收RxD引腳上的幀格式化串行數據并把它轉換為并行數據。同時進行校驗,若發現錯誤,則在狀態寄存器中保存,以便CPU處理。
(3)發送器:發送器的功能是,首先把待發送的并行數據轉換成所要求的幀格式并加上校驗位,然后在發送時鐘死的作用下,由TxD引腳一位一位地串行發送出去。
(4)讀/寫控制和調制控制:讀/寫控制邏輯對CPU輸出的控制信號進行譯碼以實現表9.5所示的讀/寫功能。調制實現對MODEM的控制。HOMEBACK可編程串行接口芯片8251A9/5二、8251A的命4-字和狀態字1.方式命令作用:指定通信方式及其方式下的數據格式。即指定8251A為異步方式還是同步方并按照其通信方式約定幀數據格式。格式:方式命令字為8位,可以分為4組,每組2位,其格式如下:
D7D6D5D4D3D2D1D0S1S0EPPENL1L0B1B0停止位奇偶校驗字符長度波特率因子(同步)(異步)(異步)(同步)x0=內同步00=不用x0=無校驗00=5位00=不用00=同步X1=外同步01=1位01=奇校驗01=6位01=x1------0x=雙同步10=1。5位11=偶校驗10=7位10=x16
------1x=單同步11=2位11=8位11=x64
------HOMEBACK可編程串行接口芯片8251A9/5
例1:在某異步通信中,數據格式采用8位數據位,1位起始位,2位停止位,奇校驗,波特率因子是16,其方式命令字為11011110B:DEH。若將方式命令寫入命令口,則程序段為:
MOVDX,309H;8251A命令口
MOVAL,ODEH;異步方式命令字
OUTDX,AL
例2:同步通信中,若幀數據格式為:字符長度8位,雙同步字符,內同步方式,奇校驗,則方式命令字是00011100B:ICH。若將方式命令寫入命令口,則程序段為:
MOVDX,309H;8251A命令口
MOVAL,1CH;同步方式命令字
OUTDX,ALHOMEBACK可編程串行接口芯片8251A9/52.工作命令作用:指定8251A進行某種操作(如發送,接收,內部復位和檢測同步字符等)或處于某種工作狀態(如DTR),以便接收或發送數據。格式:工作命令字為8位,其格式如下。其中有些關鍵位(D6,D4,D2和D0)是經常要使用的。
D7D6D5D4D3D2D1D0EHIRRTSERSBRKRxEDTRTxEN進入搜索方式內部復位發送請求錯誤標志復位
發中止字符接收允許數據終端準備好發送允許HOMEBACK可編程串行接口芯片8251A9/5例3:若要使8251A內部復位,則程序段為:
MOVDX,309H;8251A命令口
MOVAL,01000000B;置n6:1,使內部復位
OUTDX,AL
注意:只要是包含D6=1的任何代碼都能實現內部復位。例4:異步通信時,允許接收,同時允許發送,則程序段為:
MOVDX,309H;命令口
MOVAL,00000101B;置D2=1,D0=1,允許
OUTDX,AL
接收和發送HOMEBACK可編程串行接口芯片8251A9/53.狀態宇作用——報告8251A何時才能開始發送或接收,以及接收數據有無錯誤。格式——狀態字為8位,其格式如下。其中有些狀態位(Do,D1和D1~D5)是經常使用的關鍵位。所有狀態位置“1”有效。
D7D6D5D4D3D2D1D0DSR
SYNDETFEOEPETxERxRDYTxRDY數傳機就緒同步檢出格式錯溢出錯奇偶錯發送器空接收準備好發送準備好HOMEBACK可編程串行接口芯片8251A9/5例5:串行通信時,在發送程序中,需查狀態字的Do位是否置1,即查TxRDY=1?其程序段為:L:MOVDX,309H;8251A狀態口
INAL,DXANDAL,01H;查發送器是否就緒
JZ
L
;未就緒,則等待例6:串行通信時,在接收程序中,需查狀態字的D1位是否置1,即查RxRDY=1?其程序段為:L1:MOVDX,309H;8251A狀態口
INAL,DXANDAL,02H;查接收器是否就緒
JZ
L1;未就緒,則等待HOMEBACK可編程串行接口芯片8251A9/54.8251A的方式命令和工作命令的使用
①8251A的方式命令字、工作命令字和狀態字之間的關系是:方式命令字只是約定了雙方通信的方式(同步/異步)及其數據格式(數據位和停止位長度,校驗特性,同步字符特性),傳送速率(波特率因子)等參數,但并沒有規定數據傳送的方向是發送還是接收,故需要工作命令字來控制發/收。
②因為方式命令字和工作命令字均無特征位標志,且都是送到同一命令端口,所以在向8251A寫入方式命令字和工作命令字時,需要按一定的順序,這種順序不能顛倒或改變,若改變了這種順序,8251A就不能識別。這種順序是:復位一方式命令字一工作命令字1一丁作命令字2……如圖9.25所示。HOMEBACK可編程串行接口芯片8251A9/5三、8251A應用舉例1.要求在甲乙兩臺微機之間進行串行通信,甲機發送,乙機接收。要求把甲機上開發的應用程序(其長度為2DH)傳送到乙機中去。采用起止式異步方式,字符長度為8位,2位停止位,波特率因子為64個/位,無校驗,波特率為4800b/s。CPU與8251A之間用查詢方式交換數據。口地址分配是:309H為命令/狀態口,308H為數據口。2.分析由于是近距離傳輸,可以不需MODEM,而直接互連,并且,采用查詢I/O方式,故收/發程序中只需檢查發/收準備好的狀態是否置位,即可發收1個字節。3.設計硬件:根據以上分析把兩臺微機都當作DTE,它們之間只需TxD、RxD、SG.三根線連接就能通信。如圖9.26所示HOMEBACK可編程串行接口芯片8251A9/5軟件編程:①發送程序(略去STACK和DATA段):CSEG SEGMENT ASSUMECS:CSEG,DS:CSEGTRA PROCFARSTART:MOVDX,309H ;命令口
MOVAL,00H;空操作,向命令口送任意數
OUTDX,AL MOVAL,40H;內部復位(使D6=1)
OUTDX,AL NOP MOVAL,0CFH;方式命令字(異步,2位停止位,字符長度為8位,無校驗,波特率因子為64個/位)
OUTDX,AL
HOMEBACK可編程串行接口芯片8251A9/5MOVAL,37H
;工作命令字(RTS,ER,RxE,DTR,TxEN均置1)
OUTDX,AL MOVCX,2DH;傳送字節數
MOVSI,300H;發送區首址L1: MOVDX,309H;狀態口
INAL,DX;查狀態位D0(TxRDY)=1?
ANDAL,01H JZL1;發送未準備好,則等待
MOVDX,308H;數據口
MOVAL,[SI];發送準備好,則從發送區取一字節發送
OUTDX,AL INCSI;內存地址加1 DECCX
;字節數減1 JNZL1;未發送完,繼續
MOVAX,4C00H;已發送完,回DOS INT21HTRA ENDPCSEG ENDS ENDSTARTHOMEBACK可編程串行接口芯片8251A9/5②接收程序(略去STACK和DATA段):SCEG
SEGMENT ASSUME
CS:REC,DS:SCEGREC
PROC
FARBEGIN:MOVDX,309H
;命令口
MOVAL,00H
;空操作,向命令口寫任意數
OUTDX,ALMOVAL,50tt
;內部復位(含D6=1
OUTDX,ALNOPMOVAL,OCFH
;方式字
OUTDX,ALMOVAL,14H
;命令字(ER、RXE置1)
OUTDX,ALMOVCX,2DH
;傳送字節數
MOVDI,400H ;鑲收區首址
L2:
MOVDX,309H;狀態口 HOMEBACK可編程串行接口芯片8251A9/5 INAL,DX TESTAL,38H ;查錯誤
JNZERR ;有錯,則轉出錯處理
ANDAL,02H ;查狀態位DI(RxRDY);17 JZL2 ;接收未準備好,則等待
HOVDX,308H ;數據口
INAL,DX ;接收準備好,則接收1字節
MOV[D1],AL ;并存入接收區
INLDI ;修改內存
LOOP12
;未接收完,繼續
JMPSTOPERR: (略)STOP: MOVAX,4C00H ;已接收完,程序結束,退出
INT21H返回DOSREC ENDPCSEG ENDS ENDRECINHOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6一、要求
①甲乙兩臺微機之間,按EIA—RS-232C標準進行零MODEM方式、全雙工異步串行通信,雙方在各自的鍵盤上按鍵向對方發送字符時,同時又可接收對方發來的字符。字符數據格式為起止式:1位停止位,7位數據位,無校驗,波特率因子為16。
②發送的字符和接收的字符均在屏幕上顯示。
③波特率在110b/s,150bls,300bls,600bls,1200b/s,2400b/s,4800b/s,960b/s八檔中任選。
④按下Ese鍵,程序退出,返回DOS。二、分析
①由于要求波特率可選,故需要設置波特率時鐘發生器。可以利用8253-5的通道2輸出方波作為發送/接收時鐘,來控制串行傳輸速率——波特率。HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6②由于要求8253-5輸出方波,作為8251A的收/發時鐘,所以8253-5必定工作在3方式,而3方式的門控信號GATE,要由外部控制。本例利用并行接口芯片8255A的PC6來控制GATE2,并且當PC6=1時,允許8253-5工作;PC6=0時,禁止8253-5工作。另外,8253-5的輸入時鐘CLK是由系統OSC(14.31816MHz)經分頻器74LS92的12分頻之后送人8253-5的,故頻率為1.19318MHz,并且固定不變。
③串行通信接口電路所涉及到的其他芯片,如8251A、MAX232。HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6三、設計
1.硬件設計根據上述要求和分析,串行通信接口電路的組成以8251A為主,還要加上8253-5作波特率時鐘發生器,M~x232作電平轉換,74LS92作分頻器,8255A提供門控信號。電路原理框圖如圖9.27所示,圖中只畫出甲機一側的接口電路,乙機一側的接口電路完全與甲機的相同,故從圖中略去。
2.軟件設計通信程序由主程序和子程序兩大模塊組成。子程序有兩個:一是8251A初始化,二是8253-5計數初值的計算與裝入。主程序負責波特率的選擇與輸入;接收和發送字符,并在屏幕上顯示;查有無ESC鍵按下,以便結束程序,并返回DOS。全雙工串行通信程序的流程圖如圖9.28所示。HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6
下面是全雙工通信的具體程序Serial.asm程序:DATA5lEQU308h
;8251A數據口CTRL5lEQU309H
;8251A命令/狀態口CTR155
EQU303H
;8255A命令口TIMER2EQU306H
;8253-9的2號計數09端口TIMCTLEQU307H
;8253,5命令口CLK00EQU12H
;8251A輸入時鐘頻率CLK01EU34DEttFACTOREQU16
;波特串因于16DATASEGMENT BPS00DW(?)MES1DB'NOWENTERTHESERIALCOMMUNICATION',
OAH,ODH
DB'ENDWITH,'ESC',OAH,ODH,'$‘INPUT_MESSAGEDB'0:11O1:1502:3003:600' DBODH,OAH DB'4:12005:24006:48007:9600' DBODH,OAH DB'PLEASETAKEACHOICE(O—7)OFBAUD_RATE;' HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6 DB0DH,0AH,'$'ERROR_MESSAGEDB'INPUTERROR!TRYAGAIN' DBODH,0AH,'$’DATA ENDSCODE SEGMENTASSUMEES:CODE,DS:DATAINTT51 PROCNEAR ;8251A初始化于程
MOVDX,CTRL51 ;825lA命令口
XORAX,AX ;空操作LL: CALLCHAROUT LOOPLL
MOVAL,40H ;內部復位
CALLCHAROUT
MOVAL,4AH ;8251A方式命令
CALLCHAROUT MOVAL,27H ;8251AX.作命令
CALLCHAROUT
RET返回CHAROUT:OUTDX,AL ;送數子程
PUSHCX HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6 MOVCX,100 ;延時
GG:
LOOPGG
POPCX
RETINIT51ENDPSET_BPSPROCNEAR ;8253-5計數初值計算與裝入于程
MOVDX,CLK00 ;取8253-5輸入時鐘頻率CLK作被除數
MOVAX,CLKOI
MOVBX.BPS00 ;取所選波特率作第一個除數·
DIVBX ;除法運算,商數送AX MOVDX,O ;余數清零
MOVBX,FACTOR ;取波特率因子作第二個除數
DIVBX ;除法運算,得計數初值(商數)送AX MOVBX,AX ;保存計數初值至BX MOVDX,TIMCTL ;8253-5命令口
MOVAL,OB6H ;8253-5初始化命令
OUTDX,AX MOVDX,TIMER2 ;8253-5計數器2的端口
MOVAX,BX ;取計數初值
OUTDX,AL ;裝計數初值低字節
HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6 MOVAL,AH ;裝計數初值高字節
OUTDX,AL RET ;返回SET_BPS ENDPMAIN PROCFAR
;通信主程序
MOVAX,DATA MOVDS,AX MOVAH,9 ;提示選擇波特串
MOVDX,SEGINPUTMESSAGE MOVDS,DX MOVDX,OFFSETINPUTMESSAGE INT21HINPUT:
MOVAH,8 ;輸入波特率
INT
21H
CMPAL,'0' ;輸入'O',表示選擇110BAUD
JNENEXTl
MOVDPS00,110 ;存入BPS00
JMPBEGIN ;跳轉開始BEGIN處NEXT1:CMPAL,'1'
JNENEXT2
HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6 MOVBPS00,150 ;'1',表示150b/s JMPBEGINNEXT2:CMPAL,'2'
JNENEXT3
MOVBPS00,300 ;'2'表示300b/s
IMPBEGINNEXT3:CMPAL,'3'
JNENEXT4
MOVBPS00,600 ;'3',表示600b/a
JMPBEGINNEXT4:CMPAL,'4'
JNENEXT5
MOVBPS00,1200 ;'4'表示1200b/s JMPBEGINNEXT5:CMPAL,'5' JNENEXT6 MOVBPS00,2400 ;'5',表示2460b/s JMPBEGINNEXT6:CMPAL,'6' JNENEXT7 HOMEBACK采用RS-232C標準的全雙工異步串行通信接口電路設計9/6 MOVBPS00,4800 ;'6'表示480b/s JMPBEGINNEXT7:CMPAL,'7' JNEERROR ;若波特率選擇有錯,則重新輸入
MOVBPS00,9600 ;'7',表示9600b/s JMPBEGINERROR:
MOVAH,9 ;提示波特率選擇出錯,重新輸入
MOVDX,SEGEBROR_MESSAGE MOVDS,DX MOVDX,OFFSETERROR_MESSAGE INT21H JMPINPUTBEGIN:CALLSET_BPS
;調用8253-5的SET-BPS子程序,設置所選波 特率的8253。5計算韌
CALL1NTT5l ;調用8251A子程序,初始化8251ALEA DX,MESI1 MOVAH,09
I0NT21H MOVDX,303H ;初始化82553.
HOMEB
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 民航運輸服務專業教學標準(高等職業教育專科)2025修訂
- 鐵道橋梁隧道工程技術專業教學標準(高等職業教育專科)2025修訂
- 冠心病合并糖尿病飲食指南
- 稅務師考試2018課件
- 邏輯思維模式培訓課件
- 縣2025年大棚蔬菜基地建設實施方案
- 海水晶項目可行性研究報告
- 2025年中國北京市房地產行業市場供需格局及投資規劃建議報告
- 中國烘焙花生行業市場調查研究及投資潛力預測報告
- 2025年 昭通市焊工操作證理論考試練習題附答案
- 2025年河南省高考物理真題(解析版)
- 7數滬科版期末考試卷-2024-2025學年七年級(初一)數學下冊期末考試模擬卷03
- 涼山州木里縣選聘社區工作者筆試真題2024
- 2025年中國太平洋人壽保險股份有限公司勞動合同
- 配電線路高級工練習試題附答案
- 護士N2理論考試試題及答案
- 2025年河北省中考麒麟卷地理(二)
- 第23課+和平發展合作共贏的時代潮流+課件高一歷史下學期統編版(2019)必修中外歷史綱要下
- 小說閱讀-2025年中考語文一模試題分項匯編解析版
- 缺血性卒中腦保護中國專家共識(2025)解讀
- T/CAPE 11005-2023光伏電站光伏組件清洗技術規范
評論
0/150
提交評論