999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于S3C2410的TFTP以太網(wǎng)通信設計與實現(xiàn)

2008-04-12 00:00:00潘永才
現(xiàn)代電子技術(shù) 2008年6期

摘 要:網(wǎng)絡功能現(xiàn)在已成為嵌入式系統(tǒng)中不可或缺的一部分。首先對ARM芯片S3C2410與網(wǎng)絡物理層芯片CS8900A的硬件接口電路的設計進行講解,然后重點介紹在該硬件基礎上的驅(qū)動程序的實現(xiàn)方法,實現(xiàn)嵌入式設備與PC機之間的TFTP通信,提供的一種基于TCP/IP協(xié)議的嵌入式設備以太網(wǎng)通信的解決方案,在嵌入式系統(tǒng)的網(wǎng)絡應用中有較好的應用價值。

關(guān)鍵詞:S3C2410;CS8900A;嵌入式設備;以太網(wǎng);TFTP

中圖分類號:TP368 文獻標識碼:B

文章編號:1004-373X(2008)06-080-03

Dedign and Realization of TFTP Ethernet Communication Based on S3C2410

TIAN Mao,PAN Yongcai

(Faculty of Physics and Electronic Engineering,Hubei University,Wuhan,430062,China)

Abstract:Network function has became important part of the embedded system.The paper explains the design of interface circuit based on the arm chip S3C2410 and network physical layer chip CS8900,realizes the communication of TFTP between embedded equipment and PC machine by the solution of the driver programe based on CS8900A and S3C2410,provides the solution of Ethernet communication of embedded equipment based on the TCP / IP protocol.This design has a good value in the application of embedded system network.

Keywords:S3C2410;CS8900A;embedded equipment;Ethernet;TFTP

隨著半導體技術(shù)的飛速發(fā)展,嵌入式產(chǎn)品已經(jīng)廣泛應用于軍事、消費電子、網(wǎng)絡通信、工業(yè)控制等各個領(lǐng)域,網(wǎng)絡化是嵌入式系統(tǒng)發(fā)展的必然趨勢。本文提供一種基于32位三星ARM9處理器S3C2410和CS8900A的嵌入式系統(tǒng)以太網(wǎng)通信的方案,實現(xiàn)了嵌入式設備與PC機之間的TFTP通信。

1 ARM芯片S3C2410簡介

S3C2410是Samsung公司推出的16/32位RISC處理器,為手持設備和一般類型的應用提供了低價格、低功耗、高性能小型微控制器的解決方案。S3C2410采用ARM920T內(nèi)核,工作主頻為203 MHz,具有豐富的片上資源,包括1個LCD控制器(支持STN和TFT帶有觸摸屏的液晶顯示器)、SDRAM控制器、3個通道的UART、4個通道的DMA、4個具有PWM功能的計時器和1個內(nèi)部時鐘、8通道的10位ADC、觸摸屏接口、I2C總線接口、1個USB主機接口,1個USB設備接口、2個SPI接口、SD接口和MMC卡接口、117個通用I/O口和24個外部中斷源。

2 CS8900A簡介

CS8900A是Cirrus Logic 公司提供的一款性能優(yōu)良的16位以太網(wǎng)控制器 ,除了具備其他以太網(wǎng)控制芯片所具有的一些基本功能外,還有他的獨特優(yōu)點:工業(yè)級溫度范圍(- 40~+80 ℃);3.3 V 工作電壓,功耗低;高度集成的設計,使用CS8900A可以將一個完整的以太網(wǎng)電路設計電路最小化,適合作為智能嵌入設備網(wǎng)絡接口;獨特的PacketPage 結(jié)構(gòu),可自動適應網(wǎng)絡通信模式的改變,占用系統(tǒng)資源少,從而增加系統(tǒng)效率。在嵌入式系統(tǒng)網(wǎng)絡接口設計中,CS8900A 一般用作I/O 模式,其特點是占用系統(tǒng)資源少,硬件連接方便。

2.1 I/O模式下的寄存器與尋址

在I/O模式下,通過訪問8個16位的寄存器來訪問PacketPage結(jié)構(gòu),這8個寄存器被映射到2410地址空間的16個連續(xù)地址。當CS8900A上電后,寄存器默認的基址為0x300h。如表1所示。

2.2 I/O模式下讀寫操作流程

在讀寫操作過程中,AEN管腳必須設置為低電平。讀操作時,IOR管腳設置為低電平;寫操作時,IOW管腳設置為低電平。

表1 I/O模式地址映射

2.2.1 寫操作流程

I/O模式的寫操作流程如下:

(1) 將發(fā)送指令寫入TxCMD寄存器,將發(fā)送數(shù)據(jù)幀的長度寫入TxLength寄存器中;

(2) 使用PacketPagePointer和PacketPageData Port寄存器訪問PacketPage結(jié)構(gòu)中的BusST寄存器,判斷發(fā)送緩沖區(qū)是否可用;

(3) 使用Receive/Transmit Data Port寄存器,將待發(fā)送的數(shù)據(jù)幀寫入發(fā)送緩沖區(qū)。

2.2.2 讀操作流程

I/O模式的讀操作流程如下:

(1)當CS8900收到數(shù)據(jù)幀時,觸發(fā)接收中斷更新對應狀態(tài)寄存器;

(2)使用Interrupt Status Queue寄存器訪問PacketPage結(jié)構(gòu)中對應的狀態(tài)寄存器判斷接收狀態(tài);

(3) 使用Receive/Transmit Data Port寄存器,讀出接收緩沖區(qū)的數(shù)據(jù)。

3 網(wǎng)絡接口的實現(xiàn)

由于S3C2410本身沒有集成網(wǎng)絡MAC模塊,所以用外擴CS8900A 網(wǎng)絡芯片完成網(wǎng)絡底層的數(shù)據(jù)傳輸,以實現(xiàn)TCP/IP協(xié)議中的數(shù)據(jù)鏈路層的功能。在此基礎上,根據(jù)TCP/IP協(xié)議編寫代碼解析數(shù)據(jù),完成網(wǎng)絡通信。

硬件電路原理圖如圖1所示。

3.1 數(shù)據(jù)鏈路層

數(shù)據(jù)鏈路層由CS8900A實現(xiàn),完成底層數(shù)據(jù)的收發(fā)。

CS8900A片選信號AEN連接到達到nGCS3,I/O模式下的nOE和nWE通過門電路連接到A24,中斷信號INTRQ0連接到EINT9。硬件原理圖決定在S3C2410的地址空間中,CS8900A的基地址為x19000000。在I/O模式下,CS8900A的內(nèi)部寄存器默認基地址為0x300h,在S3C2410的地址空間中的地址為 0x19000300。S3C2410通過操作這些寄存器,完成底層數(shù)據(jù)的接收和發(fā)送,實現(xiàn)數(shù)據(jù)鏈路層。CS8900的程序流程如圖2所示:

3.2 網(wǎng)絡層

網(wǎng)絡層實現(xiàn)IP協(xié)議,提供ARP地址解析協(xié)議,實現(xiàn)從IP地址到數(shù)據(jù)鏈路物理地址的映像。

3.3 傳輸層

實現(xiàn)UDP和TCP協(xié)議,讓網(wǎng)絡程序通過明確定義的數(shù)據(jù)結(jié)構(gòu)獲得數(shù)據(jù)。

3.4 應用層

通過以太網(wǎng)和TCP/IP傳輸數(shù)據(jù),實現(xiàn)與Ethernet的數(shù)據(jù)終端的交互通信。

4 TFTP的實現(xiàn)

TFTP(Trivial File Transfer Protocol,簡單文件傳輸協(xié)議)是TCP/IP協(xié)議族中的一個用來在客戶機與服務器之間進行簡單文件傳輸?shù)膮f(xié)議,提供不復雜、開銷不大的文件傳輸服務。

4.1 TFTP數(shù)據(jù)幀的格式簡介

TFTP使用UDP,而UDP使用IP。因此一個TFTP包中會有以下幾段:本地媒介頭、IP頭、數(shù)據(jù)報頭、TFTP頭、TFTP數(shù)據(jù)。TFTP在IP頭中不指定任何數(shù)據(jù),但是他使用UDP中的源和目標端口以及包長度域。TFTP頭中包括2個字節(jié)的操作碼,這個碼指出了包的類型。其幀格式如圖3所示:

4.2TFTP通信流程

PC機與S3C2410的嵌入式設備的TFTP通信流程包括以下2個階段:

(1) 發(fā)送寫請求階段

PC機向嵌入式設備發(fā)出WRQ包,并在filename段指明要發(fā)送的文件名,在Mode段填充“OCTET”,表示用于傳輸文件,這種文件在源機上以8位格式存儲。

嵌入式設備收到WRQ包后,向PC機發(fā)出ACK包,并在block number段填充0。

(2) 數(shù)據(jù)傳輸階段

PC機向嵌入式設備發(fā)出data包,在block number段填充數(shù)據(jù)包的數(shù)據(jù)塊號。在data段填充要發(fā)送的數(shù)據(jù)。如果數(shù)據(jù)域是512 B則他不是最后一個包,如果小于512 B則表示這個包是最后一個包。

嵌入式設備收到data包后,向PC機發(fā)出ACK包。在block number段填充接收到的數(shù)據(jù)包的數(shù)據(jù)塊號,表示成功接收該數(shù)據(jù)包。

4.3 TFTP數(shù)據(jù)的接收與解析

CS8900收到包后調(diào)用net_handle函數(shù)將收到的包保存到內(nèi)存。根據(jù)包的幀結(jié)果,分別調(diào)用arp_rcv_packet和ip_rcv_packet處理數(shù)據(jù)包。net_handle函數(shù)的源碼如下所示:

int net_handle(void)

{

Struct sk_buff *skb;

Struct ethhdr *eth_hdr;

Skb=alloc_skb(ETH_FRAME_LEN);

if(eth_rcv(skb) !=-1 )

{

Eth_hdr = (struct ethhdr *)(skb->data);

Skb_pull(skb,ETH_HLEN);

If (ntohs(eth_hdr->h_proto)==ETH_P_ARP)

arp_rcv_packet(skb);

else if(ntohs(eth_hdr->h_proto)==ETH_P_IP)

ip_rcv_packet(skb);

}

free_skb(skb);

Return 0;

}

4.4 TFTP的實際測試

將嵌入式設備與本地局域網(wǎng)聯(lián)通,并分配MAC地址和IP地址,利用PC的ping程序測試,其連接正常,說明ARP,IP,ICMP協(xié)議正常。利用TFTP命令,將本機的TXT文件發(fā)送到嵌入式設備內(nèi)存空間的0x30008000處。利用網(wǎng)絡抓包軟件,觀察網(wǎng)絡數(shù)據(jù)包,結(jié)果符合TFTP通信流程。在嵌入式設備的內(nèi)存地址0x30008000處觀察數(shù)據(jù),結(jié)果數(shù)據(jù)與TXT文件內(nèi)容一致。這說明TFTP執(zhí)行正確,UDP協(xié)議正常。

5 結(jié) 語

本文詳細介紹了基于S3C2410的 嵌入式設備的以太網(wǎng)通信方案,由于采用高性能的工業(yè)級以太網(wǎng)控制器CS8900A,網(wǎng)絡通訊快速可靠,具有很高的實時性。該方案通過直接操作CS8900A,完成了數(shù)據(jù)鏈路層功能,最終完全實現(xiàn)嵌入式設備使用TCP/IP協(xié)議接入到以太網(wǎng)。 方案的代碼可以為Linux或Wince等嵌入式操作系統(tǒng)的以太網(wǎng)驅(qū)動部分提供參考,便于嵌入式系統(tǒng)實現(xiàn)上網(wǎng)功能。在實際應用中,該方案有較好的推廣價值。

參考文獻

[1]胥靜.嵌入式系統(tǒng)設計與開發(fā)詳解[M].北京:北京航空航天大學出版社,2005.

[2]徐良賢.計算機網(wǎng)絡與互聯(lián)網(wǎng)[M].北京:電子工業(yè)出版社,1998.

[3]Cirrus Logic,Inc.CS8900A Product Datasheet.2001.

[4]SΛMSUNG Electronics,Inc.S3C2410X User′s Manual,2003.

作者簡介 田 茂 講師, 碩士。主要研究方向為接口技術(shù)與嵌入式系統(tǒng)。

主站蜘蛛池模板: Aⅴ无码专区在线观看| 久久99这里精品8国产| 成人福利在线看| 日韩欧美国产成人| 尤物午夜福利视频| 亚洲国产91人成在线| 国产国产人免费视频成18| 国产成人综合亚洲网址| 美女被操91视频| 另类重口100页在线播放| 亚洲精品视频网| 亚洲专区一区二区在线观看| 国产精品伦视频观看免费| 成人日韩视频| 久久黄色影院| 免费毛片全部不收费的| 国产乱视频网站| 国产精品午夜福利麻豆| 男女男免费视频网站国产| 四虎影视永久在线精品| 视频二区国产精品职场同事| 伊人网址在线| 国产精品欧美在线观看| 伊伊人成亚洲综合人网7777| 亚洲无码高清免费视频亚洲| 1024国产在线| 在线观看国产一区二区三区99| 久久96热在精品国产高清| 欧美 国产 人人视频| 国产一区在线观看无码| 久久成人免费| 日韩a级片视频| 欧美一级99在线观看国产| 三级欧美在线| 狠狠做深爱婷婷久久一区| 麻豆精品国产自产在线| 成人午夜视频网站| 日韩欧美在线观看| 亚洲三级电影在线播放| 毛片国产精品完整版| 亚洲福利片无码最新在线播放 | 中文字幕亚洲精品2页| 婷婷亚洲天堂| 人妻一本久道久久综合久久鬼色| 亚洲人在线| 国产素人在线| 国产日韩精品欧美一区喷| 国产精品hd在线播放| 狠狠色成人综合首页| 国产精品流白浆在线观看| 色噜噜久久| 美女内射视频WWW网站午夜| 综合五月天网| 国产大片喷水在线在线视频| 狠狠干综合| 亚洲不卡网| 日韩欧美91| 野花国产精品入口| 免费国产高清精品一区在线| a毛片免费在线观看| 成人日韩精品| 强奷白丝美女在线观看| 人妻无码一区二区视频| 久久久波多野结衣av一区二区| 青青操国产视频| 国产麻豆aⅴ精品无码| 九九免费观看全部免费视频| 国产人免费人成免费视频| 中文字幕av无码不卡免费| 伊人久久精品无码麻豆精品| 伊人精品视频免费在线| 亚洲视频a| 欧美一区二区自偷自拍视频| 国产成人永久免费视频| hezyo加勒比一区二区三区| 好吊色妇女免费视频免费| 色综合中文字幕| 全色黄大色大片免费久久老太| 国产午夜福利在线小视频| 57pao国产成视频免费播放| 欧美午夜小视频| 国产啪在线|