最新中文字幕Av专,又长又大又粗又硬视频,国产亚洲日韩欧一级,国产巨作最新丝袜秘书在线,综合色在线不卡,欧美日产国产首页,亚洲jizjiz少妇,亚洲夜噜噜,野外性xxxx黒人xxxx,美女又黄又免费的视频,亚洲国产情侣自拍,国产偷自交换校园激情,大菠萝福建app导航入口,香蕉国产青青草原网站,国产精品videossex国产高清,色呦呦视频在线播放,丁香六月婷婷综合欧美激情

您好
,歡迎訪問PLC控制柜-電氣控制柜-變頻控制柜廠家-西安自動化控制系統(tǒng)工程
13227762296
PLC控制柜-電氣控制柜-變頻控制柜廠家-西安自動化控制系統(tǒng)工程
聯(lián)系我們

PLC控制柜-電氣控制柜-變頻控制柜廠家-西安自動化控制系統(tǒng)工程

地址:西安市蓮湖區(qū)大興東路
電話:13227762296

咨詢熱線13227762296

串口通訊的起始
、數(shù)據(jù)、停止位的分配

發(fā)布時間:2020-02-15人氣:69

串口是串行接口(serial port)的簡稱

,也稱為串行通信接口或COM接口。

串口通信是指采用串行通信協(xié)議(serial communication)在一條信號線上將數(shù)據(jù)一個比特一個比特地逐位進(jìn)行傳輸?shù)耐ㄐ拍J健?/p>

串口按電氣標(biāo)準(zhǔn)及協(xié)議來劃分

,包括RS-232-C、RS-422
、RS485等


1.串行通信

在串行通信中

,數(shù)據(jù)在1位寬的單條線路上進(jìn)行傳輸
,一個字節(jié)的數(shù)據(jù)要分為8次,由低位到高位按順序一位一位的進(jìn)行傳送

串行通信的數(shù)據(jù)是逐位傳輸?shù)模l(fā)送方發(fā)送的每一位都具有固定的時間間隔

,這就要求接收方也要按照發(fā)送方同樣的時間間隔來接收每一位。不僅如此
,接收方還必須能夠確定一個信息組的開始和結(jié)束

常用的兩種基本串行通信方式包括同步通信和異步通信。


1.1串行同步通信

同步通信(SYNC:synchronous data communication)是指在約定的通信速率下

,發(fā)送端和接收端的時鐘信號頻率和相位始終保持一致(同步),這樣就保證了通信雙方在發(fā)送和接收數(shù)據(jù)時具有完全一致的定時關(guān)系

同步通信把許多字符組成一個信息組(信息幀),每幀的開始用同步字符來指示

,一次通信只傳送一幀信息
。在傳輸數(shù)據(jù)的同時還需要傳輸時鐘信號
,以便接收方可以用時針信號來確定每個信息位

同步通信的優(yōu)點(diǎn)是傳送信息的位數(shù)幾乎不受限制,一次通信傳輸?shù)臄?shù)據(jù)有幾十到幾千個字節(jié)

,通信效率較高。同步通信的缺點(diǎn)是要求在通信中始終保持精確的同步時鐘,即發(fā)送時鐘和接收時鐘要嚴(yán)格的同步(常用的做法是兩個設(shè)備使用同一個時鐘源)

在后續(xù)的串口通信與編程中將只討論異步通信方式

,所以在這里就不對同步通信做過多的贅述了


1.2串行異步通信

異步通信(ASYNC:asynchronous data communication)

,又稱為起止式異步通信
,是以字符為單位進(jìn)行傳輸?shù)?div id="4qifd00" class="flower right">
,字符之間沒有固定的時間間隔要求,而每個字符中的各位則以固定的時間傳送

在異步通信中,收發(fā)雙方取得同步是通過在字符格式中設(shè)置起始位和停止位的方法來實(shí)現(xiàn)的

。具體來說就是
,在一個有效字符正式發(fā)送之前,發(fā)送器先發(fā)送一個起始位
,然后發(fā)送有效字符位,在字符結(jié)束時再發(fā)送一個停止位
,起始位至停止位構(gòu)成一幀
。停止位至下一個起始位之間是不定長的空閑位
,并且規(guī)定起始位為低電平(邏輯值為0)
,停止位和空閑位都是高電平(邏輯值為1),這樣就保證了起始位開始處一定會有一個下跳沿
,由此就可以標(biāo)志一個字符傳輸?shù)钠鹗肌6鶕?jù)起始位和停止位也就很容易的實(shí)現(xiàn)了字符的界定和同步

顯然

,采用異步通信時,發(fā)送端和接收端可以由各自的時鐘來控制數(shù)據(jù)的發(fā)送和接收
,這兩個時鐘源彼此獨(dú)立,可以互不同步

下面簡單的說說異步通信的數(shù)據(jù)發(fā)送和接收過程


1.2.1異步通信的數(shù)據(jù)格式

在介紹異步通信的數(shù)據(jù)發(fā)送和接收過程之前

,有必要先弄清楚異步通信的數(shù)據(jù)格式

異步通信規(guī)定傳輸?shù)臄?shù)據(jù)格式由起始位(start bit)、數(shù)據(jù)位(data bit)

、奇偶校驗(yàn)位(parity bit)和停止位(stop bit)組成
,如圖1所示(該圖中未畫出奇偶校驗(yàn)位,因?yàn)槠媾紮z驗(yàn)位不是必須有的
,如果有奇偶檢驗(yàn)位,則奇偶檢驗(yàn)位應(yīng)該在數(shù)據(jù)位之后
,停止位之前)。

(1)起始位:起始位必須是持續(xù)一個比特時間的邏輯0電平

,標(biāo)志傳輸一個字符的開始,接收方可用起始位使自己的接收時鐘與發(fā)送方的數(shù)據(jù)同步

(2)數(shù)據(jù)位:數(shù)據(jù)位緊跟在起始位之后

,是通信中的真正有效信息。數(shù)據(jù)位的位數(shù)可以由通信雙方共同約定
,一般可以是5位、7位或8位
,標(biāo)準(zhǔn)的ASCII碼是0~127(7位)
,擴(kuò)展的ASCII碼是0~255(8位)
。傳輸數(shù)據(jù)時先傳送字符的低位
,后傳送字符的高位。

(3)奇偶校驗(yàn)位:奇偶校驗(yàn)位僅占一位

,用于進(jìn)行奇校驗(yàn)或偶校驗(yàn),奇偶檢驗(yàn)位不是必須有的
。如果是奇校驗(yàn)
,需要保證傳輸?shù)臄?shù)據(jù)總共有奇數(shù)個邏輯高位;如果是偶校驗(yàn)
,需要保證傳輸?shù)臄?shù)據(jù)總共有偶數(shù)個邏輯高位。

舉例來說

,假設(shè)傳輸?shù)臄?shù)據(jù)位為01001100
,如果是奇校驗(yàn),則奇校驗(yàn)位為0(要確?div id="d48novz" class="flower left">
?偣灿衅鏀?shù)個1),如果是偶校驗(yàn),則偶校驗(yàn)位為1(要確?div id="d48novz" class="flower left">
?偣灿信紨?shù)個1)

由此可見

,奇偶校驗(yàn)位僅是對數(shù)據(jù)進(jìn)行簡單的置邏輯高位或邏輯低位
,不會對數(shù)據(jù)進(jìn)行實(shí)質(zhì)的判斷,這樣做的好處是接收設(shè)備能夠知道一個位的狀態(tài)
,有可能判斷是否有噪聲干擾了通信以及傳輸?shù)臄?shù)據(jù)是否同步。

(4)停止位:停止位可以是是1位

、1.5位或2位
,可以由軟件設(shè)定。它一定是邏輯1電平
,標(biāo)志著傳輸一個字符的結(jié)束。

(5)空閑位:空閑位是指從一個字符的停止位結(jié)束到下一個字符的起始位開始

,表示線路處于空閑狀態(tài)
,必須由高電平來填充。

1.2.2異步通信的數(shù)據(jù)發(fā)送過程

清楚了異步通信的數(shù)據(jù)格式之后

,就可以按照指定的數(shù)據(jù)格式發(fā)送數(shù)據(jù)了,發(fā)送數(shù)據(jù)的具體步驟如下:

(1)初始化后或者沒有數(shù)據(jù)需要發(fā)送時

,發(fā)送端輸出邏輯1
,可以有任意數(shù)量的空閑位。

(2)當(dāng)需要發(fā)送數(shù)據(jù)時

,發(fā)送端首先輸出邏輯0,作為起始位

(3)接著就可以開始輸出數(shù)據(jù)位了

,發(fā)送端首先輸出數(shù)據(jù)的最低位D0,然后是D1
,最后是數(shù)據(jù)的最高位。

(4)如果設(shè)有奇偶檢驗(yàn)位

,發(fā)送端輸出檢驗(yàn)位

(5)最后,發(fā)送端輸出停止位(邏輯1)

(6)如果沒有信息需要發(fā)送

,發(fā)送端輸出邏輯1(空閑位),如果有信息需要發(fā)送
,則轉(zhuǎn)入步驟(2)。

1.2.3異步通信的數(shù)據(jù)接收過程

在異步通信中

,接收端以接收時鐘和波特率因子決定每一位的時間長度
。下面以波特率因子等于16(接收時鐘每16個時鐘周期使接收移位寄存器移位一次)為例來說明。

(1)開始通信

,信號線為空閑(邏輯1),當(dāng)檢測到由1到0的跳變時
,開始對接收時鐘計數(shù)

(2)當(dāng)計到8個時鐘的時候,對輸入信號進(jìn)行檢測

,若仍然為低電平
,則確認(rèn)這是起始位
,而不是干擾信號。

(3)接收端檢測到起始位后

,隔16個接收時鐘對輸入信號檢測一次,把對應(yīng)的值作為D0位數(shù)據(jù)

(4)再隔16個接收時鐘

,對輸入信號檢測一次,把對應(yīng)的值作為D1位數(shù)據(jù)
,直到全部數(shù)據(jù)位都輸入

(5)檢驗(yàn)奇偶檢驗(yàn)位

(6)接收到規(guī)定的數(shù)據(jù)位個數(shù)和校驗(yàn)位之后

,通信接口電路希望收到停止位(邏輯1),若此時未收到邏輯1
,說明出現(xiàn)了錯誤,在狀態(tài)寄存器中置“幀錯誤”標(biāo)志
;若沒有錯誤
,對全部數(shù)據(jù)位進(jìn)行奇偶校驗(yàn),無校驗(yàn)錯時
,把數(shù)據(jù)位從移位寄存器中取出送至數(shù)據(jù)輸入寄存器
,若校驗(yàn)錯,在狀態(tài)寄存器中置“奇偶錯”標(biāo)志

(7)本幀信息全部接收完

,把線路上出現(xiàn)的高電平作為空閑位。

(8)當(dāng)信號再次變?yōu)榈蜁r

,開始進(jìn)入下一幀的檢測。

以上就是異步通信中數(shù)據(jù)發(fā)送和接收的全過程了


1.3幾個概念

為了更好的理解串口通信

,我們還需要了解幾個串口通信當(dāng)中的基本概念

(1)發(fā)送時鐘:發(fā)送數(shù)據(jù)時

,首先將要發(fā)送的數(shù)據(jù)送入移位寄存器,然后在發(fā)送時鐘的控制下
,將該并行數(shù)據(jù)逐位移位輸出

(2)接收時鐘:在接收串行數(shù)據(jù)時

,接收時鐘的上升沿對接收數(shù)據(jù)采樣
,進(jìn)行數(shù)據(jù)位檢測,并將其移入接收器的移位寄存器中
,最后組成并行數(shù)據(jù)輸出

(3)波特率因子:波特率因子是指發(fā)送或接收1個數(shù)據(jù)位所需要的時鐘脈沖個

2.串口接頭

常用的串口接頭有兩種

,一種是9針串口(簡稱DB-9)
,一種是25針串口(簡稱DB-25)。每種接頭都有公頭和母頭之分
,其中帶針狀的接頭是公頭
,而帶孔狀的接頭是母頭.


3.RS-232C標(biāo)準(zhǔn)

常用的串行通信接口標(biāo)準(zhǔn)有RS-232C

、RS-422
、RS-423和RS-485。其中
,RS-232C作為串行通信接口的電氣標(biāo)準(zhǔn)定義了數(shù)據(jù)終端設(shè)備(DTE:data terminal equipment)和數(shù)據(jù)通信設(shè)備(DCE:data communication equipment)間按位串行傳輸?shù)慕涌谛畔ⅲ侠戆才帕私涌诘碾姎庑盘柡蜋C(jī)械要求
,在世界范圍內(nèi)得到了廣泛的應(yīng)用


3.1電氣特性

RS-232C對電器特性、邏輯電平和各種信號功能都做了規(guī)定

,如下:

在TXD和RXD數(shù)據(jù)線上:

(1)邏輯1為-3~-15V的電壓

(2)邏輯0為3~15V的電壓

在RTS

、CTS、DSR
、DTR和DCD等控制線上:

(1)信號有效(ON狀態(tài))為3~15V的電壓

(2)信號無效(OFF狀態(tài))為-3~-15V的電壓

由此可見,RS-232C是用正負(fù)電壓來表示邏輯狀態(tài)

,與晶體管-晶體管邏輯集成電路(TTL)以高低電平表示邏輯狀態(tài)的規(guī)定正好相反


3.2信號線分配

RS-232C標(biāo)準(zhǔn)接口有25條線,其中

,4條數(shù)據(jù)線
、11條控制線
、3條定時線以及7條備用和未定義線
。那么,這些信號線在9針串口和25針串口的管腳上是如何分配的呢

下面對這些信號線做個簡單的介紹

(1)數(shù)據(jù)裝置準(zhǔn)備好(DSR),有效狀態(tài)(ON)表示數(shù)據(jù)通信設(shè)備處于可以使用狀態(tài)

(2)數(shù)據(jù)終端準(zhǔn)備好(DTR),有效狀態(tài)(ON)表示數(shù)據(jù)終端設(shè)備處于可以使用狀態(tài)

這兩個設(shè)備狀態(tài)信號有效

,只表示設(shè)備本身可用
,并不說明通信鏈路可以開始進(jìn)行通信了
,能否開始進(jìn)行通信要由下面的一些控制信號決定

(3)請求發(fā)送(RTS)

,用來表示數(shù)據(jù)終端設(shè)備(DTE)請求數(shù)據(jù)通信設(shè)備(DCE)發(fā)送數(shù)據(jù)。

(4)允許發(fā)送(CTS)

,用來表示數(shù)據(jù)通信設(shè)備(DCE)已經(jīng)準(zhǔn)備好了數(shù)據(jù)
,可以向數(shù)據(jù)終端設(shè)備(DTE)發(fā)送數(shù)據(jù),是對請求發(fā)送信號RTS的響應(yīng)
。請求發(fā)送(RTS)和允許發(fā)送(CTS)用于半雙工的通信系統(tǒng)中,在全雙工的系統(tǒng)中
,不需要使用請求發(fā)送(RTS)和允許發(fā)送(CTS)信號
,直接將其置為ON即可。

(5)數(shù)據(jù)載波檢出(DCD)

,用于表示數(shù)據(jù)通信設(shè)備(DCE)已接通通信鏈路
,告知數(shù)據(jù)終端設(shè)備(DTE)準(zhǔn)備接收數(shù)據(jù)。

(6)振鈴指示(RI)

,當(dāng)數(shù)據(jù)通信設(shè)備收到交換臺送來的振鈴呼叫信號時
,使該信號有效(ON),通知終端
,已被呼叫

(7)發(fā)送數(shù)據(jù)(TXD),數(shù)據(jù)終端設(shè)備(DTE)通過該信號線將串行數(shù)據(jù)發(fā)送到數(shù)據(jù)通信設(shè)備(DCE)

(8)接收信號(RXD),數(shù)據(jù)終端設(shè)備(DTE)通過該信號線接收從數(shù)據(jù)通信設(shè)備(DCE)發(fā)來的串行數(shù)據(jù)

(9)地線(SG

、PG),分別表示信號地和保護(hù)地信號線


你覺得這篇文章怎么樣

0 0

推薦資訊

13227762296
  • PLC控制柜-電氣控制柜-變頻控制柜廠家-西安自動化控制系統(tǒng)工程

    微信號:13227762296微信二維碼