亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于32位處理器的網(wǎng)絡(luò)驅(qū)動及協(xié)議棧研究

        2016-04-12 00:00:00曹紹華史永宏
        現(xiàn)代電子技術(shù) 2016年19期

        摘 要: 隨著嵌入式Web的飛速發(fā)展,以Internet為中間環(huán)節(jié)使不同嵌入式設(shè)備進(jìn)行通信的需求日益強(qiáng)烈,特別是在工業(yè)監(jiān)控領(lǐng)域。采用項目組自行研發(fā)的內(nèi)嵌有MAC模塊的定制版32位處理器作為硬件平臺,以此為基礎(chǔ)設(shè)計了基于描述符的DMA傳輸機(jī)制的網(wǎng)絡(luò)驅(qū)動。同時,為了實(shí)現(xiàn)穩(wěn)定數(shù)據(jù)通信及Web瀏覽器功能,對嵌入式TCP/IP協(xié)議棧LwIP進(jìn)行了無操作系統(tǒng)移植,并對協(xié)議棧內(nèi)部的數(shù)據(jù)管理方式及底層接口進(jìn)行詳細(xì)分析。測試結(jié)果表明,LwIP協(xié)議棧適用于工業(yè)遠(yuǎn)程監(jiān)控,能夠在實(shí)現(xiàn)穩(wěn)定通信的同時兼顧速度與小內(nèi)存消耗。

        關(guān)鍵詞: LwIP 協(xié)議棧; 網(wǎng)絡(luò)驅(qū)動; 嵌入式系統(tǒng); 片上可編程系統(tǒng)

        中圖分類號: TN915.04?34; TM417 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2016)19?0011?05

        Abstract: With the rapid development of the embedded Web, the communication demand among different embedded devices through the Internet becomes increasingly intense, especially in the industrial monitoring field. The customized 32?bit processor embedding MAC module was taken as the hardware platform, which was developed by the project group itself. And on this basis, the network drive of descriptor?based DMA transfer mechanism was designed. In order to realize the functions of stable data communication and Web browser, the protocol stack LwIP of the embedded TCP/IP was performed with transplantation without operating system. The data management method and bottom?layer port inside the protocol stack are analyzed in detail. The test results show that the LwIP is suitable for the the industrial remote monitoring, and can realize stable communication while ensuring the high speed and low memory consumption.

        Keywords: LwIP; network drive; embedded system; programmble system on chip

        0 引 言

        嵌入式設(shè)備正在深度改變?nèi)藗兊娜粘I钆c社會生產(chǎn),小到生活中的各式智能家電,大到國防軍用航空航天設(shè)備。嵌入式Internet正在覆蓋更多的終端設(shè)備,而在眾多Internet通信協(xié)議中TCP/IP協(xié)議是目前運(yùn)用次數(shù)最多,應(yīng)用范圍最廣的一種標(biāo)準(zhǔn)協(xié)議[1]?;谏鲜鎏攸c(diǎn),本文旨在為某研究所定制一款具有自主知識產(chǎn)權(quán)的定制版32位處理器,要求具備網(wǎng)絡(luò)訪問功能,能實(shí)現(xiàn)實(shí)時通信。此款處理器主要用于遠(yuǎn)程工業(yè)控制,有低功耗、實(shí)時通信的特點(diǎn)[2]。

        1 硬件驗證板卡設(shè)計

        系統(tǒng)采用32位處理器,工作在100 MHz主頻,擁有256 KB的指令和數(shù)據(jù)內(nèi)存以及32 KB的系統(tǒng)內(nèi)存。它還包括:片上PLL,16通道、12位、5 MSPS ADC,10M/100M RMII接口的MAC,定時器,看門狗,64個GPIO,UART,SPI,I2C,LPC等多種功能豐富的外設(shè),本芯片采用SMIC 0.13 μm工藝,144TQFP封裝。

        為了驗證SoC芯片的性能和各個功能模塊,設(shè)計了一個硬件驗證板卡,如圖1所示。該板卡擁有完備的電源解決方案、復(fù)位管理和外設(shè)支持,滿足系統(tǒng)工作需求;設(shè)計有基于SPI總線的FLASH存儲器,基于I2C總線的E2PROM;擁有溫度測量模塊、以太網(wǎng)模塊,對外的串口通信模塊,用于驗證各個模塊的功能;另外,測試板卡將處理器的各個管腳引出,能夠同時滿足裸片測試和封裝后的成品芯片測試。

        處理器內(nèi)部集成有MAC模塊,需要一個PHY接口與以太網(wǎng)進(jìn)行連接。在硬件板卡設(shè)計中,使用RMII接口進(jìn)行通信的LAN8720搭建以太網(wǎng)通信模塊。

        2 協(xié)議層網(wǎng)絡(luò)接口設(shè)計

        底層網(wǎng)絡(luò)接口的設(shè)計包括協(xié)議層與驅(qū)動層兩部分內(nèi)容,其中協(xié)議層的設(shè)計與協(xié)議本身的關(guān)系較為密切,包括了協(xié)議棧的初始化及網(wǎng)絡(luò)接口相關(guān)內(nèi)容的初始化,這一部分的編寫具有可移植性,而驅(qū)動層的設(shè)計則與硬件驅(qū)動更為接近,需根據(jù)不同網(wǎng)絡(luò)設(shè)備分別進(jìn)行設(shè)計[3]。協(xié)議棧的入口函數(shù)為lwip_init_task,所有與協(xié)議棧移植相關(guān)的文件都由此開始,此函數(shù)結(jié)構(gòu)如圖2所示。

        網(wǎng)絡(luò)接口的設(shè)置,首先需要設(shè)置網(wǎng)關(guān)、IP地址及子網(wǎng)掩碼,而后根據(jù)網(wǎng)絡(luò)接口情況通過nerif_add函數(shù)設(shè)置網(wǎng)絡(luò)接口信息。在本工程中只使用一個網(wǎng)絡(luò)接口,因此只需添加一個netif即可。函數(shù)netif_add的主要功能就是添加新的接口并設(shè)置該接口的netif信息,指定注冊函數(shù),因此首先為當(dāng)前網(wǎng)口申請全局netif結(jié)構(gòu)體[4]。

        3 驅(qū)動層LwIP接口的設(shè)計與實(shí)現(xiàn)

        3.1 網(wǎng)卡驅(qū)動設(shè)計實(shí)現(xiàn)

        3.1.1 網(wǎng)卡的數(shù)據(jù)存儲

        在網(wǎng)卡驅(qū)動編寫時最核心的部分是數(shù)據(jù)的存儲與傳輸方式。在SoC設(shè)計中,根據(jù)需求MAC被集成在處理器中。但在實(shí)際編程設(shè)置過程中仍可將MAC部分看做一個獨(dú)立芯片,其同CPU之間的數(shù)據(jù)交換也與其他網(wǎng)卡芯片和主機(jī)間的數(shù)據(jù)傳遞并無太大出入[5]。在MAC同CPU進(jìn)行數(shù)據(jù)交換時,不論是發(fā)送還是接收都需要使用到描述符鏈表及數(shù)據(jù)緩沖區(qū)。以發(fā)送為例,描述符與數(shù)據(jù)緩沖區(qū)被同時存儲在系統(tǒng)共享RAM中,數(shù)據(jù)緩沖區(qū)儲存著需要被發(fā)送的數(shù)據(jù),而描述符則相當(dāng)于一個指針指向被描述的數(shù)據(jù)緩沖區(qū)。

        描述符有兩種不同的構(gòu)造形式,即鏈型與環(huán)形。但不論是哪種構(gòu)造形式,在RAM中都以相同的特殊寄存器形式存在,且一幀數(shù)據(jù)可占用多個描述符,但一個描述符僅能描述一幀數(shù)據(jù)。對于鏈型描述符而言,其第二個數(shù)據(jù)緩沖區(qū)用作指針指向下一個描述符。在環(huán)形結(jié)構(gòu)中,相鄰兩個描述符之間的距離是在狀態(tài)寄存器CSR0中提前設(shè)置的,因此第二個緩沖區(qū)也能夠存儲數(shù)據(jù)。但由于環(huán)形結(jié)構(gòu)的自身特點(diǎn),當(dāng)使用這種形式描述數(shù)據(jù)時,主機(jī)必須提供至少兩個串聯(lián)好的描述符以供識別。描述符的首地址需存儲在狀態(tài)寄存器中,CSR3存放接收描述符地址,CSR4則用于發(fā)送。本文中接收與發(fā)送數(shù)據(jù)緩沖區(qū)都是用鏈型描述符。

        發(fā)送與接收數(shù)據(jù)的過程有一些不同,在發(fā)送過程中,主機(jī)通過改變OWN位將第一個描述符交給MAC,由MAC發(fā)送其所指向的數(shù)據(jù)。同時主機(jī)依然保持對下一個描述符的所有權(quán),這樣可以給主機(jī)準(zhǔn)備第二包數(shù)據(jù)的時間。而在接收過程中則相對簡單,通常來說描述符都由MAC掌握,除非此時主機(jī)為掛起狀態(tài)。

        發(fā)送數(shù)據(jù)FIFO最多可存放兩幀的數(shù)據(jù),這兩幀中包括當(dāng)前正在等待發(fā)送的那一幀。而接收數(shù)據(jù)FIFO最多可存放四幀數(shù)據(jù),這四幀中包括正在傳輸?shù)哪且粠琜6]。不論是發(fā)送還是接收數(shù)據(jù)的流向總是在數(shù)據(jù)接口、FIFO及MII接口之間進(jìn)行,只是方向相反。實(shí)際上在向PHY發(fā)送或接收數(shù)據(jù)時使用的接口為RMII,但作為MII的子分類,本文統(tǒng)一使用MII進(jìn)行描述。

        3.1.2 內(nèi)部操作流程

        (1) DMA控制器

        數(shù)據(jù)在網(wǎng)卡與主機(jī)間通過DMA傳輸,這樣可以有效地避免多次內(nèi)存拷貝帶來的時間及內(nèi)存開銷,大大提高了數(shù)據(jù)的傳輸效率。同時DMA可以通過CSR0.1位被設(shè)置為兩種模式:當(dāng)此位置1時,接收與發(fā)送享有同等的優(yōu)先級,DMA以輪詢的方式交替服務(wù)于二者之間;當(dāng)設(shè)置為0時,若非當(dāng)前正在發(fā)送則接收的優(yōu)先級將高于發(fā)送,但不論接收還是發(fā)送進(jìn)程阻塞時間都不得多于兩次。每次通過DMA傳輸時的數(shù)據(jù)傳輸量也可以設(shè)為單字傳輸或自定義寬度傳輸,這里使用初始化設(shè)置,不定義最大寬度,因此由傳輸FIFO的大小來決定。

        (2) 發(fā)送流程

        發(fā)送過程共有三種狀態(tài),包括運(yùn)行、暫停及掛起。停止?fàn)顟B(tài)只在軟件及硬件復(fù)位或收到暫停命令時才會發(fā)生。在發(fā)送正常運(yùn)行時,會按描述符指向的數(shù)據(jù)順序進(jìn)行傳輸,此時若發(fā)送進(jìn)程被掛起,發(fā)送流程將停留在下一描述符的位置,當(dāng)再次運(yùn)行時會從當(dāng)前指向的描述符繼續(xù)進(jìn)行。而一旦進(jìn)入發(fā)送流程,除非主機(jī)改寫了CSR4,即保存發(fā)送鏈表基地址的寄存器,則基地址寄存器將保持為提取下一個描述符地址的狀態(tài)。因此對CSR4進(jìn)行改寫時MAC必須為暫停狀態(tài)。

        (3) 接收流程

        與發(fā)送過程類似,接收過程也分為三種狀態(tài),包括運(yùn)行、暫停及掛起。在軟、硬件復(fù)位及收到暫停命令時,發(fā)送將會暫停直到下次運(yùn)行命令到來。當(dāng)進(jìn)入發(fā)送狀態(tài)時,MAC從接收描述符列表上獲取描述符且無論是否在鏈路上有等待被接收的數(shù)據(jù)。若當(dāng)前沒有任何一幀數(shù)據(jù)待接收,則MAC保持等待狀態(tài),一旦有效幀出現(xiàn)接收過程則正式開始將數(shù)據(jù)填入當(dāng)前描述符所指向的緩沖區(qū)。當(dāng)此幀數(shù)據(jù)傳輸結(jié)束或數(shù)據(jù)緩沖區(qū)已滿,當(dāng)前描述符中的OWN位將被清零用來表示當(dāng)前描述符已被關(guān)閉。與此同時,下一個準(zhǔn)備好的描述符將被獲取,數(shù)據(jù)會繼續(xù)填充緩沖區(qū)。

        3.1.3 網(wǎng)卡驅(qū)動設(shè)計

        在開始實(shí)際的網(wǎng)卡驅(qū)動程序編寫前,首先需要進(jìn)行頭文件Nmac.h的編寫。這個文件規(guī)范了后續(xù)所有寄存器的操作,將所涉及到的寄存器編寫為結(jié)構(gòu)體[7]。其中每個寄存器的每一位被獨(dú)立定義,這樣一來在后續(xù)的寄存器操作中,可隱藏按位讀寫帶來的程序不易讀不易改等問題。

        網(wǎng)卡的所有控制狀態(tài)寄存器,如表1所示??芍苯佑芍鳈C(jī)進(jìn)行操作,且每個寄存器都為32位,4字節(jié)對齊,因此在頭文件中首先將這12個寄存器集合成結(jié)構(gòu)體。

        接收描述符被分為4個32位數(shù)RDES0~RDES3,其中RDES2與RDES3存放接收緩沖區(qū)的地址。但根據(jù)選用鏈?zhǔn)交颦h(huán)形結(jié)構(gòu)的不同選擇,RDES3分別存放下一個描述符的地址或接收緩沖區(qū)地址。RDES0的最高位是所有權(quán)位,其他位為狀態(tài)控制位。

        與接收描述符相同,發(fā)送描述符同樣以4個32位數(shù)存放,其定義與接收描述符一起在初始化MAC時完成,但區(qū)別于接收描述符,為了節(jié)省內(nèi)存發(fā)送描述符僅定義一個,循環(huán)使用。描述符在程序中的描述方式與寄存器及每位的操作與之前提到的寄存器相同,但在接收描述符中增加了pbuf項,方便存儲,MAC從PHY中接收到數(shù)據(jù)包后就直接將被發(fā)送至主機(jī)。由于使用的芯片為定制芯片,因此需要先對網(wǎng)卡進(jìn)行測試,在測試正常后再進(jìn)行LwIP的后續(xù)移植。

        網(wǎng)卡驅(qū)動的編寫主要有兩個部分包括初始化函數(shù)和中斷處理函數(shù)。初始化函數(shù)MAC_Init首先分別初始化收發(fā)描述符,均使用鏈型結(jié)構(gòu)。其中接收描述符設(shè)為一個數(shù)組,其中包含兩個描述符,互為首尾,為了節(jié)省內(nèi)存,發(fā)送描述符只設(shè)置一個。在描述符初始化時,需同時設(shè)置好數(shù)據(jù)緩沖區(qū),并將緩沖區(qū)的地址賦值給RDES3,RDES2則指向下一個描述符或置0,其流程如圖3所示。

        由于接收與發(fā)送共用一個中斷,因此當(dāng)中斷產(chǎn)生時需先對其類型進(jìn)行判斷。CSR5為狀態(tài)寄存器,其中CSR5.7為接收中斷狀態(tài)位表示有一幀數(shù)據(jù)已被接收,而CSR5.0則為發(fā)送中斷狀態(tài)位代表數(shù)據(jù)已發(fā)送完成。其流程如圖4所示。

        3.2 頭文件移植與數(shù)據(jù)準(zhǔn)備

        3.2.1 內(nèi)部數(shù)據(jù)類型定義

        頭文件cc.h最主要的功能在于它需要根據(jù)編譯器和處理器定義協(xié)議棧中所需的數(shù)據(jù)類型。此外,也會完成一些相關(guān)的宏及大小端等的定義。通常來說,在C語言的語言體系下,struct會自動4字節(jié)對齊。然而在協(xié)議棧中這一做法卻會導(dǎo)致無法讀取對應(yīng)長度的數(shù)據(jù),因此需要增加關(guān)鍵詞packed取消對齊[8],這里值得注意的是,在不同編譯器版本下此關(guān)鍵詞可能會有變化。此外,還需定義大小端及錯誤代碼,這里根據(jù)處理器選擇小端,使用arch.h中LwIP內(nèi)核自帶的錯誤代碼。

        3.2.2 配置文件

        LwIP在設(shè)計之初就為用戶提供了便捷的配置方案,這個文件位于LwIP的源碼目錄下,即“opt.h”。在“opt.h”中定義了包括buffer大小、數(shù)量、TCP窗口大小等一系列關(guān)鍵配置數(shù)據(jù)作為默認(rèn)選項。當(dāng)然為方便起見用戶也可根據(jù)自身的需求進(jìn)行更改,因此就有了“l(fā)wipopts.h”文件,在這個文件中定義的數(shù)據(jù)將會覆蓋“opt.h”中的默認(rèn)設(shè)置,其他位在“l(fā)wipopts.h”中的設(shè)置項則會沿用“opt.h”中的配置。由于“opt.h”中的默認(rèn)設(shè)置采取了能使LwIP正常運(yùn)行的最小值。所以當(dāng)硬件平臺性能相對較弱時可直接沿用“opt.h”作為配置文件,這也就是選用默認(rèn)配置的主要原因,但實(shí)際上可保留“l(fā)wipopts.h”用做選項開關(guān)便于調(diào)試。

        3.3 LwIP底層移植

        3.3.1 網(wǎng)絡(luò)接口初始化

        low_level_init是LwIP在文件ethernetif.c中給出的第一個函數(shù)框架,它主要完成對網(wǎng)卡的初始化定義,此外還根據(jù)網(wǎng)卡的特點(diǎn),對LwIP中的網(wǎng)絡(luò)接口管理結(jié)構(gòu)體netif中一些與網(wǎng)卡有關(guān)的參數(shù)進(jìn)行定義。其中設(shè)置的參數(shù)包括網(wǎng)卡MAC地址長度,網(wǎng)卡MAC地址,最大傳輸包大小,廣播、ARP、網(wǎng)絡(luò)接口鏈路使能。

        同時還在函數(shù)中引用Mac_Init對網(wǎng)卡進(jìn)行初始化,由于加入了LwIP的內(nèi)存管理內(nèi)容,因此還需對測試版的Mac_Init函數(shù)進(jìn)行修改。用數(shù)組代替的收發(fā)內(nèi)存替換為動態(tài)申請的數(shù)據(jù)包pBuf中的payload,這樣在程序開始運(yùn)行后,首先就為接收數(shù)據(jù)申請出了兩塊緩沖區(qū)。同時,由于需要對接收到的數(shù)據(jù)進(jìn)行一些必要的預(yù)處理,還在原有的描述符中增加了Pbuf,即指向緩沖區(qū)的指針。

        3.3.2 數(shù)據(jù)發(fā)送數(shù)據(jù)

        low_level_output函數(shù)接收由IP層傳入的數(shù)據(jù),并將數(shù)據(jù)傳入MAC。此時并不需要確認(rèn)數(shù)據(jù)長度是否大于64 B,網(wǎng)卡會根據(jù)其長度自動調(diào)節(jié)。由于需要增加pbuf的引用次數(shù),因此為了防止在計數(shù)時發(fā)生中斷導(dǎo)致計數(shù)錯誤,需將中斷進(jìn)行臨時關(guān)閉,計數(shù)后開啟。low_level_output會將承載有數(shù)據(jù)的數(shù)據(jù)緩沖區(qū)指針傳遞給網(wǎng)卡發(fā)送函數(shù)Mac_Copyout,并將數(shù)據(jù)寫入已在初始化時就申請好的描述符中進(jìn)行發(fā)送。發(fā)送結(jié)束時會觸發(fā)發(fā)送中斷,使程序繼續(xù)執(zhí)行。中斷結(jié)束后將當(dāng)前的緩沖區(qū)pbuf釋放,則發(fā)送流程結(jié)束。

        3.3.3 數(shù)據(jù)接收

        接收線程的起始點(diǎn)由接收中斷開始,由于不能長期占用中斷,當(dāng)發(fā)現(xiàn)為接收中斷時就會立即跳出中斷進(jìn)入數(shù)據(jù)處理函數(shù)RX_Processing,其流程如圖5所示。

        4 協(xié)議棧功能測試

        4.1 Ping測試

        Ping程序是一個專門測試主機(jī)是否可正常通信的測試程序,此程序首先向主機(jī)發(fā)送ARP請求,若得到正常響應(yīng)后再向主機(jī)發(fā)送ICMP報文并請求應(yīng)答,因此Ping命令若能夠得到正常響應(yīng),則代表ARP,ICMP及IP協(xié)議工作正常。

        4.2 Echo協(xié)議測試

        Echo協(xié)議即應(yīng)答協(xié)議,該協(xié)議作用于應(yīng)用層,主要用于對TCP協(xié)議進(jìn)行測試。首先需要在LwIP協(xié)議棧初始化后增加Echo的初始化,對TCP進(jìn)行監(jiān)聽,此后使用telnet命令,測試端口為自定義端口,端口號為2000。通過實(shí)驗可得telnet命令的輸出結(jié)果,給鍵盤輸入任意字母并顯示,屏幕中將輸出該字母,即TCP正常工作,Echo協(xié)議可以正常運(yùn)行。

        4.3 Web測試

        該測試板在投入使用后可能需要增加Web瀏覽功能,還需進(jìn)行Web功能的測試。在此次測試中使用了由LwIP提供的socket接口編寫的HTTP程序進(jìn)行測試,建立一個Web服務(wù)器。在瀏覽器中輸入測試板的IP地址后若能夠正常顯示測試頁面則具備Web瀏覽功能。通過對該測試板進(jìn)行簡單的網(wǎng)頁瀏覽,表明測試板具備Web瀏覽功能。

        4.4 速度及內(nèi)存占用測試

        網(wǎng)絡(luò)通信速度達(dá)到2.19 MB/s,即17.52 Mb/s符合速度要求。實(shí)際上本芯片的MAC核能夠?qū)崿F(xiàn)百兆網(wǎng)的技術(shù)指標(biāo),但受限于處理器的響應(yīng)速度,因此僅能達(dá)到2.19 MB/s。

        由于測試板內(nèi)存有限,需對程序進(jìn)行結(jié)構(gòu)優(yōu)化,刪除部分不常用的如SNMP,DNS,DHCP等功能。同時通過減少如pbuf預(yù)留個數(shù)等自定義項,以達(dá)到減少內(nèi)存消耗的目的。其量化結(jié)果可在當(dāng)前工程的編譯記錄文件tb.map中獲得。其中P1顯示的數(shù)值為程序代碼所占用空間的大小,而P2為程序的內(nèi)存消耗總值。同時,還可以根據(jù)該文件查看各部分內(nèi)存消耗的大小,以此進(jìn)行程序的剪裁。

        程序的內(nèi)存消耗情況中標(biāo)出的部分即為總消耗值約13 KB,小于要求數(shù)值。其中消耗內(nèi)存最多的為memp,這部分的內(nèi)存消耗主要由數(shù)據(jù)存儲產(chǎn)生,在程序中pbuf大小及個數(shù)的申請留有大量余量,因此在實(shí)際工作中可根據(jù)數(shù)據(jù)傳輸量的大小做出相應(yīng)調(diào)整,內(nèi)存消耗還有很大的減少空間。

        5 結(jié) 論

        通過移植研究TCP/IP協(xié)議棧LwIP,將TCP/IP協(xié)議棧與嵌入式設(shè)備結(jié)合起來,使項目組自行開發(fā)的32位定制處理器實(shí)現(xiàn)了網(wǎng)絡(luò)通信功能,并提出了一種基于無操作系統(tǒng)移植LwIP的方法,為使用自制處理器為內(nèi)核的硬件平臺提供了技術(shù)方案。

        參考文獻(xiàn)

        [1] 厲魯衛(wèi),包建榮,蔣苗林,等.基于ARM嵌入式Web服務(wù)器的研究與設(shè)計[J].計算機(jī)工程與設(shè)計,2004,25(5):757?760.

        [2] 張毅,趙國鋒.嵌入式Internet的幾種接入方式比較[J].重慶郵電學(xué)院學(xué)報(自然科學(xué)版),2002,14(4):83?86.

        [3] 孔棟,鄭建宏.嵌入式TCP/IP協(xié)議棧LwIP在ARM平臺上的移植與應(yīng)用[J].通信技術(shù),2008,41(6):38?40.

        [4] 張旭,高強(qiáng),張芳.TCP/IP協(xié)議棧在嵌入式系統(tǒng)中的移植實(shí)現(xiàn)[J].科技資訊,2008(12):93.

        [5] 張翠,鄧志良.LwIP協(xié)議棧在μC/OS?Ⅱ上的移植和應(yīng)用[J].微計算機(jī)信息,2010,26(8):84?85.

        [6] 陳鵬.基于通用架構(gòu)的一體化紅外圖像信息處理器設(shè)計[J].現(xiàn)代電子技術(shù),2016,39(3):39?42.

        [7] 蘇勇輝.基于ARM微處理器TCP/IP協(xié)議棧LwIP實(shí)現(xiàn)[J].國外電子測量技術(shù),2009,28(10):76?78.

        [8] 鐘達(dá),郭偉,習(xí)勇,等.基于SB3500多核處理器的軟件無線電系統(tǒng)設(shè)計[J].現(xiàn)代電子技術(shù),2014,37(21):5?8.

        人妻丝袜无码国产一区| 日本超级老熟女影音播放| 久久影院午夜理论片无码| 久久亚洲色www成人欧美| 好爽受不了了要高潮了av| 久久久精品国产亚洲av网| 丰满人妻猛进入中文字幕| 亚洲国产精品ⅴa在线观看| 天天狠狠综合精品视频一二三区| 亚洲精品熟女乱色一区| 中国老熟女露脸老女人| 一本色道无码道在线观看| 97超在线视频免费| 中文字幕你懂的一区二区| 久久精品中文字幕女同免费| 免费1级做爰片1000部视频| 99热这里只有精品69| 日本中文字幕人妻精品| 中文区中文字幕免费看| 1000部夫妻午夜免费| 亚洲国产精品久久九色| 亚洲av熟女少妇一区二区三区| 国产精品极品美女自在线观看免费| 中文字幕精品无码一区二区| 亚洲人成在线播放a偷伦| 国产成人精品一区二三区孕妇| 亚瑟国产精品久久| AV永久天堂网| 亚洲大胆美女人体一二三区| 亚洲s色大片在线观看| 波多野吉衣av无码| 亚洲国产一区二区三区,| 国产精品亚洲三级一区二区三区| 中文字幕亚洲乱码熟女在线| 亚洲AV无码乱码1区久久| 99麻豆久久精品一区二区| 国模冰莲极品自慰人体| 精品一区二区三区在线观看视频| 亚洲视频在线观看青青草| 少妇精品亚洲一区二区成人| 国产乱人伦av在线a|