《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于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 | 亚洲一区亚洲二区| 亚洲欧美bt| 在线观看中文字幕不卡| 欧美日韩视频专区在线播放 | 夜夜嗨av色综合久久久综合网| 亚洲小视频在线| 亚洲小少妇裸体bbw| 亚洲一区二区精品视频| 亚洲一区视频| 亚洲国产欧美日韩| 国产精品久久久久av免费| 久久久久久69| 一区二区av| 久久精品视频在线免费观看| 亚洲精品网站在线播放gif| 国产欧美高清| 国产一区二区三区观看| 狠狠色丁香婷婷综合久久片| 欧美日韩在线免费观看| 欧美视频中文一区二区三区在线观看| 久久成人免费视频| 国产精品99久久99久久久二8| 欧美淫片网站| 亚洲午夜国产一区99re久久| 亚洲在线观看免费| 欧美一区日本一区韩国一区| 久久国产一二区| 日韩网站免费观看| 性色av一区二区三区| 亚洲欧洲三级电影| 国产一区在线观看视频| 国产精品国产三级国产aⅴ浪潮| 国产精品久久久久久久久久三级| 国产精品视频不卡| 欧美精品入口| 美国三级日本三级久久99| 亚洲欧美日韩精品在线| 99精品视频免费观看视频| 一区二区三区回区在观看免费视频| 亚洲制服欧美中文字幕中文字幕| 亚洲欧美日韩精品久久| 久久免费一区| 欧美一区二区| 在线午夜精品自拍| 午夜精品福利在线| 理论片一区二区在线| 欧美三级电影一区| 国产一区二区三区黄| 91久久精品一区二区别| 亚洲自啪免费| 亚洲精品久久久久久久久久久| 久久狠狠婷婷| 99热这里只有精品8| 亚洲女性裸体视频| 久久亚洲影音av资源网| 欧美视频不卡| 精品999日本| 国产一区香蕉久久| 亚洲人成网在线播放| 亚洲欧美中文另类| 亚洲影音一区| 亚洲精品国产拍免费91在线| 午夜精品亚洲一区二区三区嫩草| 免费在线欧美视频| 老司机精品视频网站| 欧美视频在线观看一区| 国内揄拍国内精品少妇国语| 一本高清dvd不卡在线观看| 亚洲欧洲日产国产网站| 亚洲欧美日韩国产综合| av成人动漫| 嫩草影视亚洲| 国产欧美日韩另类一区 | 亚洲丝袜av一区| 中文久久精品| 久久视频免费观看| 国产精品免费小视频| 国产精品毛片| 亚洲激情中文1区| 久久精品91久久久久久再现| 亚洲一区999| 欧美精品久久久久久久| 黄色日韩网站视频| 午夜精品久久久久久久99水蜜桃| 在线午夜精品自拍| 欧美国产一区二区| 欧美日韩精品一区二区在线播放 | 亚洲视频精选在线| 欧美黄网免费在线观看| 精品99视频| 久久爱另类一区二区小说| 久久成人一区| 欧美亚洲视频在线看网址| 性欧美激情精品| 欧美日韩你懂的| 最新国产乱人伦偷精品免费网站 | 宅男在线国产精品| 欧美成人情趣视频| 欧美乱妇高清无乱码| 国产精品v一区二区三区| 国产精品一区二区三区四区| 国产丝袜一区二区三区| 在线国产亚洲欧美| 午夜视频久久久| 欧美一级电影久久| 国产精品视频免费一区| 一本色道久久88精品综合| 99精品视频免费观看视频| 欧美极品一区| 亚洲日韩视频| 一片黄亚洲嫩模| 欧美日韩精品是欧美日韩精品| 亚洲人屁股眼子交8| 亚洲美女在线视频| 新狼窝色av性久久久久久| 欧美三级欧美一级| av成人免费在线观看| 一片黄亚洲嫩模| 欧美视频不卡中文| 亚洲午夜未删减在线观看| 亚洲欧美一区二区原创| 国产精品美腿一区在线看 | 国产区在线观看成人精品| 欧美一级成年大片在线观看| 久久精品免费| 猛男gaygay欧美视频| 韩国女主播一区二区三区| 久久精品亚洲一区| 免费成人在线观看视频| 亚洲精品1区| 中文精品视频| 国产精品一二三| 久久精品国产一区二区电影| 欧美不卡视频一区| 亚洲国产美女精品久久久久∴| 亚洲一区自拍| 久久成人18免费观看| 欧美日韩免费高清| 99国产一区| 91久久黄色| 久久久99免费视频| 在线成人av.com| 一本色道久久88精品综合| 国产精品盗摄久久久| 亚洲欧美日韩精品久久久| 久久深夜福利免费观看| 亚洲韩国日本中文字幕| 亚洲一区二区三区中文字幕在线| 国产精品婷婷| 亚洲高清视频中文字幕| 欧美一级黄色网| 黄网站色欧美视频| 一区二区动漫| 国产欧美一区二区三区视频 | 欧美精品在线视频观看| 正在播放欧美一区| 亚洲人成在线播放| 欧美视频中文一区二区三区在线观看| 午夜日本精品| 欧美成人激情视频| 亚洲午夜在线观看| 麻豆成人在线| 在线视频中文亚洲| 久久久综合网站| 一区二区av在线| 久久尤物视频| 亚洲少妇诱惑| 亚洲视频福利| 国产一区二区久久久| 一本色道婷婷久久欧美| 国产日韩综合| 亚洲视频免费在线| 在线观看欧美| 香蕉久久夜色精品国产| 亚洲第一伊人| 久久福利毛片| 欧美日韩精品系列| 久久精品理论片| 国产精品久久久一区麻豆最新章节 | 国产欧美91| 中文精品视频| 在线精品国产欧美| 欧美一区二区精品在线| 亚洲精品国产精品久久清纯直播| 久久精品亚洲| 亚洲一品av免费观看| 欧美国产欧美亚州国产日韩mv天天看完整| 午夜精品久久久久久久久久久久久| 欧美精品亚洲二区| 亚洲国产合集| 国产一级揄自揄精品视频| 亚洲一区999| 亚洲精品专区|