<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > ENC28J60和AS3990的網(wǎng)絡(luò )UHF讀寫(xiě)器設計

ENC28J60和AS3990的網(wǎng)絡(luò )UHF讀寫(xiě)器設計

作者: 時(shí)間:2012-02-28 來(lái)源:網(wǎng)絡(luò ) 收藏

2.2 LwIP協(xié)議棧移植
①完成LwIP協(xié)議內部使用的數據類(lèi)型的定義,如u8_t、s8_t、u16_t、u32_t等。這樣使得協(xié)議棧內部使用的數據類(lèi)型不再受移植平臺處理器和編譯器的影響,增強了協(xié)議棧的可移植性。移植時(shí),根據編譯器和移植平臺事先定義好這些數據類(lèi)型,定義如下:
e.jpg
f.jpg
②定義臨界區保護函數用于開(kāi)關(guān)中斷,定義結構體封裝宏以避免編譯器地址自動(dòng)對齊。LwIP的實(shí)現基于這樣一種機制,即上層協(xié)議已經(jīng)明確知道了下層所傳上來(lái)的數據的結構特點(diǎn),上層直接使用地址計算得到想要的數據,而避免了數據遞交時(shí)的復制與緩沖。所以需定義結構體封裝宏,禁止編譯器的地址自動(dòng)對齊以防止數據結構被打亂。
③實(shí)現與信號量和郵箱操作相關(guān)的函數,比如建立、刪除、等待、釋放等。LwIP使用郵箱和信號量來(lái)實(shí)現上層應用程序與協(xié)議棧間、下層硬件驅動(dòng)與協(xié)議棧問(wèn)的信息交互。這些函數可以通過(guò)調用μC/OS-II提供的信號量、郵箱函數來(lái)實(shí)現。


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>