電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 1958|回復(fù): 0
收起左側(cè)

學(xué)嵌入式應(yīng)該學(xué)什么語(yǔ)言_多總線(xiàn)UART芯片在嵌入式系統(tǒng)中的應(yīng)用

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級(jí)會(huì)員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-8-3 11:12:57 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
學(xué)嵌入式應(yīng)該學(xué)什么語(yǔ)言_多總線(xiàn)UART芯片在嵌入式系統(tǒng)中的應(yīng)用,   

  

本文介紹了專(zhuān)為嵌入式系統(tǒng)設(shè)計(jì)的VK32系列新型多總線(xiàn)接口通用異步串行收發(fā)接器()器件的原理以及在稅控POS、遠(yuǎn)程自動(dòng)抄表系統(tǒng)、嵌入式車(chē)載信息平臺(tái)和串口服務(wù)器中的應(yīng)用技術(shù)。

產(chǎn)生于上個(gè)世紀(jì)70年代,是第一塊大規(guī)模集成電路。1981年的推出的IBMPC采用了8250與外設(shè)進(jìn)行數(shù)據(jù)通信,直到上個(gè)世紀(jì)末,UART一直是PC中最主要的串行通信接口。隨著高速串行總線(xiàn)USB的出現(xiàn),USB以其諸多的優(yōu)點(diǎn)取代了UART成為個(gè)人電腦中應(yīng)用最廣泛的串行接口。

而在嵌入式領(lǐng)域,由于UART具有操作簡(jiǎn)單、工作可靠、抗干擾強(qiáng)、傳輸距離遠(yuǎn)(組成485網(wǎng)絡(luò)可以傳輸1,200米以上),設(shè)計(jì)人員普遍認(rèn)為UART是從CPU或微控制器向系統(tǒng)的部分傳輸數(shù)據(jù)的最佳方式,因此它們被大量地應(yīng)用在工業(yè)、通信和家電控制等嵌入式領(lǐng)域。通常MCU/CPU都會(huì)自帶一個(gè)UART串口,但實(shí)際應(yīng)用中一個(gè)串口往往不夠用,需要進(jìn)行UART串口擴(kuò)展。

截止到目前,全球范圍內(nèi)有超過(guò)40種UART器件可以選擇,大多數(shù)UART器件是以計(jì)算機(jī)總線(xiàn)轉(zhuǎn)換UART為應(yīng)用基礎(chǔ)的,其通用性、管腳、寄存器與20年前很少改變。針對(duì)嵌入式應(yīng)用,目前的UART器件普遍存在操作復(fù)雜、引腳多、價(jià)格昂貴等弱點(diǎn),不能滿(mǎn)足和適應(yīng)的嵌入式系統(tǒng)的需要。

  

VK系列UART器件

維肯公司針對(duì)嵌入式系統(tǒng)中UART的發(fā)展趨勢(shì),設(shè)計(jì)推出了VK32xx系列新型多總線(xiàn)接口UART器件,其特點(diǎn)為:

1.支持8位并行總線(xiàn)、SPI總線(xiàn)、UART等多種主機(jī)總線(xiàn)接口。其中,8位并行總線(xiàn)接口產(chǎn)品可以替代目前廣泛使用的16C55x系列UART用于為8位、16位、32位MCU進(jìn)行UART串口擴(kuò)展。VK32系列8位并行總線(xiàn)接口UART產(chǎn)品采用了精簡(jiǎn)控制寄存器設(shè)計(jì),并通過(guò)管腳復(fù)用減少了芯片管腳,簡(jiǎn)化的軟件設(shè)計(jì)和設(shè)計(jì)都更適合嵌入式系統(tǒng)需求。

SPI接口總線(xiàn)系列產(chǎn)品為帶有SPI接口的DSP、MCU實(shí)現(xiàn)同步SPI串口到異步UART串口的橋接和擴(kuò)展,尤其針對(duì)目前廣泛應(yīng)用的DSP系統(tǒng),大多數(shù)DSP都只有同步串口,只能用于與具有同步通信接口的外設(shè)進(jìn)行通信。VK32系列SPI總線(xiàn)接口產(chǎn)品可以將一個(gè)SPI同步串行接口橋接/擴(kuò)展成為1~4個(gè)通用異步串口,方便實(shí)現(xiàn)DSP和外設(shè)的異步串行通信。

UART接口產(chǎn)品創(chuàng)新地實(shí)現(xiàn)了將一個(gè)標(biāo)準(zhǔn)3線(xiàn)UART擴(kuò)展成為2~4個(gè)增強(qiáng)功能UART。芯片內(nèi)置的UART擴(kuò)展協(xié)議處理邏輯,無(wú)需其它的地址信號(hào)和控制信號(hào)線(xiàn)就可以實(shí)現(xiàn)多個(gè)獨(dú)立配置的全雙工串口擴(kuò)展,為需要擴(kuò)展串口的嵌入式系統(tǒng)提供了一個(gè)最簡(jiǎn)潔的。

  

圖2:VK32系列產(chǎn)品在嵌入式稅控POS平臺(tái)設(shè)計(jì)中的應(yīng)用。

2.支持高速傳輸。每個(gè)子波特率可以獨(dú)立設(shè)置子串口最高通信速度可以達(dá)到920kbps(5V工作電壓),主機(jī)支持的SPI總線(xiàn)最高傳輸速率為4Mbps,主機(jī)8位并行總線(xiàn)的最高傳輸速率為10Mbps。

3.寬工作電壓和低功耗設(shè)計(jì)?紤]到目前嵌入式領(lǐng)域中新型的DSP/的工作電壓大多為2.5V,而大量的工業(yè)控制領(lǐng)域的MCU仍然需要在5V電壓下工作,VK32系列UART設(shè)計(jì)的工作電壓范圍為2.5V~5.5V。同時(shí),該系列芯片可以工作在自動(dòng)休眠和喚醒模式下,有效地降低功耗。

4.完善的功能。每個(gè)通道獨(dú)立的16級(jí)接收和發(fā)送,每個(gè)有4個(gè)可編程觸發(fā)點(diǎn)設(shè)置。完善的FIFO功能可以進(jìn)行發(fā)送/接收的數(shù)據(jù)緩沖,減少DSP/CPU對(duì)數(shù)據(jù)傳輸?shù)牟僮,提高CPU/DSP的效率和數(shù)據(jù)傳輸?shù)目煽啃浴?

5.子串口通道具備軟件或硬件自動(dòng)流量控制,滿(mǎn)足高速數(shù)據(jù)傳輸中流量控制的需要。

6.子串口具備可編程的硬件功能和自動(dòng)9位網(wǎng)絡(luò)地址識(shí)別功能,大大降低處理器的負(fù)擔(dān),尤其適用于工業(yè)組網(wǎng)。

7.每個(gè)通道具備獨(dú)立可控的數(shù)據(jù)廣播接收功能,可以應(yīng)用于需要數(shù)據(jù)廣播傳輸和控制的嵌入式系統(tǒng)中。

8.所有UART(包括UART主接口和子通道UART)都支持紅外通信。

VK系列UART器件的原理及框圖

VK3200是VK32系列中功能最全的型號(hào),本文以VK3200的原理圖為基礎(chǔ),對(duì)VK32系列UART芯片原理進(jìn)行介紹。VK3200內(nèi)部結(jié)構(gòu)包括主機(jī)接口、子通道部分、控制邏輯、中斷控制邏輯幾部分。主機(jī)接口為VK3200與CPU/DSP相連的接口,通過(guò)M1、MO模式選擇信號(hào)線(xiàn),可以分別選擇8位并行總線(xiàn)、SPI總線(xiàn)和UART三種接口與主機(jī)相連;控制邏輯用于與相連時(shí)的狀態(tài)信號(hào)線(xiàn)的監(jiān)控和控制;中斷控制邏輯用于產(chǎn)生和控制各種內(nèi)部中斷。

  

圖3:VK32系列產(chǎn)品在遠(yuǎn)程自動(dòng)抄表系統(tǒng)設(shè)計(jì)中的應(yīng)用。

時(shí)鐘發(fā)生器為芯片提供時(shí)鐘,可以用CLKSEL引線(xiàn)選擇從晶振還是外部時(shí)鐘源獲取時(shí)鐘。子通道邏輯部分處理各個(gè)的數(shù)據(jù)接收和發(fā)送。數(shù)據(jù)發(fā)送的處理過(guò)程為:主機(jī)接口將從主口總線(xiàn)發(fā)送來(lái)的數(shù)據(jù)進(jìn)行處理后傳送到相應(yīng)的子通道FIFO,F(xiàn)IFO里的數(shù)據(jù)經(jīng)過(guò)流量控制邏輯后,在波特率發(fā)生器的作用下,通過(guò)發(fā)送移位寄存器順次將數(shù)據(jù)發(fā)送到TX串行輸出信號(hào)線(xiàn)上,接收數(shù)據(jù)與此正好相反。子通道處理模塊中,控制寄存器用于對(duì)各個(gè)子通道進(jìn)行設(shè)置,IR編解碼器用于對(duì)紅外信號(hào)進(jìn)行編解碼,子通道流量控制器用于子通道傳輸數(shù)據(jù)時(shí)的自動(dòng)流量控制。

在嵌入式系統(tǒng)中的應(yīng)用

VK系列UART器件的在嵌入式產(chǎn)品中的應(yīng)用領(lǐng)域包括:多串口服務(wù)器/多串口卡,工業(yè)/自動(dòng)化現(xiàn)場(chǎng)控制,使用/GPRSMODEM的無(wú)線(xiàn)數(shù)據(jù)傳輸,車(chē)載信息平臺(tái)/車(chē)載定位系統(tǒng),遠(yuǎn)傳自動(dòng)抄表(AMR)系統(tǒng),稅控POS/銀行終端等金融機(jī)具,DSP數(shù)據(jù)采集和等。其應(yīng)用實(shí)例如下:

1.在稅控POS中的應(yīng)用

稅控POS機(jī)是一個(gè)控制密集形的嵌入式系統(tǒng),需要控制大量外設(shè)。其基本配置要求的串口打印機(jī)、MODEM、RS-485網(wǎng)絡(luò)接口,以及稅控IC卡(異步卡)都工作在基于UART的串行通信方式。同時(shí),大量的外設(shè)如密碼鍵盤(pán)、條碼掃描器、條碼稱(chēng)、接觸IC卡/非接觸IC卡、磁卡、串口等設(shè)備都是通過(guò)串口與POS機(jī)相連。

采用VK32xx系列UART器件可以根據(jù)MCU/CPU的接口特性,選擇SPI/8位并行總線(xiàn)/UART進(jìn)行靈活的UART串口擴(kuò)展。該方案與采用目前GPIO來(lái)模擬串口的方案相比,占用CPU的I/O和資源都很少,即使普通的8位MCU也可以勝任。同時(shí),擴(kuò)展的子串口都是標(biāo)準(zhǔn)的硬件UART,使得數(shù)據(jù)傳輸也更加可靠。

  

圖4:VK3233在嵌入式車(chē)載信息平臺(tái)設(shè)計(jì)中的應(yīng)用。

2.在遠(yuǎn)程自動(dòng)抄表系統(tǒng)中的應(yīng)用

如圖3所示,遠(yuǎn)傳自動(dòng)抄表系統(tǒng)由遠(yuǎn)傳表和集中抄表器以及MODEM等部分組成。

在遠(yuǎn)傳表中,應(yīng)用VK3212雙串口擴(kuò)展IC將的一個(gè)UART擴(kuò)展成兩個(gè)UART,擴(kuò)展出來(lái)的兩個(gè)串口UART1和UART2分別接RS-485/M-BUS接口和紅外接口。VK3212的UART1設(shè)置為RS-485自動(dòng)收發(fā)和RS-485網(wǎng)絡(luò)模式,可以無(wú)需MCU的控制,自動(dòng)完成RS-485/M-BUS的數(shù)據(jù)自動(dòng)收發(fā)和自動(dòng)網(wǎng)絡(luò)地址識(shí)別。VK3212的UART2設(shè)置為紅外模式,用于連接遠(yuǎn)傳表的紅外設(shè)置窗口。

在集中抄表器中,用一片SPI接口的4通道UART器件VK3234將擴(kuò)展出4個(gè)子串口UART,MCU通過(guò)SPI總線(xiàn)與VK3234相連。VK3234的子串口UART設(shè)置為RS-485自動(dòng)收發(fā)模式,每個(gè)子通道UART控制的RS-485/MBUS收發(fā)器通過(guò)RS-485/M-BUS總線(xiàn)連接最多250個(gè)遠(yuǎn)傳表。一個(gè)基于VK3234的集中抄表器可以實(shí)現(xiàn)最多1,000個(gè)遠(yuǎn)傳表的數(shù)據(jù)讀取。

由于是通過(guò)SPI接口擴(kuò)展的串口,集中抄表器自身的串口可以連接/將集抄數(shù)據(jù)傳給遠(yuǎn)程服務(wù)器。

3.在嵌入式車(chē)載信息平臺(tái)中的應(yīng)用

VK3233主接口有SPI和UART兩種接口可以選擇。嵌入式平臺(tái)中的DSP/CPU通過(guò)SPI/UART接口與VK3233相連,VK3233擴(kuò)展出來(lái)的三個(gè)子串口分別連接模塊、倒車(chē)?yán)走_(dá)模塊和GSM/模塊,MODEM控制線(xiàn)連接GSM/MODEM。整個(gè)嵌入式系統(tǒng)共用一個(gè)顯示設(shè)備,有效地節(jié)省了車(chē)內(nèi)有限的空間。

4.在串口服務(wù)器中的應(yīng)用

在工業(yè)控制等領(lǐng)域,眾多設(shè)備的對(duì)外通訊接口仍然是低速串口。串口服務(wù)器將多個(gè)串口設(shè)備的數(shù)據(jù)存儲(chǔ)、轉(zhuǎn)換以后通過(guò)IP網(wǎng)進(jìn)行傳輸。

圖5顯示了一個(gè)8串口服務(wù)器(4個(gè)串口、4個(gè)串口)的電路原理圖,嵌入式系統(tǒng)中的DSP/CPU的并行位數(shù)據(jù)線(xiàn)連接2片VK3266實(shí)現(xiàn)了8個(gè)串口的擴(kuò)展,通過(guò)地址譯碼器控制2片VK3266的CS實(shí)現(xiàn)片選控制。在上圖中,VK3266A連接4個(gè)收發(fā)器,擴(kuò)展出了4個(gè)帶硬件流量控制信號(hào)的RS-232串口;VK3266B則連接了4個(gè)RS-485收發(fā)器,將VK3266設(shè)置在RS-458自動(dòng)收發(fā)控制模式下,通過(guò)RTS信號(hào)控制RS-485收發(fā)器的數(shù)據(jù)發(fā)送使能DE和數(shù)據(jù)讀取使能RD信號(hào),能實(shí)現(xiàn)RS-485的自動(dòng)收發(fā)控制。

  

圖5:VK3266在串口服務(wù)器設(shè)計(jì)中的應(yīng)用。

選型參考和設(shè)計(jì)建議

1.選型參考

VK32系列UART包括5個(gè)產(chǎn)品系列,各個(gè)產(chǎn)品系列的特點(diǎn)如下:

VK321x系列為主接口為UART的產(chǎn)品,僅通過(guò)RX,TX和GND三根信號(hào)線(xiàn)與主機(jī)相連,通過(guò)芯片內(nèi)部的處理協(xié)議采用時(shí)分復(fù)用的方式將一個(gè)串口擴(kuò)展成為2~4個(gè)可以同時(shí)工作的全雙工串口。在該模式下,MCU以查詢(xún)方式操作UART器件,設(shè)計(jì)中需要注意的是為保證在時(shí)分復(fù)用下各個(gè)子通道能夠同時(shí)全雙工通信,主接口的波特率需要設(shè)置為大于各個(gè)子串口波特率之和。VK321x產(chǎn)品適用于對(duì)通信速度要求不高,需要設(shè)計(jì)可靠簡(jiǎn)單的嵌入式產(chǎn)品。

VK322x系列產(chǎn)品的主接口為SPI同步傳行總線(xiàn),最高傳輸速度為4Mbps。適合于帶SPI接口的MCU/DSP擴(kuò)展異步串口。大多數(shù)DSP都只有同步串口,通過(guò)SPI接口實(shí)現(xiàn)異步串口的橋接和擴(kuò)展,可以簡(jiǎn)化并行總線(xiàn)擴(kuò)展串口的硬件規(guī)模和模擬異步串口的軟件開(kāi)銷(xiāo)。

VK323x系列產(chǎn)品同時(shí)具備SPI和UART兩種可以選擇的主接口,擴(kuò)展子串口具備硬件流量控制和RS-485自動(dòng)收發(fā)功能,尤其適合于需要高可靠數(shù)據(jù)傳輸?shù)腞S-485總線(xiàn)應(yīng)用。

VK325x產(chǎn)品為8位并行總線(xiàn)接口的UART器件,VK326x為同時(shí)具備3種可選主機(jī)接口的UART器件。這兩個(gè)器件應(yīng)用于需要減少備貨種類(lèi),需要進(jìn)行大量數(shù)據(jù)傳輸?shù)膽?yīng)用。

2.設(shè)計(jì)建議

異步IC卡的接口設(shè)計(jì)。遵從7816-3的異步IC卡為半雙工異步通信接口。在實(shí)際應(yīng)用中,可以將子串口的RX和TX短接后直接與IC卡的I/O信號(hào)連接,為可靠起見(jiàn),也可以通過(guò)連接7407來(lái)驅(qū)動(dòng)IC卡的I/O信號(hào)。

MODEM接口的設(shè)計(jì)。目前的/GPRS/CDMA/支持三線(xiàn)串口(TX、RX、GND)通過(guò)AT命令操作。但實(shí)際應(yīng)用中,僅僅使用三線(xiàn)串口容易丟包,造成數(shù)據(jù)重發(fā),使得上傳速度變慢,建議使用VK32系列中帶MODEM接口的UART器件,用DSR、DTR、RI和DCD來(lái)監(jiān)控MODEM狀態(tài),用RTS和CTS來(lái)做流控,這樣速度可以達(dá)到最高。

RS-485總線(xiàn)的設(shè)計(jì)。RS-485是目前工業(yè)領(lǐng)域應(yīng)用最廣的半雙工通信系統(tǒng)。直接用MCU對(duì)RX485進(jìn)行控制,有一些細(xì)節(jié)難于處理:通過(guò)MCU的I/O對(duì)485收發(fā)控制,在系統(tǒng)復(fù)位時(shí),I/O可能使485收發(fā)器處在發(fā)送狀態(tài),造成總線(xiàn)上正在進(jìn)行的通信失效;在數(shù)據(jù)收發(fā)切換中,一般依靠發(fā)送緩沖的狀態(tài)來(lái)控制MCU的I/O對(duì)收發(fā)切換,而此時(shí)最后一個(gè)字節(jié)可能還在移位寄存器中,會(huì)造成少發(fā)送一個(gè)字節(jié)的情況;同時(shí),當(dāng)總線(xiàn)上有大量數(shù)據(jù)進(jìn)行傳送時(shí),MCU不得不花大量的資源去判斷該數(shù)據(jù)是否是發(fā)送給本機(jī)的,造成工作效率低。針對(duì)這些問(wèn)題,建議用戶(hù)在需要用到RS-485時(shí),選用帶有RS-485自動(dòng)收發(fā)控制和9位網(wǎng)絡(luò)自動(dòng)識(shí)別的器件。

VK32系列UART器件可以工作在自動(dòng)RS-485模式下:復(fù)位時(shí),RTS處于接收狀態(tài),只有在數(shù)據(jù)發(fā)送時(shí),RTS才工作在發(fā)送狀態(tài),當(dāng)最后一位數(shù)據(jù)從移位寄存器中發(fā)送完成后,RTS自動(dòng)轉(zhuǎn)為接收狀態(tài)。同時(shí),VK32系列的UART支持9位網(wǎng)絡(luò)地址自動(dòng)識(shí)別,僅當(dāng)RS-485總線(xiàn)上的地址與UART設(shè)定的RS-485網(wǎng)絡(luò)地址一致時(shí),才產(chǎn)生中斷,可以使MCU從大量的與自己無(wú)關(guān)的數(shù)據(jù)處理中解脫出來(lái),提高系統(tǒng)的處理能力。

無(wú)鉛化是半導(dǎo)體行業(yè)勢(shì)不可擋的趨勢(shì),VK32系列UART產(chǎn)品全部實(shí)現(xiàn)無(wú)鉛化封裝,在回流焊時(shí)需要注意焊接溫度滿(mǎn)足相應(yīng)的溫度要求。

發(fā)表回復(fù)

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表