久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于AVR的網絡用具接口的設計與實現

基于AVR的網絡用具接口的設計與實現

作者: 時間:2016-12-02 來源:網絡 收藏


RTL8019AS片內有16K的SRAM,地址0X40000-0X7FFF,這16KRAM被初始化成2個部分:①接收以太網數據緩沖②發送以太網數據緩沖,具體2個緩沖大小可編程設定。

電路連接如圖3,RTL8019AS電源采用直流5V.它的SDOSD7數據總線,通過一個74HC573鎖存器與單片機連接,單片機用LE使能控制鎖存器。RTL$019AS采用8位總線,SA地址總線只使用SA0-SA4與單片機連接,其它SA5-SAl9都接地。這里基址為0。INTO為RTL8019AS8個中斷之一,與單片機的外部中斷連接,在接收數據時使用。RSTDRV為復位線,高電平有效,要求復位時間長于800ms。IOR/10W為讀寫控制線。AEN為地址使能,低電平有效。

芯片與網線接口RJ45通過TPIN+、TPIN-、TPOUT+、TPOUT-連接。TPIN+/TPIN-為雙絞線接收,TPOUT+、TPOUT-為雙絞線的發送腳。但是不能直接連接,要經過網絡隔離變壓器隔離,本設計采用20F—Ol。它起的作用主要有兩個,一是傳輸數據,把PHY送出來的差分信號用差模耦合的線圈耦合濾波以增強信號,并且通過電磁場的轉換耦合到不同電平的連接網線的另外一端;二是隔離網線連接的不同網絡設備問的不同電平,以防止不同電壓通過網線傳輸損壞設備。

3 RTL8019驅動程序

RLS019AS包含大量的片內寄存器單元,在工作的過程中需要實現數據包的接收和發送,必須正確的對相關的寄存器進行設置。對RTLSOl9AS的驅動程序主要包括3個部分:RTL80l 9AS初始化部分,數據包接收部分,數據包發送部分。

3.1初始化

初始化主要是對寄存器的初始化,主要包括初始化復位寄存器,初始化RTLS019AS的配置寄存器:CONFIG0-CONFIG3,初始化接收和發送緩沖區,初始化RTL9019AS的中斷,初始化接收配置,發送配置等,設置以太網物理地址等。

3.2數據接收

數據的接收可以用查詢方式,芯片不斷向網絡中查詢是否有信息到達本節點;也可以用中斷方式,這里選擇中斷方式。RTL8019AS的INTO接ATMEGA32的INT0,當有中斷發生。AVR進入中斷服務,先通過讀取ISR,對中斷類型進行判斷,看是否正確接收。根據先前工程定義好的網卡接收緩存區地址,用CURR指針將接收到的數據讀取到內存中。當CURR指針同BURY指針地址相同時說明接收數據結束。所以要先判斷是否接收結束,再調用取包函數WY_GETPACK()。

取包函數主要包括停止8019的工作,復位中斷,判斷是否邊界寄存器是否越界,啟動DMA操作,讀取DMA,計算數據包長度.移動接收地址然后再讀。接收流程圖如圖4所示。


圖4數據接收流程圖

3.3數據發送

發送過程分為3個步驟:封裝數據包;將數據送至發送緩沖區;發送數據。發送緩沖區空問為3k,可以保存2個完整的數據幀。可以把緩沖區分為兩部分,一部分用來發送,另一部分用來封裝數據包,達到提高效率的目的。如果發送的數據少于60字節,則將數據填充至60個字節再發送出去。若數據大于1514個字節就要將數據分割到小于1514個字節后再發送。所以—個數據包的數據字節數必須控制在60—1514字節.這是以太網8023協議規定的。如果發送失敗則重發。發送流程如下圖5所示。


圖5數據發送流程圖

4 結束語

網絡用具義稱網絡家電、信息家電,是未來家用電器的主要發展方向。在未來家庭中。多臺網絡用具設備協調工作,并組成一個互動的網絡環境,以方便用戶的使用,這個網絡環境被稱為數字家庭網絡,簡稱家庭網絡。家庭網絡是信息技術發展創新的必然趨勢。

本文創新點在于,設計了基于AVR的網絡用具接口方案,簡單易用,成本低,符合了信息家電的要求,更可以應用于遠程工業控制,遠程儀表抄表等領域。目前開發的開發板,使用單片機直接通過RTLSOl9AS芯片,用網線與PC機通訊,工作正常。

上一頁 1 2 下一頁

關鍵詞: AVR網絡用具接

評論


技術專區

關閉