国产欧美日韩精品a在线观看-国产欧美日韩精品一区二区三区-国产欧美日韩精品综合-国产欧美中文字幕-一区二区三区精品国产-一区二区三区精品国产欧美

ACS880-07C
關注中國自動化產業發展的先行者!
隨著會計的發展,追蹤碳足跡
CAIAC 2025
2024
工業智能邊緣計算2024年會
2023年工業安全大會
OICT公益講堂
當前位置:首頁 >> 案例 >> 案例首頁

案例頻道

用單片機實現以太網卡通訊設計
  • 企業:控制網     行業:輸配電    
  • 點擊數:2123     發布時間:2006-08-11 14:17:56
  • 分享到:
本文介紹了基于51單片機的以太網卡的設計硬件結構電路和軟件實現。該設計核心處理器采用Atmel公司的AT89C51,以太網卡控制芯片使用Realtek公司的Rtl8019as芯片。同時,介紹了用精簡的TCP/IP協議棧實現網絡通訊。

               

1引言 

隨著網絡技術與計算機技術的發展和普及,以及電子設備日趨網絡化的背景下,用單片機控制以太網卡進行數據通訊成為當前的主要發展趨勢。通過單片機控制以太網卡編程可以實現局域網內任意兩個終端的通訊。本文所介紹的太網卡設計主要應用于工業現場控制領域的數據采集和數據傳輸方面。下面簡要介紹以51為核心的單片機和RTL8019AS以太網控制芯片所設計的網卡的硬件電路結構及軟件程序設計。

 

2系統硬件結構設計

    

 

 

                                 1 系統硬件框圖

系統的硬件電路結構如圖1所示。在該系統中主要包括MCU單元,串口通訊單元,EEPROM單元和網卡芯片單元等。

我們采用AT89C51單片機作為主處理器控制以太網卡芯片來實現和以太網的數據交換。由于單片機內存資源小,處理速度慢,則需要對單片機外擴RAM。這樣,使用外擴RAM可以提高單片機的數據傳輸速度,以及處理復雜的TCP/IP協議。以太網數據包最大可以達到1500多字節,89C51單片機無法存儲這么大的包,只有放到外部的RAM進行存儲。同時外部RAM也用作串行口的輸入輸出緩沖,以使單片機可以高速的傳輸數據速度。

在系統中還使用x5045作為外部擴展的EEPROM,用來存儲IP地址、物理地址以及網卡的其他配置信息。同時x5045還具有電壓監控,看門狗定時器,上電復位三種功能,使用x5045監控系統的運行過程,當系統不穩定的時候可以進行有效的復位。

由于單片機的高低電平和串行口的高低電平不一樣,二者之間需要進行電平轉換,在本設計中使用MAX232作為串口電平轉換芯片,負責單片機與PC機的電平轉換。數據可以從串口輸入到單片機,單片機在把數據送到8019傳出去。反之,從8019接收到的數據通過單片機可以從串口發出去。

網卡芯片采用的是Realtek公司生產的RTL8019AS以太網卡控制器,價格低廉,和NE2000兼容。RTL8019AS符合ETHERNET II8023標準;內置16K SRAM,用于收發緩沖,降低對主處理器的要求;支持8/16位數據總線,8個中斷申請,16I/O基地址選擇等許多特性;在本設計中選用8位數據總線,選擇8位數據總線的方法是在RTL8019AS

IOCS16B引腳接一個27K的下拉電阻。

由于網卡控制器與以太網是不能直接相連的,中間要通過網絡隔離變壓器才能連接到以太網上。網絡隔離變壓器的作用是隔直通交,避免雙絞線上的直流電平干擾芯片(RTL8019AS)的工作點;同時,利用變壓器自身的通頻帶限制高頻的干擾。

8019提供3種配置I/O端口和中斷的模式:第一種為跳線模式(Jumper),RTL8019ASI/O端口和中斷由跳線引腳決定;第二種為即插即用模式(Plug and PlayPnP),由軟件自動配置;第三種為免跳線模式(Jumperless),RTL8019ASI/O端口和中斷由9346EEPROM)里的配置信息決定。在本電路中,沒有使用9346而是使用x5045作為閃盤存儲MAC地址和其他配置信息。PnP模式主要使用在PC機中。所以,使用跳線模式來選擇I/O端口和中斷。RTL8019AS65引腳JP接高電平(直接接到VDD或通過一個10kΩ的電阻上拉),8019工作在跳線模式。I/O端口基址選為300H,中斷使用IRQ2/9引腳。

當系統上電復位后,在RSTDRV下降沿,8019AS讀入各個跳線引腳的狀態,寫入到系統配置寄存器中,作為系統默認的初始配置。

 

3 系統軟件實現

以太網通信軟件的設計包括以太網卡控制器的驅動程序設計和上層協議軟件設計。驅動程序設計有網卡芯片初始化和收發數據包程序。上層軟件主要是實現TCP/IP協議,由于單片機自身資源有限,它的存儲容量、處理速度和總線寬度等都不能像PC機那樣采用標準的TCP/IP協議,但可以根據系統的特點和功能,將精簡的TCP/IP協議嵌入到單片機里。

 1)網卡初始化和收發數據包程序設計

首先對8019AS進行復位,當系統復位完成后,要對網卡的工作參數進行設置,即對網卡初始化,網卡的工作參數可通過對RTL8019AS內部寄存器設置。RTL8019AS內部寄存器有4頁,和NE2000兼容的有三頁,第4頁不用。頁選擇由CR寄存器的PS1,PS0位確定。在0頁寄存器中可以設置接收、發送狀態配置以及發送緩存區的起始頁與接收緩存區起、止頁地址等寄存器;在1頁寄存器中可以設置以太網接口的MAC地址和組播地址。

RTL8019AS內部由兩塊RAM區。一塊16K字節,地址為0x4000~0x7fffRAM按頁存儲,每256字節為一頁。將RAM的前12頁(即0x4000~0x4bff)存儲區作為發送緩沖區;后52頁(即0x4c00 ~ 0x7fff)存儲區作為接收緩沖區,用來存放接收的以太網幀。另一塊RAM只有32字節,地址為0x0000~0x001f,用于存儲以太網物理地址。

接收和發送數據包都必須通過DMA讀寫網卡內部的16K RAM,網卡的16K RAM是一個雙端口RAM,所謂雙端口就是有兩套總線連接到該RAM上,一套總線是單片機讀寫網卡上的RAM,即遠程DMA;另一套總線是網卡控制器讀寫網上的RAM,即本地DMA

接收數據是通過本地DMA從網卡接口接收,RTL8019AS對接收到的數據包通過MAC比較,CRC校驗,由FIFO存到接受緩沖區,收滿一幀后以中斷或者寄存器標志方式通知主處理器,主處理器通過遠程DMA將緩沖區的數據讀到自己的內存中進行處理。

數據包的發送過程包括三個步驟:主處理器將數據包按照RTL8019AS發送數據幀

格式進行封裝;封裝完之后通過遠程DMA通道將數據包送到RTL8019AS的發送緩沖區;然后通過本地DMA將數據送到FIFO,通過設置寄存器CR啟動發送。RTL8019AS完成上一幀的發送,在開始下一幀的發送。

2)上層軟件設計

在本系統設計中,TCP/IP協議軟件首先在網絡接口層實現對以太網幀的打包和解析工作。在以太網幀中,將數據包分為ARP包、IP包。ARP包分為ARP請求和APR應答,以

實現IP地址與MAC地址的動態綁定。IP包可解析為TCP包、UDP包和ICMP包,TCP包用于可靠的有連接的數據傳輸,系統與外部數據信息的交換都通過TCP協議進行傳輸;UDP包用于無連接的數據報傳輸,對一個以太網幀的解析過程如圖4所示。

                         
2  以太網幀解析過程

4結束語

    該設計真正實現了單片機系統直接與Internet的連接。可以使PC機遠程訪問單片機系統,也可以使單片機系統將有用的信息發送到遠端的PC機或其他終端上,提高了單片機與互聯網之間的信息共享。在本設計中存在主要不足之處在于單片機處理速度較慢,因此只能應用于對數據傳輸速度要求不太高的場合,提高單片機傳輸數據的速度有待于進一步的研究。

參考文獻:

 [ 1 ]  Richard Stevens W  TCP/IP詳解 1:協議. 范建華等譯. 機械工業出版社,2000

 [ 2 ]  胡漢才.  單片機原理極其接口技術  清華大學出版社,1996

 [ 3 ]  RTL8019AS datasheet.  http://www.realtek.com.cn.

 [ 4 ]  老古網站   http://www.laogu.com

 

熱點新聞

推薦產品

x
  • 在線反饋
1.我有以下需求:



2.詳細的需求:
姓名:
單位:
電話:
郵件:
主站蜘蛛池模板: 奇米888四色在线精品 | 亚洲在线日韩 | 日韩欧美在线一区二区三区 | 成人在线观看国产 | 亚久久伊人精品青青草原2020 | 国产午夜免费视频 | 成人精品| 欧美国产日本精品一区二区三区 | 成人免费观看视频久爱网 | 日韩一级生活片 | 一区二区在线播放福利视频 | 日韩久久免费视频 | 91欧美一区二区三区综合在线 | 久草免费手机视频 | 亚洲国产一区二区在线 | 欧做爰xxxⅹ性欧美大 | 在线毛片一区二区不卡视频 | 2022年国产精品久久久久 | 免费久草| 91高端极品外围在线观看 | 毛片久久| 波多野结衣在线视频免费观看 | 日本免费高清一区 | 爽爽爽爽爽爽爽成人免费观看 | 国产高清在线精品免费 | 国产日韩亚洲不卡高清在线观看 | 韩国美女爽快一毛片免费 | 亚洲黄色免费观看 | 精品国产高清毛片 | 久草视频新 | 成人观看免费大片在线观看 | 日本高清一本二本三本如色坊 | 成年女人看片免费视频频 | 久久欧美精品欧美九久欧美 | 国产精品视频久久 | 国产免费视屏 | 亚洲网站一区 | 午夜影院h | 欧美特级一级毛片 | 日韩一区二区三区视频在线观看 | 草草日 |