基于嵌入式的以太網(wǎng)通訊

基于嵌入式的以太網(wǎng)通訊

ID:13272772

大小:171.50 KB

頁數(shù):7頁

時間:2018-07-21

基于嵌入式的以太網(wǎng)通訊_第1頁
基于嵌入式的以太網(wǎng)通訊_第2頁
基于嵌入式的以太網(wǎng)通訊_第3頁
基于嵌入式的以太網(wǎng)通訊_第4頁
基于嵌入式的以太網(wǎng)通訊_第5頁
資源描述:

《基于嵌入式的以太網(wǎng)通訊》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、基于嵌入式的以太網(wǎng)通訊本文章采用三星公司的2410作為微處理器,實現(xiàn)了ARM和PC機的以太網(wǎng)通訊,采用Linux作為操作系統(tǒng),首先講一下ARM的結(jié)構(gòu)模式,S3C2410由ARM920T內(nèi)核(16-/32-bitRISCCPU),獨立的16KB指令和16KB數(shù)據(jù)cacheMMU虛擬內(nèi)存管理單元,LCD控制器(支持STN和TFT),NANDFlashbootloader,系統(tǒng)管理單元(SDRAM控制器等),3通道UART,4通道DMA,4通道具備PWM功能的定時器,IO口,RTC(實時時鐘),8通道10b

2、it精度ADC和觸摸屏控制器,IIC總線接口,IIS數(shù)字音頻總線接口,USB主機,USB設(shè)備,SD/MMU卡控制器,2通道SPI和PLL數(shù)字鎖相環(huán)組成。我用到了以太網(wǎng)控制器CS8900CS8900的特點:單芯片IEEE802.3帶有ISA總線接口的以太網(wǎng)控制器,在5V的電壓下,最大電流消耗為55mA,3V的工作電壓,可以在工業(yè)溫度范圍內(nèi)正常工作,全套軟件驅(qū)動可以獲得,在I/O和內(nèi)存空間有效的包頁結(jié)構(gòu)操作,可以作為從DMA,全雙工通訊機制,片內(nèi)RAM緩存有收發(fā)框架,帶模擬過濾器的10BASE-T端口,提

3、供自動極性偵查和校正。有10BASE2,10BASE5和10BASE-F的連接單元接口。可編程發(fā)送和接受的特點。支持無磁盤系統(tǒng)直接從PROM啟動,支持邊界掃描和回環(huán)測試,提供了連接狀態(tài)和局域網(wǎng)活動的LED驅(qū)動。備用的睡眠模式。CS8900對于ISA結(jié)構(gòu)來說是一個低價值的以太網(wǎng)控制器,它的高度的集成度提高了需要,而別的控制器需要昂貴的外圍器件。CS8900包括片內(nèi)RAM,10BASE-T發(fā)送接受過濾器,和一個24mA驅(qū)動的ISA總線接口。另外高度的集成,CS8900提供了一個較寬的性能特征和布局選擇。它

4、獨特的包結(jié)構(gòu)自動適應(yīng)改變網(wǎng)絡(luò)交通模式和可利用的系統(tǒng)資源。這樣就增加了系統(tǒng)的效率。采用CS8900,系統(tǒng)工程師可以在10平方厘米板子空間下設(shè)計一個完整的以太網(wǎng)電路。典型連接框圖在PCB圖如下所示下面我們了解一下嵌入式Linux的組成,嵌入式Linux大體可以看作有以下部分組成:初始化啟動代碼:Bootloader嵌入式Linux操作系統(tǒng)內(nèi)核:kernel根文件系統(tǒng):rootfs用戶應(yīng)用程序那么如何建立LINUX操作系統(tǒng)平臺呢?首先安裝交叉編譯器,安裝完交叉編譯器后,我們可以編寫用戶程序了,當用戶程序經(jīng)過

5、交叉編譯器編譯以后如果沒有錯誤便可以直接產(chǎn)生板子上可以跑的文件。此時必須把這個文件放到根文件系統(tǒng)中,通過mkcramfs工具和根文件系統(tǒng)一起進行打包,并下載到板子上去進行燒寫,這樣就可以了。在這里由于Linux文件系統(tǒng)里面已經(jīng)提供了CS8900的讀寫函數(shù),所以在Linux平臺下編寫網(wǎng)絡(luò)通訊不難,在Linux下的開發(fā)工作主要是驅(qū)動程序的編寫。在安裝完交叉編譯器后就是進行編譯移植內(nèi)核了,我所采用的是2.4.18的內(nèi)核。再后就是建立根文件系統(tǒng),我采用現(xiàn)有的根文件系統(tǒng),在其基礎(chǔ)上進行修改編寫程序。在Linux

6、引導啟動時,默認使用的文件系統(tǒng)是根文件系統(tǒng)。其中一般都包括一下一些子目錄和文件:bin/包含基本的命令行實用程序,例如sh,mkfs,fdisk等。dev/列出可用的設(shè)備驅(qū)動程序。etc/目錄主要含有一些系統(tǒng)配置文件,即包含基本的linux配置命令。lib/列出了幾個不同應(yīng)用程序和linux內(nèi)核所需的程序庫。mnt/可拆卸介質(zhì)的公共裝載點。proc/包含當前運行的所有內(nèi)核相關(guān)的進程。sbin/包含許多系統(tǒng)管理命令。usr/存放庫函數(shù),手冊和其他一些文件。根文件系統(tǒng)采用的格式是:cramfs.我們先介紹

7、一下cramfs的特點:Cramfs是一種壓縮式的文件系統(tǒng),它并不需要一次性的將文件系統(tǒng)中的內(nèi)容都解壓到內(nèi)存中,而是在系統(tǒng)需要訪問某個位置的數(shù)據(jù)的時候,馬上計算出該數(shù)據(jù)的cramfs的位置,將其實時地解壓縮到內(nèi)存之中,然后通過對內(nèi)存的訪問來獲取文件系統(tǒng)中需要讀取的數(shù)據(jù)。Cramfs中的解壓縮以及解壓縮之后的內(nèi)存數(shù)據(jù)放置的位置都是由cramfs文件系統(tǒng)本身進行維護的,用戶并不需要了解具體的實現(xiàn)過程,因此這種方式增強了透明度,對開發(fā)人員來說,即方便,又節(jié)約了存儲空間。同時在Windows下自己編一個網(wǎng)絡(luò)通

8、訊平臺如下:在ARM上跑服務(wù)器程序,在PC機上跑客戶端程序,從客戶端的界面上可以看到服務(wù)器的地址為192.168.2.223,端口為8000。同時把PC機的IP改為192.168.2.224,然后在Linux下用命令ping192.168.2.224來測試是否跟PC機連接成功。然后就可以進行程序的測試了,在ARM上運行服務(wù)器程序,在PC機上運行客戶端程序?qū)崿F(xiàn)數(shù)據(jù)的回傳,來測試網(wǎng)絡(luò)傳送有沒有問題。在ARM中的服務(wù)器程序的實現(xiàn)如下:#include

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。