網(wǎng)絡(luò)通信嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)探索
時間:2022-05-30 09:27:31
導(dǎo)語:網(wǎng)絡(luò)通信嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)探索一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
摘要:伴隨著我國互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,信息共享程度也實現(xiàn)了同步提升。在此背景下,衍生出嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)。技術(shù)誕生之初,便在網(wǎng)絡(luò)通信領(lǐng)域內(nèi)顯現(xiàn)出快速發(fā)展的態(tài)勢。為了進(jìn)一步助推嵌入式tcp/ip協(xié)議單片機(jī)技術(shù)的整體發(fā)展,針對此項技術(shù)的概念、特點(diǎn)及其技術(shù)原理進(jìn)行了闡述,針對其技術(shù)設(shè)計及協(xié)議構(gòu)成進(jìn)行了全面系統(tǒng)的研究,結(jié)合一款智能呼吸訓(xùn)練器作為應(yīng)用實例,對此項技術(shù)具體應(yīng)用進(jìn)行了論證分析。
關(guān)鍵詞:嵌入式TCP/IP協(xié)議;單片機(jī)技術(shù);網(wǎng)絡(luò)通信;應(yīng)用策略
伴隨著互聯(lián)網(wǎng)技術(shù)的大力助推,實現(xiàn)了嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)與網(wǎng)絡(luò)通信領(lǐng)域的相互融合,極大地提升了我國網(wǎng)絡(luò)通信技術(shù)的智能化、自動化以及信息化水平。為了能夠更大限度發(fā)揮出嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)的核心優(yōu)勢,現(xiàn)針對其技術(shù)設(shè)計與技術(shù)應(yīng)用進(jìn)行系統(tǒng)深入的探究,以此來推動我國通信事業(yè)及相關(guān)技術(shù)領(lǐng)域的蓬勃發(fā)展。
1嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)概述
1.1嵌入式協(xié)議的概念及特點(diǎn)
嵌入式是以信息交互為目的,將電子設(shè)備以模塊方式嵌入到Internet中的一種技術(shù)。通過嵌入式系統(tǒng)之間的相互連接,便可以同步實現(xiàn)信息交互共享、狀態(tài)控制以及信息通信。近幾年來,嵌入式Internet應(yīng)用范圍越來越廣,應(yīng)用水平也越來越高。在實際應(yīng)用過程中,主要通過相關(guān)計算機(jī)硬件及軟件的聯(lián)合運(yùn)用,滿足人們的信息通信需求。但是,要想實現(xiàn)網(wǎng)絡(luò)化通信,還需要在原有硬件和軟件的基礎(chǔ)上,運(yùn)行嵌入式TCP/IP協(xié)議,再通過網(wǎng)絡(luò)接口控制器實現(xiàn)Internet連接。嵌入式系統(tǒng)與PC機(jī)之間的差異之處主要體現(xiàn)在二者的運(yùn)行方式上,而且嵌入式協(xié)議可以充分滿足系統(tǒng)運(yùn)行需求。與傳統(tǒng)協(xié)議相比,嵌入式協(xié)議具有更強(qiáng)的實效性與可靠性。嵌入式協(xié)議可以廣泛適用于多種特殊領(lǐng)域,并且在實際應(yīng)用的過程中呈現(xiàn)出較強(qiáng)的可裁剪性與靈活性。通常情況下,一個完整的TCP/IP協(xié)議具有較大規(guī)模,所以在使用之前,需要依據(jù)實際需求對其進(jìn)行精簡,而嵌入式協(xié)議了因此呈現(xiàn)出更強(qiáng)的多樣化特點(diǎn)[1]。
1.2單片機(jī)嵌入式TCP/IP協(xié)議技術(shù)
單片機(jī)的全稱是單片微型計算機(jī),在專業(yè)技術(shù)領(lǐng)域內(nèi),還將其稱作為MCU微控制單元。從單片機(jī)的性能上看,具有結(jié)構(gòu)簡單、數(shù)據(jù)處理效率高、功能性強(qiáng)等特點(diǎn)。目前,單片機(jī)已經(jīng)在工業(yè)制造、日常生活等眾多領(lǐng)域內(nèi)得到了廣泛應(yīng)用。比如公交IC卡、全自動洗衣機(jī)等,其主要功能的發(fā)揮就是得益于單片機(jī)技術(shù)的運(yùn)用。單片機(jī)嵌入式TCP/IP協(xié)議技術(shù)的主要功能是實現(xiàn)數(shù)據(jù)傳輸,在其結(jié)構(gòu)體系中,主要包含應(yīng)用層、傳輸層、網(wǎng)絡(luò)層和網(wǎng)絡(luò)接口層這4個重要部分。每一層的功能作用為:應(yīng)用層負(fù)責(zé)對接收到的數(shù)據(jù)進(jìn)行解釋,比較常見的類型包括HTTP、Telnet、FTP等;傳輸層的功能是獲取數(shù)據(jù)信息;網(wǎng)絡(luò)層是將信息發(fā)送到TCP/IP網(wǎng)絡(luò)中任意一臺計算機(jī)上;鏈路層的主要功能是接收和傳輸IP數(shù)據(jù)包。嵌入式TCP/IP協(xié)議棧之所以能夠在單片機(jī)上得以應(yīng)用,主要通過系統(tǒng)硬件和軟件之間的嵌入式結(jié)合,從而使系統(tǒng)性能得到整體優(yōu)化。這就意味著給單片機(jī)通信技術(shù)創(chuàng)造了一個極其適宜的運(yùn)行環(huán)境,促進(jìn)該項技術(shù)呈現(xiàn)出更加強(qiáng)大的智能化應(yīng)用水平[2]。
2嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)構(gòu)成
2.1硬件構(gòu)成
在選擇單片機(jī)時,因為單片機(jī)是通信系統(tǒng)的核心部分,而且遠(yuǎn)程通信主要通過RTL8019AS以太網(wǎng)對芯片來實現(xiàn),所以需要同時考慮TCP/IP的特點(diǎn)、協(xié)議組容量較大、系統(tǒng)運(yùn)行速度較高等眾多因素。為了滿足使用需求,建議選擇選用X5045單片機(jī)。此類單片機(jī)在實際應(yīng)用的過程中,表面出較為理想的外部擴(kuò)展功能,并且在存儲IP地址以及配置信息方面也具備明顯優(yōu)勢。不僅如此,X5045單片機(jī)還可以對系統(tǒng)電壓進(jìn)行實時監(jiān)控。圖1所示的是系統(tǒng)硬件結(jié)構(gòu)示意圖,圖1中可以看到,在硬件設(shè)計的過程中,單片機(jī)連接端口發(fā)揮著物理介質(zhì)的作用。憑借這一作用,使嵌入式系統(tǒng)功能得以實現(xiàn)。另外,在針對硬件構(gòu)成進(jìn)行整體設(shè)計時,必然會涉及到多款硬件設(shè)備之間的組合應(yīng)用。這就需要相關(guān)設(shè)計人員從提高系統(tǒng)性能的角度出發(fā),對硬件系統(tǒng)進(jìn)行科學(xué)合理的組合設(shè)計,確保最終呈現(xiàn)出來的硬件系統(tǒng)具備極強(qiáng)的功能性與實用性,為軟件系統(tǒng)的高速運(yùn)行創(chuàng)造一個良好環(huán)境。
2.2系統(tǒng)軟件
在應(yīng)用單片機(jī)嵌入式TCP/IP協(xié)議技術(shù)時,需要針對系統(tǒng)硬件及軟件進(jìn)行合理配置。同時,確保網(wǎng)卡控制器驅(qū)動程序設(shè)計以及TCP/IP協(xié)議設(shè)計的科學(xué)合理性。TCP/IP協(xié)議作為系統(tǒng)中的上層協(xié)議,本身又具備較強(qiáng)的獨(dú)立性。所以,在針對TCP/IP協(xié)議進(jìn)行編程設(shè)計時,不僅要賦予其較強(qiáng)的功能價值,還要考慮如何實現(xiàn)其功能性。由于其存在較強(qiáng)的獨(dú)立性,所以在關(guān)聯(lián)性方面不必給予過多關(guān)注。在功能設(shè)計方面,需要同時針對眾多模塊展開設(shè)計,而且每一個模塊都具有各自不同的功能屬性。比如通過ARP協(xié)議,可將IP地址轉(zhuǎn)化成物理地址,并且針對ARP進(jìn)行全方位解析與智能化管理,并且使緩存列表得到更新;通過ICMP協(xié)議,可針對數(shù)據(jù)流中的錯誤進(jìn)行精準(zhǔn)診斷;通過IP模塊,可以快速找到發(fā)送信息的路徑;通過UDP模塊,實現(xiàn)對報文快速發(fā)送與接收;TCP需要通過通信雙方建立的數(shù)據(jù)連接,并且通過一定的順序號獲取信息。在應(yīng)用系統(tǒng)軟件之初,需要事先針對PING表、ARP表、初始化TCP進(jìn)行初始化處理。之后,再進(jìn)入主程序中完成TCP定時保活以及ARP表的更新[3]。
3應(yīng)用系統(tǒng)工作流程
如圖2所示,應(yīng)用系統(tǒng)需要按照下以流程進(jìn)行工作:(1)當(dāng)系統(tǒng)完成初始化之后,數(shù)據(jù)采集模塊便開始執(zhí)行數(shù)據(jù)采集任務(wù);MCU負(fù)責(zé)對采集數(shù)據(jù)接收。在此環(huán)節(jié)中,需要先查看ESP8266是否已經(jīng)連接到網(wǎng)絡(luò)當(dāng)中。如果未連接,需要使用無線WiFi的AT指令實現(xiàn)網(wǎng)絡(luò)連接;(2)查詢是否與后臺服務(wù)器建立起TCP/IP通訊連接。如果未建立,運(yùn)用AT指令進(jìn)行連接;(3)完成連接之后,再使用MCU串口發(fā)送與該數(shù)據(jù)長度相關(guān)的數(shù)據(jù)信息。完成上述流程之后,MCU即可根據(jù)服務(wù)器返回狀態(tài),開展一下步操作[4]。
4單片機(jī)嵌入式TCP/IP協(xié)議棧設(shè)計
4.1ARP協(xié)議
ARP協(xié)議功能,主要通過對網(wǎng)絡(luò)層當(dāng)中各種數(shù)據(jù)的接收與返回這一過程得以實現(xiàn)。與此同時,還需要將那些含有目標(biāo)IP地址的消息發(fā)送到主機(jī)上。但是,當(dāng)ARP協(xié)議收到返回消息以后,需要將該IP地址和物理地址存儲到本機(jī)中。雖然采用的是緩存方式,但在系統(tǒng)中存儲時間較長。另外,由于單片機(jī)嵌入系統(tǒng)在執(zhí)行遠(yuǎn)程控制時,具有很強(qiáng)的被動性。因此,系統(tǒng)有必要在網(wǎng)絡(luò)接口處做出相應(yīng)的說明。通過這種方式,確保數(shù)據(jù)信息的及時有效傳遞。在運(yùn)用地址協(xié)議時,還需要關(guān)注以下事項:(1)如果系統(tǒng)正處于初始化階段,則需要結(jié)合初始化進(jìn)度,發(fā)送ARP協(xié)議請求,如果遇到不符合要求的地址協(xié)議,又需要對其進(jìn)行取舍。以此來保證信息的有效性;(2)必要時,需要對IP地址以外的信息進(jìn)行解析,從而實現(xiàn)有效信息的高效利用,同時保證信息內(nèi)容的完整性。
4.2IP協(xié)議
通過IP協(xié)議,數(shù)據(jù)包可以通過多種方式在所有網(wǎng)絡(luò)主機(jī)上進(jìn)行傳輸。從這一工作方式上看,IP協(xié)議的功能與路由器之間有著較高的相似度。另外,IP協(xié)議還可以針對數(shù)據(jù)進(jìn)行優(yōu)化重組。但是,由于在其操作過程中不需要連接,所以數(shù)據(jù)傳輸過程中安全可靠性一般。
4.3UDP協(xié)議
UDP協(xié)議的作用是將應(yīng)用程序傳遞到特定IP層。但是,由于UDP協(xié)議與IP協(xié)議一樣,不具備較強(qiáng)的可靠性。所以,由其傳遞的數(shù)據(jù)是否能夠真正到達(dá)目的地,存在一定的風(fēng)險性。但是,相對于TCP協(xié)議而言,UDP協(xié)議更加簡潔,將其應(yīng)用于設(shè)計文中的協(xié)議和通信中,具有較高的科學(xué)合理性。
5實例應(yīng)用
為了使嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)得到更加深入細(xì)致的研究,使其在網(wǎng)絡(luò)通信中的功能價值得到更大呈現(xiàn),引用了一則智能呼吸訓(xùn)練器案例,力爭借助此案例進(jìn)行更加直觀具象的認(rèn)證分析。在智能呼吸訓(xùn)練器工作的過程中,MCU作為主控單元,負(fù)責(zé)對患者進(jìn)行呼吸訓(xùn)練時產(chǎn)生的數(shù)據(jù)進(jìn)行收集,再通過串口AT指令對ESP8266模塊進(jìn)行控制,從而與后臺服務(wù)器之間建立TCP/IP連接。最終將數(shù)據(jù)上傳至后臺服務(wù)器系統(tǒng)中,在系統(tǒng)數(shù)據(jù)庫中,對數(shù)據(jù)進(jìn)行長期存儲,以備后續(xù)查詢、調(diào)用、開展數(shù)據(jù)分析時使用[5]。
5.1建立TCP/IP連接
在使用客戶端發(fā)送數(shù)據(jù)之前,需要先建立起TCP/IP連接。在建立此連接時,需使用MCU對服務(wù)器進(jìn)行遠(yuǎn)程操控,具體的操作步驟為:(1)創(chuàng)建一個socket;(2)針對需要連接的服務(wù)器IP地址和端口屬性進(jìn)行設(shè)置;(3)運(yùn)用函數(shù)connect與服務(wù)器之間進(jìn)行遠(yuǎn)程連接,進(jìn)而實現(xiàn)數(shù)據(jù)的接收與發(fā)送。另外,服務(wù)器也需要建立TCP/IP協(xié)議,其操作步驟為:(1)創(chuàng)建一個socket;(2)使用函數(shù)bind對IP地址和端口信息進(jìn)行綁定;(3)開啟系統(tǒng)監(jiān)聽功能;(4)對客戶端發(fā)送的數(shù)據(jù)進(jìn)行接收與發(fā)送。案例服務(wù)器采用的是EasySwoole框架,在此服務(wù)器所提供的APIEasySwooleEvent功能當(dāng)中,可針對mainServerCreate事件進(jìn)行回調(diào)注冊以及服務(wù)監(jiān)聽,并且開啟TCP服務(wù)[6]。工作人員便可以隨時監(jiān)聽客戶端的連接、斷開進(jìn)行操控,還可實時接收來自于客戶端的數(shù)據(jù)信息。
5.2數(shù)據(jù)上傳方式
將采集到的患者呼吸數(shù)據(jù),以數(shù)據(jù)包的形式上傳到系統(tǒng)數(shù)據(jù)庫中。在每一個數(shù)據(jù)包的幀頭和幀尾,都需增加一個相應(yīng)的標(biāo)識符。從幀頭標(biāo)識符的開始至標(biāo)識符的結(jié)尾,所有字節(jié)累加之后,取32位,即4個字節(jié)。MCU通過AT指令,實現(xiàn)ESP8266的調(diào)用,再借助函數(shù)send進(jìn)行數(shù)據(jù)發(fā)送,直至所有數(shù)據(jù)全部上傳完畢。針對每一個數(shù)據(jù)包,使用ID加以區(qū)分,服務(wù)器負(fù)責(zé)針對CRC32正確與否進(jìn)行檢驗。如果發(fā)現(xiàn)錯誤代碼,需將其返回給客戶端,當(dāng)客戶端接收到錯誤代碼之后,再按照ID數(shù)據(jù)包重新發(fā)送正確代碼。
5.3通信協(xié)議測試
研究人員通過實驗,對數(shù)據(jù)傳輸?shù)陌踩煽啃耘c完整性進(jìn)行了測試,還針對通信協(xié)議的壓力進(jìn)行了相關(guān)測試。具體的測試方法為:首先,數(shù)據(jù)完整性測試。先斷開呼吸訓(xùn)練器的網(wǎng)絡(luò)連接,采用離線方式訓(xùn)練100組,獲得相應(yīng)的呼吸數(shù)據(jù)。此時,再將呼吸器與網(wǎng)絡(luò)相連接,MCU將未連網(wǎng)之前收集到的呼吸數(shù)據(jù)一次性上傳完畢。重復(fù)3次上述操作,并且對3次100組呼吸數(shù)據(jù)進(jìn)行上傳,最終針對上傳數(shù)據(jù)進(jìn)行核對。經(jīng)核對,確認(rèn)所有訓(xùn)練數(shù)據(jù)均具有較高的完整性與準(zhǔn)確性。最后,壓力測試。本次測試選用網(wǎng)絡(luò)調(diào)試助手做為測試工具,選用TCPClient作為協(xié)議類型。在測試中,先將后臺服務(wù)器IP地址和端口號錄入到遠(yuǎn)程主機(jī)中,之后點(diǎn)擊“連接”鍵。此后,在數(shù)據(jù)發(fā)送窗口進(jìn)行呼吸數(shù)據(jù)的填寫,并且在“循環(huán)周期”選項中進(jìn)行勾選,將循環(huán)時間設(shè)定為10mS。設(shè)置完畢后,連續(xù)點(diǎn)擊5次“發(fā)送”鍵。重復(fù)上述操作步驟3次,之后針對服務(wù)器數(shù)據(jù)庫中的數(shù)據(jù)完整性與正確性進(jìn)行復(fù)核,最終確認(rèn)真實數(shù)據(jù)與測試工具數(shù)據(jù)相一致。通過上述兩項測試,判斷該系統(tǒng)具備較高的穩(wěn)定性、安全可靠性,充分呈現(xiàn)出TCP/IP協(xié)議在網(wǎng)絡(luò)傳輸應(yīng)用中的作用價值。
6結(jié)語
嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在通信領(lǐng)域內(nèi)呈現(xiàn)出越來越高的使用率與應(yīng)用效果。尤其隨著人們對于網(wǎng)絡(luò)通信質(zhì)量、信息傳輸效率要求的不斷提升,嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)必然會在不久的將來,在通信領(lǐng)域內(nèi)實現(xiàn)普及應(yīng)用。屆時,不僅推進(jìn)自身應(yīng)用水平的大幅提升,在功能價值上還將獲得更大幅度的創(chuàng)新發(fā)展。同時,伴隨著我國互聯(lián)網(wǎng)技術(shù)的日趨成熟與完善,與之相關(guān)的各項技術(shù)水平也將實現(xiàn)同步提升。不僅可以滿足人們的信息共享需求,還將促進(jìn)嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)與通信領(lǐng)域的全面融合。從而推動嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)會朝著更加實用、高效、安全、智能、經(jīng)濟(jì)的方向邁進(jìn)。
參考文獻(xiàn)
[1]劉敏.嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的運(yùn)用[J].信息記錄材料,2021,22(09):161-162.
[2]黃丹輝.網(wǎng)絡(luò)通信中嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)的應(yīng)用研究[J].信息與電腦(理論版),2020,32(22):184-185.
[3]劉靚.淺談嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的應(yīng)用[J].計算機(jī)產(chǎn)品與流通,2020,(10):74.
[4]袁勇.嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的應(yīng)用[J].現(xiàn)代信息科技,2020,4(02):82-84.
[5]焦毅霞.嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的應(yīng)用研究[J].現(xiàn)代制造技術(shù)與裝備,2018,(07):114-115.
[6]劉銘威,德湘軼.嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的應(yīng)用[J].南方農(nóng)機(jī),2018,49(11):122.
[7]劉銘威,德湘軼.嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的應(yīng)用[J].南方農(nóng)機(jī),2018,49(11):122.
[8]張楠瀾,孫歆鈺.嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的應(yīng)用[J].南方農(nóng)機(jī),2019,50(07):116,123.
作者:衛(wèi)肖璐 單位:西安工商學(xué)院