《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DSP的嵌入式以太網接口轉換器
基于DSP的嵌入式以太網接口轉換器
摘要: 許多測量和控制設備都是通過串口與其他設備通信,使設備間的數據交互和遠程控制受到限制。如果能把串口的數據轉換成網絡數據格式,組建一個局域網(LAN)來進行數據的交互與傳輸,則上述的限制將得到有效的改進。考慮到以太網組網技術的易于理解、實現、管理和維護,且成本低廉、網絡拓撲結構靈活的優點,應用以太網組網技術來搭建數據交互的平臺。其中的關鍵就是接口轉換器的實現。
Abstract:
Key words :

  引言

 

  許多測量和控制設備都是通過串口與其他設備通信,使設備間的數據交互和遠程控制受到限制。如果能把串口的數據轉換成網絡數據格式,組建一個局域網(LAN)來進行數據的交互與傳輸,則上述的限制將得到有效的改進。考慮到以太網組網技術的易于理解、實現、管理和維護,且成本低廉、網絡拓撲結構靈活的優點,應用以太網組網技術來搭建數據交互的平臺。其中的關鍵就是接口轉換器的實現。

  DSP芯片作為一種特殊的嵌入式微處理器系統,具有嵌入的協處理器和用于快速數據處理的并行數據通道,而且DSP在語音圖像信號處理方面也具有強大功能。在嵌入式網絡設備中引入DSP技術,可以使嵌入式以太網變得更快,成本更低,也更容易進行功能擴充,因此選用DSP芯片作為接口轉換器的微控制器。

  為提高網絡通信效率,可以采用自定義的從數據鏈路層到應用層的網絡通信協議,以適應特定場合應用的需要;如果需要,還可以編寫一個自定義協議和TCP/IP互譯的網關軟件,實現嵌入式網絡和Internet的連接。

  本文介紹的接口轉換器解決了車內的數字式語音通信系統的接口轉換問題。

  1 接口轉換器的硬件設計

  在設計一個嵌入式系統時,不但要考慮系統所要具備的功能,同時還要考慮價格、體積等因素。TMS320C3X[1]系列芯片是TI公司推出的浮點運算DSP芯片。由于其較高的性價比,TMS320C3X的應用極其廣泛;由于將浮點運算與定點運算結合起來,具有更高的精度,并且不必考慮運算的溢出問題,因此浮點DSP具有更高的性能,更容易在系統的處理器上實現高級語言[2]。TMS320C32是TMS320系列浮點數字信號處理器的新產品,在TMS320C30和TMS320C31的基礎上進行了簡化和改進。在結構上的改進主要包括:可變寬度的存儲器接口、更短的指令周期時間、可設置優先級的雙通道DMA處理器、靈活的引導程序裝入方式、可重新定位的中斷向量表以及可選的邊緣/電平觸發中斷方式等。對TMS320C32的開發可以用匯編語言,也可以用C語言。使用匯編語言的優點在于,運行速度快,可以充分利用芯片的硬件特性;但開發速度較慢,程序的可讀性差。使用C語言的優勢在于,編程容易、調試速度快、可讀性好,可以大大縮短開發周期;但C語言對于其片內沒有映射地址的特殊功能寄存器不能操作,如IF和IE、AR0~AR7等。

  以太網接口芯片采用CS8900A[3]。該芯片是Cirrus Logic公司生產的一種局域網信號處理芯片,內部集成了片上RAM,其模擬前端包括曼徹斯特編解碼器、時鐘恢復電路、10BASE2T收發器和濾波器及一個AUI(Attachment Unit Interface)接口。CS8900A的MAC(Medium Access Control,媒體訪問控制)引擎負責以太網數據幀的發送和接收、檢測和處理沖突,生成和檢測幀引導頭(Preamble),自動生成和校驗CRC(Cyclical Redundancy Check,循環冗余校驗)碼。芯片在網絡物理層符合IEEE 802.3以太網標準,支持全雙工操作,是嵌入式平臺實現10 Mbps以太網連接的很好的選擇方案。

  接口轉換器的硬件框圖如圖1所示。DSP作為整個硬件模塊的CPU,SRAM用作外部數據存儲器,Flash用于存儲程序,CPLD或FPGA用于擴展DSP的對外接口控制。虛線框是可擴展的模塊。

接口轉換器的硬件框圖

  2 TMS320VC32與CS8900A的連接方法

  CS8900A的20位地址線與TMS320VC32地址線低20位相連;CS8900A的16位數據線與TMS320VC32數據線低16位相連;數據總線高位使能端由A0控制。通過一片CPLD擴展TMS320VC32的外部控制功能,控制CS8900A的中斷請求、復位和讀寫操作。TMS320VC32與CS8900A連接關系如圖2所示。

TMS320VC32與CS8900A連接關系

  設置以太網接口芯片CS8900A工作于I/O模式。通過對芯片各寄存器的操作可設置網絡終端接口電路的功能和讀取狀態信息。

  CS8900A的主要寄存器有:

  LineCTL 決定CS8900A的基本配置和物理接口,設置初始值為00D3H,選擇物理接口為10BASE2T。

  RxCTL 控制CS8900A接收特定的數據報,設置RxTCL的初始值為0D05H,接收網絡上的廣播或目標地址與本地物理地址相同的正確數據報。

  RxCFG 控制CS8900A接收到特定數據報后會引發接收中斷,RxCFG可設置為0103H,收到正確數據報時產生接收中斷。

  BusCTL 控制芯片的I/O接口操作,設置初始值為8017H,打開CS8900A的中斷總控制位。

  ISQ 中斷狀態寄存器。內部映射接收狀態寄存器和發送中斷寄存器內容。

  Port0 發送和接收數據時,CPU通過Port0傳輸數據。

  TxCMD 發送控制寄存器。如果寫入數據00C0H,那么網卡芯片在全部數據寫入后開始發送數據。

  TxLength 發送數據長度寄存器。發送數據時,首先寫入發送數據的長度,然后將數據通過Port0寫入芯片。

  系統上電時,首先對CS8900A進行初始化,寫寄存器LineCTL、RxCTL、RxCFG、BusCTL。發送數據時,寫控制寄存器TxCMD,并將發送數據長度寫入TxLength,然后將數據依次寫入Port0口,數據就可以發送出去了;接收到數據時,CS8900 A將觸發中斷,在其中斷處理程序中可以接收數據并處理。

  3 接口轉換器的軟件設計

  3.1 自定義網絡協議

  在嵌入式網絡系統中,可以使用TCP/IP協議,但不夠經濟。原因是TCP/IP協議過于龐大,過于復雜,以至于效率低下。一方面是嵌入式系統各單元內部CPU的處理速度受限;另一方面,在某些特定場合特定任務的應用環境中TCP/IP功能冗余,阻礙了硬件效能的最大發揮。為此,針對特定的應用,制定相應的自定義網絡協議,靈活方便,針對性強,經濟實用。

  下面單從數據應用的角度,定義一個簡單、實用的以太網傳輸協議。

  3.2協議層次

  系統參照ISO的OSI模型,采用縮減的網絡體系結構。如圖3所示,網絡體系結構分為3層:物理層、數據鏈路層和應用層。物理層規定網絡的拓撲形式及通信信號的電氣特性;數據鏈路層實現點到點的通信規程,完全執行IEEE802.3的CSMA/CD協議。

網絡體系結構

  3.3 幀結構

  以太網幀結構如下:

以太網幀結構

  物理層的前同步碼(即物理幀前導符+物理幀界定符)8字節由硬件自動生成。除去這8個字節,將其余字段的長度加起來,可以得到以太網幀的最大長度為1 518字節,最小長度則為64字節;加上8字節的前同步碼,即可得到最小幀長度為576位。這樣長度的幀能夠保證所有沖突都可以檢測到。這是因為IEEE 802.3標準中,兩個站點的最遠距離小于2 500 m,由4個中繼器連接而成,其沖突窗口為2倍電纜傳播延遲加上4個中繼器的雙向延遲之和,合計為51.2μs。就10 Mbps以太網而言,這個時間段內等于發送64字節(即512位)的數據。

  使用CSMA/CD作為一種訪問控制方式,意味著最短數據幀長度與網絡上最長傳輸延遲時間間隔有著密切的關系。要保證在發送過程中出現沖突時,沖突域內的所有結點都應該知道發生了沖突,以便采取適當的措施。這就需要最短數據幀長度必須大于網絡上的最長傳輸延遲時間間隔,再加上阻塞附加時間和同步延遲時間等。這就是IEEE 802.3標準中最短幀長度為64字節的由來。[4]

  其中應用層幀類型分為數據幀和數據確認幀兩種,具體結構如下:

應用層幀類型分為數據幀和數據確認幀兩種

  由于數據幀長度可變,又由于數據確認幀的MAC層長度僅為18字節,故在網絡控制器初始化時須設置MAC層PAD填充功能(即MAC幀長度少于64字節時,網絡控制器自動將其填充至64字節后再交給物理層)。

  自定義數據幀的預留管理單元還可以制定一些簡單的控制或管理信息幀,以便更好地擴充功能和組織軟件。限于篇幅,茲不贅述。如想連入Internet,需要在系統中加入一個能夠轉換本協議和TCP/IP協議的前端網關(實質上是一個交互翻譯的軟件系統)。

  3.4程序設計流程

  本接口轉換器所要實現的功能是把從RS232串口接收到的串口數據轉換成以太網幀格式發送到以太網,并把從以太網上接收到的幀數據解包轉換到串口傳送。程序設計中包含初始化程序、主循環、串行接口程序和網絡通信接口程序。

  程序運行首先進行初始化工作,包括初始化CS8900A、初始化串口和初始化一些參數,然后進入主循環。主循環內循環運行CS8900A中斷服務查詢程序和串口緩沖區查詢程序,若有CS8900A中斷申請,則中斷調用網絡通信接口程序;若串口緩沖區有數據,則中斷調用串行接口程序。流程如圖4所示。

初始化主循環程序

  (1)串行接口程序

  串行接口程序是DSP通過16C2550向外部數據口進行數據接收、發送的程序,目的是進行數據傳輸。此程序包括串口發送接收程序及數據組織程序。發送和接收通過中斷并發處理。整個串口發送程序在主循環中調用。其模塊的流程為:

  發送 收到網絡串口數據→打開數據口→中斷發送;

  接收 中斷接收→整理串口數據→發送到網絡上去。發送和接收邏輯流程如圖5所示。

發送和接收邏輯流程

  (2)網絡通信接口程序

  網絡接口程序是DSP通過CS8900A對系統的其他單元發送命令和接收信息的程序,目的是與系統的其他單元通信,接收與發送數據包和信令數據包。此程序包括網絡數據接收程序、網絡數據發送程序、數據組織程序。發送與接收服務程序流程如圖6所示。

發送與接收服務程序流程

  結語

  該接口轉換器已成功地應用于車內的數字式語音通信系統之中。結果表明,本方案成功地實現了數據的實時傳輸,可以給各種應用RS232串口進行數據傳輸的嵌入式系統的聯網操作提供接口解決方案。本方案預留了升級擴展的功能。接入PCM編碼器并對程序作出相應改動,可實現語音的數字化網絡通信;接入A/D轉換器和各種傳感器可實現數據采集系統的聯網。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
黄色成人av| 亚洲激情女人| 免费av成人在线| 性8sex亚洲区入口| 99精品免费网| 91久久国产综合久久蜜月精品| 亚洲天堂第二页| 91久久久久久久久| 国产精品久久久久久久久免费桃花| 久久黄金**| 午夜精品久久久久久久| 亚洲视频自拍偷拍| 亚洲精品一区二区三区樱花 | 亚洲大片精品永久免费| 亚洲自拍三区| 亚洲精品久久7777| 国产亚洲成精品久久| 欧美日韩系列| 欧美日韩中文字幕在线| 欧美日韩视频不卡| 欧美日韩不卡一区| 欧美人交a欧美精品| 欧美精品播放| 欧美激情综合网| 欧美精品成人91久久久久久久| 麻豆国产精品777777在线| 久久影视精品| 毛片一区二区三区| 久久国产精品久久久| 久久国产福利国产秒拍| 欧美在线三级| 久久精品在线视频| 久久久久久亚洲精品杨幂换脸| 久久国产直播| 久久嫩草精品久久久精品一 | 欧美在线观看视频在线| 亚洲视频专区在线| 亚洲图片自拍偷拍| 亚洲欧美在线x视频| 欧美一区二区性| 欧美一区二区三区在线| 欧美专区亚洲专区| 久久久久国产精品麻豆ai换脸 | 亚洲欧美另类在线| 午夜久久tv| 欧美在线免费视频| 久久天堂成人| 欧美a级一区二区| 欧美精品一区二区三区高清aⅴ| 欧美人妖另类| 国产精品久99| 国产亚洲欧美一区在线观看| 伊人色综合久久天天| 亚洲福利视频二区| 亚洲精品乱码久久久久久按摩观 | 一区二区三区国产精华| 亚洲免费婷婷| 久久久91精品| 欧美成人午夜激情| 欧美日韩精品久久久| 欧美护士18xxxxhd| 欧美婷婷久久| 国产欧美一区二区三区久久| 依依成人综合视频| 日韩视频一区二区三区| 亚洲欧美大片| 亚洲国产欧美一区二区三区同亚洲 | 蜜桃久久精品一区二区| 欧美日本一区二区视频在线观看| 国产精品久久久久久久电影| 国产一区二区精品久久99| 亚洲大片在线| 亚洲性视频网址| 久久精品一二三区| 亚洲激情一区| 亚洲欧美日本伦理| 老司机午夜精品| 欧美视频在线一区| 一区国产精品| 一本色道久久综合亚洲二区三区| 一区二区精品在线| 亚洲二区精品| 在线亚洲免费视频| 性久久久久久久久久久久| 老妇喷水一区二区三区| 国产精品超碰97尤物18| 国色天香一区二区| 亚洲国产午夜| 性欧美长视频| 亚洲色在线视频| 老鸭窝毛片一区二区三区| 国产精品久久久久久影院8一贰佰| 激情成人在线视频| 亚洲人成网在线播放| 欧美一级理论片| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 欧美三区美女| 在线看片一区| 亚洲欧美另类在线| 日韩一区二区久久| 久久午夜色播影院免费高清| 国产精品v欧美精品v日韩 | 亚洲欧美区自拍先锋| 欧美国产高清| 黄色日韩网站视频| 亚洲综合久久久久| 一区二区三区精品久久久| 久久一区中文字幕| 国产美女一区| 亚洲高清在线观看| 欧美中在线观看| 亚洲欧美一区二区在线观看| 欧美精品一线| 亚洲第一精品在线| 久久精品女人天堂| 欧美一区二区成人6969| 欧美日韩第一页| 亚洲韩国日本中文字幕| 亚洲国产日韩欧美一区二区三区| 欧美在线视频a| 国产精品久久久久久久7电影 | 久久久久久日产精品| 国产一区二区成人久久免费影院| 欧美一级一区| 狂野欧美激情性xxxx欧美| 伊人久久亚洲热| 日韩视频在线观看| 欧美视频在线免费看| 亚洲网址在线| 欧美在线短视频| 韩国三级电影久久久久久| 亚洲国产精品激情在线观看| 欧美成熟视频| 日韩午夜在线播放| 小黄鸭精品aⅴ导航网站入口| 国产欧美日韩综合一区在线播放 | 校园春色综合网| 久久久久一区二区三区| 在线精品国精品国产尤物884a| 亚洲狼人精品一区二区三区| 欧美日韩一卡二卡| 亚洲你懂的在线视频| 久久免费视频在线观看| 亚洲国产精品高清久久久| 亚洲图片在线| 国产一区二区三区免费不卡| 91久久久精品| 欧美精品一区三区在线观看| 日韩一级片网址| 久久成人精品一区二区三区| 韩国三级电影久久久久久| 亚洲裸体视频| 国产精品你懂得| 亚洲大胆美女视频| 欧美日韩视频在线第一区| 亚洲欧美视频| 欧美成人综合一区| 亚洲图片自拍偷拍| 老司机午夜精品视频| 亚洲免费av观看| 久久九九99| 亚洲精品自在在线观看| 欧美一区二区日韩一区二区| 在线观看欧美亚洲| 亚洲一区二区精品在线| 国产一区二区三区在线观看免费视频| 亚洲精品美女在线观看| 国产精品久久网站| 亚洲韩国日本中文字幕| 国产精品yjizz| 亚洲成人资源| 国产精品爱啪在线线免费观看| 久久精品免费看| 国产精品久久久对白| 久久精品视频在线免费观看| 欧美午夜在线一二页| 亚洲高清不卡在线观看| 国产精品久久国产愉拍| 亚洲欧洲日本mm| 国产精品一区二区久久| 亚洲精品婷婷| 国产三级精品在线不卡| 一区二区欧美在线观看| 韩国成人精品a∨在线观看| 亚洲一区二区少妇| 亚洲国产高清自拍| 久久国产乱子精品免费女| 亚洲老司机av| 欧美sm视频| 欧美在线欧美在线| 欧美午夜精品久久久久久久| 亚洲电影专区| 国产欧美一区二区三区视频| 亚洲图片欧美一区| 91久久精品日日躁夜夜躁欧美 | 牛牛精品成人免费视频| 午夜日韩福利| 国产精品国产亚洲精品看不卡15| 91久久精品美女| 韩国女主播一区二区三区|