• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 手機與無線通信 > 設計應用 > TCP/IP協(xié)議單片機在網絡通信中的數(shù)據(jù)傳輸技術

    TCP/IP協(xié)議單片機在網絡通信中的數(shù)據(jù)傳輸技術

    作者: 時間:2011-04-23 來源:網絡 收藏

    ·LINECTL(0112H)

    LINECTL決定CS8900的基本配置和物理接口。在本系統(tǒng)中,設置初始值為00d3H,選擇物理接口為10BASE-T,并使能設備的發(fā)送和接收控制位。

    ·RXCTL(0104H)

    RXCTL控制CS8900接收特定數(shù)據(jù)報。設置RXTCL的初始值為0d05H,接收網絡上的廣播或者目標地址同本地物理地址相同的正確數(shù)據(jù)報。

    ·RXCFG(0102H)

    RXCFG控制CS8900接收到特定數(shù)據(jù)報后會引發(fā)接收中斷。RXCFG可設置為0103H,這樣當收到一個正確的數(shù)據(jù)報后,CS8900會產生一個接收中斷。

    ·BUSCT(0116H)

    BUSCT可控制芯片的I/O接口的一些操作。設置初始值為8017H,打開CS8900的中斷總控制位。

    ·ISQ(0120H)

    ISQ是網卡芯片的中斷狀態(tài)寄存器,內部映射接收中斷狀態(tài)寄存器和發(fā)送中斷狀態(tài)寄存器的內容。

    ·PORT0(0000H)

    發(fā)送和接收數(shù)據(jù)時,CPU通過PORT0傳遞數(shù)據(jù)。

    ·TXCMD(0004H)

    發(fā)送控制寄存器,如果寫入數(shù)據(jù)00C0H,那么網卡芯片在全部數(shù)據(jù)寫入后開始發(fā)送數(shù)據(jù)。

    ·TXLENG(0006H)

    發(fā)送數(shù)據(jù)長度寄存器,發(fā)送數(shù)據(jù)時,首先寫入發(fā)送數(shù)據(jù)長度,然后將數(shù)據(jù)通過PORT0寫入芯片。

    以上為幾個最主要的工作寄存器(為16位),CS8900支持8位模式,當讀或寫16位數(shù)據(jù)時,低位字節(jié)對應偶地址,高位字節(jié)對應奇地址。例如,向TXCMD中寫入00C0H,則可將00h寫入305H,將C0H寫入304H。

    系統(tǒng)工作時,應首先對網卡芯片進行初始化,即寫寄存器LINECTL、RXCTL、RCCFG、BUSCT。發(fā)數(shù)據(jù)時,寫控制寄存器TXCMD,并將發(fā)送數(shù)據(jù)長度寫入TXLENG,然后將數(shù)據(jù)依次寫入PORT0口,如將第一個字節(jié)寫入300H,第二個字節(jié)寫入301H,第三個字節(jié)寫入300H,依此類推。網卡芯片將數(shù)據(jù)組織為鏈路層類型并添加填充位和CRC校驗送到網絡同樣,單片機查詢ISO的數(shù)據(jù),當有數(shù)據(jù)來到后,讀取接收到的數(shù)據(jù)幀。讀數(shù)據(jù)時,單片機依次讀地址300H,301H,300H,301H…。

    3.2 單片機工作流程

    如圖人所示,單片機首先初始化網絡設備。網卡IP地址和物理地址存在X25045中,單片機復位后首先讀取這些數(shù)據(jù)以初始化網絡。

    單片機主要完成數(shù)據(jù)的解包打包。當有數(shù)據(jù)從RJ45過來,單片機對數(shù)據(jù)報進行分析,如果是ARP(物理地址解析)數(shù)據(jù)包,則程序轉入ARP處理程序(因為在網絡上正是ARP協(xié)議將IP地址和物理地址相映射)。如果是IP數(shù)據(jù)包且傳輸層使用UDR協(xié)議,端口正確,則認為數(shù)據(jù)報正確,數(shù)據(jù)解包后,將數(shù)據(jù)部分通過串口輸出。反之,如果單片機從串口收到數(shù)據(jù),則將數(shù)據(jù)按照UDP協(xié)議格式打包,送入CS8900,由CS8900將數(shù)據(jù)輸出到局域網中。

    可以知道,單片機主要處理協(xié)議的網絡層和傳輸層,鏈路層部分由CS8900完成。因單片機將數(shù)據(jù)接收后完整不變地通過串口輸出,所以將應用層交付用戶來處理,用戶可以根據(jù)需求對收到的數(shù)據(jù)進行處理。

    在單片機的程序處理中,包含了完整的APR地址解析協(xié)議。通過在單片機中正確設置網關、子網掩碼等參數(shù),實現(xiàn)了通過局域網單片機與外部因特網上的終端設備的數(shù)據(jù)通信。

    4 應用

    這種嵌入式TCP/IP協(xié)議的單片機系統(tǒng)板,具有成本低、硬件少、占用面積少、傳輸速度快、使用方便等優(yōu)點。適用于現(xiàn)有的網絡傳輸系統(tǒng),有著廣泛的應用前景,特別是數(shù)據(jù)采集、數(shù)據(jù)傳輸領域。目前,在屏幕板數(shù)據(jù)成像、遠程數(shù)據(jù)采集系統(tǒng)中被使用。

    tcp/ip相關文章:tcp/ip是什么


    通信相關文章:通信原理



    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區(qū)

    關閉
    主站蜘蛛池模板: 西峡县| 凤山县| 米脂县| 清苑县| 沙坪坝区| 金门县| 新余市| 会宁县| 娄底市| 全南县| 彰武县| 阳泉市| 武山县| 延庆县| 娄烦县| 文安县| 九寨沟县| 中阳县| 城固县| 宁波市| 中山市| 文安县| 中山市| 龙川县| 龙门县| 洛隆县| 墨脱县| 淮安市| 和顺县| 且末县| 奉化市| 安宁市| 秦皇岛市| 惠州市| 彭阳县| 林甸县| 洛浦县| 格尔木市| 新津县| 余姚市| 都安|