基于CPLD的異步串行通訊控制器的研究與設(shè)計(jì)
串行通信實(shí)際上就是兩臺(tái)電子設(shè)備之間一位一位地發(fā)送和接收數(shù)據(jù),它分為同步通信和異步通信兩類。異步串行通信無(wú)需數(shù)據(jù)時(shí)鐘、幀同步時(shí)鐘等時(shí)鐘信號(hào),數(shù)據(jù)的發(fā)送和接收是自同步的,完全依靠收發(fā)雙方約定的傳輸波特率和數(shù)據(jù)線自身的電平變化來(lái)正確地收發(fā)數(shù)據(jù)位流,而且又因?yàn)樗B線簡(jiǎn)單,可以直接與PC機(jī)等帶異步串口的設(shè)備相連,同時(shí)它又采用RS 232電平,傳輸?shù)木嚯x要比同步通信的長(zhǎng)。正因?yàn)橛猩鲜龅膬?yōu)點(diǎn),異步串行通信被廣泛應(yīng)用在要進(jìn)行遠(yuǎn)距離遙測(cè)遙控的航天電子工程中。
但是,一般的處理器芯片都帶有同步串行接口,只有少數(shù)韻處理器,如TMS320F2XX、TMS320F24XX帶有速度相對(duì)較低的異步串口。為了實(shí)現(xiàn)那些沒(méi)有帶有異步串行接口的處理器能夠與其他設(shè)備進(jìn)行異步串行通信,可以采用復(fù)雜可編程邏輯器件CPLD技術(shù),并結(jié)合異步串行通信的協(xié)議,對(duì)異步串行通信接口電路進(jìn)行設(shè)計(jì)與實(shí)現(xiàn),該方法開(kāi)發(fā)周期短,并且CPLD的時(shí)序嚴(yán)格,速度較快,可編程性好,還可以用于完成電子系統(tǒng)的其他邏輯功能的設(shè)計(jì),如實(shí)現(xiàn)系統(tǒng)的譯碼和專門的緩沖電路。這樣一塊電路板上的外圍元器件數(shù)量就大大減少,系統(tǒng)的靈活性更好,調(diào)試也變得簡(jiǎn)單的多了,同時(shí),系統(tǒng)的功能模塊完成后可以先通過(guò)計(jì)算機(jī)進(jìn)行仿真,再實(shí)際投入使用,降低了使用風(fēng)險(xiǎn)性。
2異步串行通信的原理
異步串行通信方式是把一個(gè)字符看作一個(gè)獨(dú)立的信息單元,并且字符出現(xiàn)在數(shù)據(jù)流中的相對(duì)時(shí)間是任意的,而每一個(gè)字符中的各位是以固定的時(shí)間傳送。因此這種方式在同一字符內(nèi)部是同步的,而字符間是異步的。
異步通信的主要特點(diǎn)是字符幀的傳輸格式,這樣就使得發(fā)送方可以在字符之間可根據(jù)實(shí)際的需要插入不同的時(shí)間問(wèn)隔,即每一個(gè)字符的發(fā)送是隨機(jī)的。異步串行通信是以數(shù)據(jù)幀的格式傳送的,1個(gè)字符開(kāi)始傳輸前,輸出線必須在邏輯上處于‘1’狀態(tài),這稱為標(biāo)識(shí)態(tài)。傳輸一開(kāi)始,輸出線由標(biāo)識(shí)態(tài)變?yōu)椤?’狀態(tài),從而作為起始位。起始位后面為5~8個(gè)信息位,信息位由低到高排列,即第1位為字符的最低位,在同一傳輸系統(tǒng)中,信息位的數(shù)目是固定的。信息位后面為校驗(yàn)位,校驗(yàn)位可以按奇校驗(yàn)設(shè)置,也可以按偶校驗(yàn)設(shè)置,不過(guò),校驗(yàn)位也可以不設(shè)置。最后的數(shù)位為‘1’,它作為停止位,停止位可為1位、1.5位或者2位。如果傳輸完1個(gè)字符以后,立即傳輸下一個(gè)字符,那么,后一個(gè)字符的起始位便緊挨著前一個(gè)字符的停止位了,否則,輸出線又會(huì)立即進(jìn)入標(biāo)識(shí)態(tài),即邏輯上處于‘1’。圖1是兩個(gè)字節(jié)0XA0和0X67被傳輸?shù)膸母袷健?br />
在通信中發(fā)送方和接收方之間允許沒(méi)有共同的時(shí)鐘,所以在異步通信中,收發(fā)雙方取得同步的方法是采用在字符格式中設(shè)置起始位和停止位的辦法。每一個(gè)字符傳輸前,信號(hào)線上始終為高電平,一旦開(kāi)始傳送就要先傳送一個(gè)低電平的起始位,這樣接收方就開(kāi)始接收數(shù)據(jù),從而與發(fā)送方保持同步(格式上的同步)。通信雙方可按使用需要隨時(shí)改變通信協(xié)議,即改變數(shù)據(jù)位、奇偶校驗(yàn)位和停止位長(zhǎng)度和數(shù)據(jù)傳輸率。
評(píng)論