嵌入式TCP/IP技術(shù)在恒溫振蕩器中的應(yīng)用
本文為了保證實(shí)時(shí)監(jiān)控恒溫振蕩器的轉(zhuǎn)速、溫度等參數(shù),采用了以ARM7處理器為核心的嵌入式系統(tǒng)與TCP/IP 網(wǎng)絡(luò)互聯(lián)的方式進(jìn)行通信訪問,使上位機(jī)能夠?qū)崟r(shí)地掌握恒溫振蕩器的各種參數(shù)狀況,保證對(duì)恒溫振蕩器工作過程實(shí)時(shí)遠(yuǎn)程監(jiān)控,不需要浪費(fèi)人力和時(shí)間到現(xiàn)場勘查數(shù)據(jù)。
1 總體設(shè)計(jì)及系統(tǒng)架構(gòu)
本系統(tǒng)使用的是以ARM7為內(nèi)核、主頻達(dá)72 MHz的32位微處理器LPC2368,可以滿足高速實(shí)時(shí)處理及大容量數(shù)據(jù)傳輸?shù)囊螅揖哂袃?nèi)置的以太網(wǎng)模塊,該模塊包含一個(gè)功能齊全的10 Mb/s或100 Mb/s以太網(wǎng)媒體訪問控制器(MAC),這個(gè)以太網(wǎng)MAC通過使用加速的DMA硬件來提供優(yōu)化的性能[2]。系統(tǒng)還采用了美國國家半導(dǎo)體公司的DP83848單路10 Mb/s或100 Mb/s以太網(wǎng)收發(fā)器和支持10 Mb/s和100 Mb/s自適應(yīng)的網(wǎng)絡(luò)連接速度的以太網(wǎng)接口RJ45來組成網(wǎng)絡(luò)通信模塊,同時(shí)此主控芯片也控制溫度和速度等其他多個(gè)模塊。整個(gè)設(shè)計(jì)體系具有強(qiáng)大的網(wǎng)絡(luò)處理能力,系統(tǒng)框圖如圖1所示。本文引用地址:http://butianyuan.cn/article/152306.htm
2 網(wǎng)絡(luò)通信模塊設(shè)計(jì)
2.1 以太網(wǎng)硬件實(shí)現(xiàn)
本系統(tǒng)CPU采用飛利浦公司的LPC2368,它是以ARM7為內(nèi)核主頻達(dá)72 MHz的32位微處理器,內(nèi)部集成了一個(gè)以太網(wǎng)模塊,支持10 Mb/s或100 Mb/s PHY器件,帶有分散/集中式DMA的DMA管理器以及幀描述符數(shù)組,通過緩沖和預(yù)取來實(shí)現(xiàn)存儲(chǔ)器通信的優(yōu)化,并且發(fā)送和接收均支持多播幀、廣播幀和超長幀傳輸,允許幀長度為任意值。通過標(biāo)準(zhǔn)的媒體獨(dú)立接口(MII)或標(biāo)準(zhǔn)的簡化MII接口可連接外部PHY芯片,該特性是通過軟件來選擇,然后可對(duì)PHY寄存器進(jìn)行訪問。
網(wǎng)卡芯片DP83848是10 Mb/s/100 Mb/s單路物理層以太網(wǎng)收發(fā)器件,包含1個(gè)智能電源關(guān)閉,具有低功耗性能。在本系統(tǒng)中DP8384S工作在50 MHz晶振頻率下,具有能量檢測(cè)模式的特性,可為系統(tǒng)提供一個(gè)智能節(jié)能工作模式。它是一個(gè)鏈路可控制節(jié)能模式,目的是當(dāng)在線上檢測(cè)不到活動(dòng)的時(shí)候,器件能夠進(jìn)入休眠的低功耗狀態(tài),即狀態(tài)-能量檢測(cè)模式。能量檢測(cè)功能通過寄存器設(shè)定來控制,在電源狀態(tài)發(fā)生轉(zhuǎn)換的時(shí)候,電源上電/重置算法遵循其正常流程,而且能量檢測(cè)模式并不會(huì)影響之前設(shè)定的工作模式。在電源狀態(tài)發(fā)生轉(zhuǎn)換時(shí),器件將會(huì)保留其原先的模式(強(qiáng)制模式或者自動(dòng)協(xié)商、MDI或者M(jìn)DIX)。能量檢測(cè)算法能夠在不同的電源狀態(tài)之間自動(dòng)或手動(dòng)轉(zhuǎn)換,當(dāng)一個(gè)電源狀態(tài)的改變未成功或者發(fā)生太多誤差事件時(shí),能量檢測(cè)邏輯能夠發(fā)出中斷信號(hào)。能量檢測(cè)邏輯在采取動(dòng)作之前需要多倍數(shù)據(jù)和誤差事件來調(diào)節(jié)一些噪聲。計(jì)數(shù)器深度則由寄存器設(shè)置來確定,并默認(rèn)其為包含數(shù)據(jù)和誤差的一個(gè)事件。
最后與常用的以太網(wǎng)接口RJ45連接,該接口支持10 Mb/s和100 Mb/s自適應(yīng)的網(wǎng)絡(luò)連接速度[3]。本系統(tǒng)設(shè)計(jì)的以太網(wǎng)硬件電路連接如圖2所示。
2.2 系統(tǒng)通信協(xié)議和通信過程
2.2.1 以太網(wǎng)數(shù)據(jù)幀傳輸和接收
在以太網(wǎng)中數(shù)據(jù)傳遞靠的是MAC地址,而不是IP地址,IP地址和MAC地址具有映射關(guān)系。1個(gè)以太網(wǎng)包包括:1個(gè)導(dǎo)言區(qū)(preamble)、1個(gè)起始幀定界符和1個(gè)以太網(wǎng)幀。以太網(wǎng)幀由目標(biāo)地址、源地址、1個(gè)可選的VLAN區(qū)、長度/類型區(qū)、有效載荷以及幀校驗(yàn)序列組成,如圖3所示。每一個(gè)以太網(wǎng)幀均由1個(gè)或多個(gè)片段組成,每個(gè)片段對(duì)應(yīng)1個(gè)描述符。以太網(wǎng)模塊中的DMA管理器能夠?qū)?個(gè)以太網(wǎng)幀的多個(gè)片段進(jìn)行分散(用于接收)和集中(用于發(fā)送)[4]。
傳輸?shù)囊蕴W(wǎng)包中7個(gè)字節(jié)的導(dǎo)言區(qū)用來使接收方的時(shí)鐘和發(fā)送方的時(shí)鐘同步,然后再由幀分界符來表述1個(gè)數(shù)據(jù)幀的起始,進(jìn)而進(jìn)入數(shù)據(jù)幀的傳輸通信過程,數(shù)據(jù)幀主要是通過目標(biāo)地址和源地址的位置建立通信。6個(gè)字節(jié)的目標(biāo)地址是指目的站點(diǎn)的MAC地址,表明要把數(shù)據(jù)送到哪個(gè)站點(diǎn)。若目標(biāo)地址第1位為0,則這個(gè)字段指定了一個(gè)特定的站點(diǎn);若為1,則表示目標(biāo)地址為一組地址,而該地址是事先定義好的;若所有位全為1,則表示接收者為局域網(wǎng)上的所有站點(diǎn),即該地址是一個(gè)廣播地址。6個(gè)字節(jié)的源地址是指源主機(jī)的MAC地址,表明該幀來自哪個(gè)主機(jī)。VLAN是一種將局域網(wǎng)(LAN)設(shè)備從邏輯上劃分成一個(gè)個(gè)網(wǎng)段,從而實(shí)現(xiàn)虛擬工作組(單元)的數(shù)據(jù)交換技術(shù),如果選用基于MAC地址的VLAN的方法就根據(jù)每個(gè)主機(jī)的MAC地址來劃分,即對(duì)每個(gè)MAC地址的主機(jī)都配置分組,它實(shí)現(xiàn)的機(jī)制就是每一塊網(wǎng)卡都對(duì)應(yīng)唯一的MAC地址,跟蹤屬于VLAN MAC的地址。在幀傳輸?shù)淖詈筮M(jìn)行幀校驗(yàn),使用4個(gè)字節(jié)的循環(huán)冗余效驗(yàn)碼進(jìn)行錯(cuò)誤檢驗(yàn)。
tcp/ip相關(guān)文章:tcp/ip是什么
評(píng)論