<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è) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基于73M2901的遠程數據傳輸系統

基于73M2901的遠程數據傳輸系統

——
作者:哈爾濱工程大學(xué) 張曉峻 孫晶華 時(shí)間:2007-03-08 來(lái)源:?jiǎn)纹瑱C與嵌入式系統應用 收藏

引言

傳輸系統應用廣泛,尤其是在一些特殊的應用場(chǎng)合,監測或者控制對象由于距離較遠或者現場(chǎng)比較危險,只能把采集的數據傳輸到遠離現場(chǎng)的地方進(jìn)行分析處理,因此需要一種可以進(jìn)行傳輸的嵌入式系統,以便能夠實(shí)現在遠處對工作系統的監視、控制和故障排除,避免惡劣的環(huán)境對身體造成損害,本系統是通信電纜健康狀況檢測系統的一部分,將通信電纜的工作狀況遠程傳輸,從先實(shí)現異地監測,本文提出了一種體積小、重量輕、成本低、實(shí)施方便,基于LPC2132芯片的,以電話(huà)線(xiàn)為數據傳輸媒質(zhì)的嵌入式應用系統,從硬件和軟件方面對系統的設計進(jìn)行了詳細說(shuō)明,并給出具體實(shí)現方法。

1 硬件設計

1.1 系統原理


如圖1所示,傳輸系統由主控LPC2132、Modem芯片、RS232串口轉換電路組成,LPC2132通過(guò)UART0接收通信電纜數據采集儀的數據,進(jìn)行CRC校驗后通過(guò)UART1發(fā)給Modem,LPC2132是Philips公司基于32/16位ARM7TDMI-S內核[1]開(kāi)發(fā)的微控制器,由于LPC2132內嵌64KB的高速Flash存儲器和16KB片內靜態(tài)RAM,具有2個(gè)符合16C550工業(yè)標準的串行接口,且其中一個(gè)包含標準的調制解調器接口信號,因此非常適合用來(lái)控制Modem芯片進(jìn)行遠程數據傳輸,是TDK公司推出的低功耗、低速、單片機調制解調器[2],具有很高的集成度,與LPC2132一起可以構成一個(gè)輕便小巧的嵌入式遠程終端。


1.2 芯片簡(jiǎn)介

73M2901內置標準的8032微處理器和1個(gè)協(xié)處理器,因此在處理復雜信號的同時(shí)還可以實(shí)現多種控制功能,其數據終端采用異步串行傳輸方式,最多可以支持2400bps個(gè)雙工數據傳送,此外,還支持AT指令集,其主要引腳功能[3]如表1所列。

1、數據終端接口:主要功能是完成數據終端設備(DTE)與調制解調器之間的連接,73M2901芯片提供的串行數據終端接口包括TXD、RXD、RTS、CTS、DSR、DCD、TXCLK、RXCLK等。

2、調制解調部件:核心是調制解調芯片。Modem的絕大多數功能都是由這片大規模集成電路來(lái)實(shí)現的,包括調制解調過(guò)程,擾碼解擾碼過(guò)程,信道分割、線(xiàn)路均衡和指示工作狀態(tài)等。

3、模擬終端接口,包括撥號脈沖電路、振鈴檢測電路和音頻信號通道3部分,通過(guò)這部分電路可以將Modem與通信信道連接起來(lái)。

撥號脈沖電路,摘掛機信號由73M2901/5V的RELAY引腳給出,完成摘掛機動(dòng)作,當RELAY發(fā)出高電平時(shí)為掛機,發(fā)出低電平時(shí)為摘機。

振鈴檢測電路,用于檢測電話(huà)線(xiàn)送來(lái)的振鈴信號,當信道內沒(méi)有振鈴信號時(shí),73M2901的RING端為無(wú)效的高電平,當振鈴信號來(lái)到時(shí),RING變?yōu)橛行У牡碗娖?,完成振鈴檢測。

音頻信號通道,模擬信號發(fā)送端是73M2901/5V芯片的TXAN和TRAP引腳,提供差分信號輸出,73M2901/5V還提供一個(gè)輸入引腳RXA,RXA端是非平衡的模擬輸入端口,接收的音頻信號為單端對地的模擬信號。

模擬接口電路主要功能如下:

調制解調器內部不平衡電路與平衡型通信信道之間的轉換;

調制解調器內部四線(xiàn)電路與二線(xiàn)通信信道之間的轉換;

識別通信信道傳來(lái)的交流振鈴信號,并將其轉換成TTL直流電平;

撥號時(shí)能發(fā)出符合規定的脈沖串或雙音多頻信號。

1.3 UART1 串口傳輸

本系統直接將73M2901連接到LPC2132的UART1串口上,進(jìn)行數據傳輸工作,接口結構如圖2所示,UART1的引腳功能描述如表2所示。


假設LPC2132對儀器發(fā)送過(guò)來(lái)的數據進(jìn)行校驗之后,要通過(guò)73M2901向遠程計算機發(fā)送,LPC2132和73M2901作為主叫端,遠程計算機和標準Modem作為被叫端,則數據發(fā)送過(guò)程為:

1、系統初始化,使數據終端就緒信號DTR有效,然后LPC2132向73M2901發(fā)出撥號指令。73M2901收到撥號指令后向被叫端Modem發(fā)出撥號音,使被叫端Modem振鈴,振鈴次數達到軟件設置的次數時(shí),Modem將自動(dòng)應答,進(jìn)入摘機狀態(tài)。

2、被叫端摘機后一邊向主叫端發(fā)送應答載波,一邊向本端計算機發(fā)出DSR信號,然后被叫端計算機便開(kāi)始監視DCD信號,等待對方載波信號的到來(lái),主叫端73M2901檢測到應答載波以后向LPC2132發(fā)出DCD信號,標志著(zhù)呼叫成功。

3、呼叫成功后,主叫端73M2901向LPC2132發(fā)出DSR信號,LPC2132收到該信號后,得知線(xiàn)路連接已完全建立,即向73M2901發(fā)出RTS信號,73M2901將向被叫端發(fā)出載波并回送CTS信號,當主叫端LPC2132收到CTS信號以后,表示握手成功。

4、被叫端Modem檢測到主叫端發(fā)來(lái)的載波信號后就發(fā)出DCD信號,通知被叫端計算機數據鏈路已經(jīng)建立。

5、數據鏈路建立以后,LPC2132便可以向計算機傳送數據。

6、LPC2132在數據傳送完畢后向73M2901發(fā)出掛機命令,并發(fā)出無(wú)效的RTS信號,73M2901立即停發(fā)載波,并回送無(wú)效的CTS信號,被叫端Modem因收不到主叫端發(fā)來(lái)的載波信號而使DCD信號無(wú)效,計算機即向Modem發(fā)出掛機指令,Modem掛機后DSR信號無(wú)效,應答載波停發(fā)。主叫端73M2901因不發(fā)載波又收不到載波而使DCD、DSR信號無(wú)效,至此,數據鏈路拆除,系統處于待機狀態(tài),等待LPC2132再次要求建立連接。

2 系統軟件設計

2.1 通信模塊


本系統軟件基于μC/OS-II[4-5]平臺實(shí)現,采用ADS1.2集成開(kāi)發(fā)環(huán)境調試,整個(gè)軟件系統分為2個(gè)任務(wù),包括4個(gè)模塊,數據隊列模塊、UART0的串口接收模塊、CRC校驗模塊和UART1的Modem通信模塊,系統主程序流程如圖3所示,系統的各個(gè)任務(wù)由μC/OS-II核統一協(xié)調分配CPU資源。

在收發(fā)數據時(shí),為了平衡通信電纜數據采集儀,LPC2132和73M2901三者間的傳輸速率,本程序使用數據隊列作為數據緩存,數據隊列采用先入先出(FIFO)的方式,其空間大小在項目中的config.h文件中定義。數據空間的地址唯一,且只對應一個(gè)數據隊列,數據隊列子程序(queue.c)定義了6個(gè)函數,分別為:QueueCreate,建立數據隊列;QueueRead,獲取隊列中的數據,Queuewritn,FIFO方式發(fā)送數據,QueueFlush,清空隊列;QueueNData,獲取隊列中數據數目;QueueSize,獲取隊列空間容量。

由于LPC2132是通過(guò)73M2901向遠程設備發(fā)送數據的,因此只需要編寫(xiě)Modem發(fā)送子程序,Modem通信子程序包括8個(gè)函數,分別為:UART1Init,初始化UART1;UART1_Exception,UART1中斷服務(wù)程序;GeTModemState,獲取Modem的狀態(tài);ModemInit,初始化Modem,ModemWrite,通過(guò)Modem發(fā)送多個(gè)字節數據,ModemCommand,發(fā)送Modem命令,ModemDia1Up,通過(guò)Modem撥號;ModemDia1Down,掛斷Modem。系統啟動(dòng)時(shí)需要對UART1進(jìn)行向量中斷初始化,即在工程的target.c文件中編寫(xiě)初始化程序。

LPC2132通過(guò)UART1發(fā)送AT指令控制Modem的工作狀態(tài),然后向Modem發(fā)送數據。UART1的具體工作方式為:發(fā)送信號量初始值設為發(fā)送緩沖的大小,并且關(guān)閉發(fā)送中斷。發(fā)送數據時(shí),用戶(hù)任務(wù)在信號量上等待,如果發(fā)送緩沖未滿(mǎn),則用戶(hù)任務(wù)向發(fā)送緩沖中寫(xiě)入數據,如果寫(xiě)入的是發(fā)送緩沖中的第一個(gè)字節,則允許發(fā)送中斷,然而從發(fā)送緩沖中取出最早寫(xiě)入的字節輸出至UART1,這個(gè)操作又觸發(fā)了下一次的發(fā)送中斷,如此循環(huán)直到發(fā)送緩沖中最后一個(gè)字節被取走,重新關(guān)閉發(fā)送中斷,在向UART1輸出的同時(shí),給信號量發(fā)信號,發(fā)送任務(wù)據此信號量計數值來(lái)了解發(fā)送緩沖中是否有空間,數據發(fā)送流程圖如圖4所示。

2.2 CRC校驗模塊[6]

信號在物理信號中傳輸時(shí),線(xiàn)路本身電器特性造成的隨機噪聲、信號幅度的衰減、頻率和相位的畸變、相鄰線(xiàn)路的串擾以及各種外界因素(開(kāi)關(guān)的跳線(xiàn)、外界強電流磁場(chǎng)的變化和電源的波動(dòng)等)都會(huì )造成信號的失真。在數據通信中,將會(huì )使接收端收到的二進(jìn)制數位和發(fā)送端實(shí)際發(fā)送的二進(jìn)制數位不一致,從而造成由"0"變成"1"或由"1"變成"0"的差錯。為了把差錯限制在盡可能小的范圍內,在數據的遠程傳送中,廣泛采用循環(huán)冗余校驗碼(CRC),其編碼簡(jiǎn)單,誤判率很低,檢錯能力強,占用系統資源少,用軟硬件方式均能實(shí)現給信息碼加上幾位校驗碼的方式來(lái)增大整個(gè)編碼系統的碼距,增強差錯糾錯能力。

2.3 μC/OS-II在LPC2132上的移植

所謂"移植",就是使一個(gè)實(shí)時(shí)內核能在其他的微處理器或微控制器上運行,要使同一個(gè)內核能適用于不同的硬件體系,就要在內核和硬件之間有一個(gè)中間層,即與處理器相關(guān)的移植代碼,這部分代碼因處理器而異,大部分μC/OS-II的代碼是用C語(yǔ)言編寫(xiě)的,因此μC/OS-II的可移植性強,然而,仍需要用匯編語(yǔ)言編寫(xiě)一些與處理器硬件相關(guān)的代碼,這是因為實(shí)現μC/OS-II讀/寫(xiě)處理器寄存器時(shí)只能通過(guò)匯編語(yǔ)言來(lái)實(shí)現,在μC/OS-II中,這部分代碼分成3個(gè)文件,OS_CPU.H、OS_CPU_A.ASM和OS_CPU_C.C。因此,把μC/OS-II移植到LPC2132中時(shí)需要對上述3個(gè)文件進(jìn)行部分修改。

結語(yǔ)

LPC2132硬件資源豐富,使得該系統具有體積小,重量輕、成本低等特點(diǎn),采用了CRC校驗,從而提高了通信的差錯糾錯能力,此外,基于μC/OS-II平臺實(shí)現軟件功能,使得該系統運行穩定,維護方便,升級簡(jiǎn)單。



評論


相關(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>