摘要:隨著我國計算機信息技術(shù)的不斷發(fā)展,我國已經(jīng)正式進入了后PC時代,而這一時代的主要特征就是嵌入式系統(tǒng)與互聯(lián)網(wǎng)的完美結(jié)合。在這種網(wǎng)絡(luò)環(huán)境的發(fā)展下,本文就PIC單片機的網(wǎng)絡(luò)嵌入式系統(tǒng)進行了具體研究,希望能夠以此進一步推動我國后PC時代的發(fā)展。
關(guān)鍵字:PIC單片機;網(wǎng)絡(luò)嵌入式系統(tǒng);實時監(jiān)控
前言:
所謂網(wǎng)絡(luò)嵌入式系統(tǒng),是一種能夠?qū)⒉僮飨到y(tǒng)與功能軟件集成于計算機硬件系統(tǒng)中的,軟硬件一體化計算機系統(tǒng),現(xiàn)已在我國工業(yè)通訊、航空、軍事等多種行業(yè)進行應(yīng)用。在本文的研究中,筆者選擇了Microchip公司的PIC18F2455單片機,設(shè)計了一種能夠通過互聯(lián)網(wǎng)進行無縫監(jiān)控的網(wǎng)絡(luò)嵌入式系統(tǒng),并希望能夠通過單片機的優(yōu)勢,保證這一網(wǎng)絡(luò)嵌入式系統(tǒng)能夠具備穩(wěn)定性強、功耗低的特點。
1 硬件設(shè)計
1.1 PIC單片機的優(yōu)勢分析
在設(shè)計中使用的PIC18F2455單片機,本身屬于8位處理器中的佼佼者,其本身不僅擁有出色的計算性能,還具備價格優(yōu)惠的特點,在應(yīng)用PIC18F2455單片機進行具體的網(wǎng)絡(luò)嵌入式系統(tǒng)設(shè)計時,其還具備著雙速啟動、指令集擴展、存儲器耐擦寫能力較強等多種應(yīng)用優(yōu)勢,對于本文中提到的無縫監(jiān)控網(wǎng)絡(luò)嵌入式系統(tǒng)的實現(xiàn),有著不俗的推動作用[1]。
1.2 主處理器的軟件設(shè)計
在無縫監(jiān)控網(wǎng)絡(luò)嵌入式系統(tǒng)的主處理器設(shè)計中,我們需要設(shè)法滿足這一系統(tǒng)的數(shù)據(jù)尋址與中斷處理,由于采用的PIC單片機本身是基于哈佛結(jié)構(gòu)的存儲系統(tǒng),所以其本身的程序存儲器與數(shù)據(jù)存儲器是分開的,所以在設(shè)計環(huán)節(jié)中,我們需要對其程序存儲器與數(shù)據(jù)存儲器進行分別設(shè)計完成系統(tǒng)的數(shù)學(xué)尋址工作,而在中斷處理工作中,我們需呀為其設(shè)計專用的數(shù)據(jù)中斷處理系統(tǒng)。
1.2.1 程序存儲器的設(shè)計
由于我們使用的PIC單片機本身具備24KB閃存存儲器,所以我們可以通過程序計數(shù)器進行偏移量的計算或是使用表讀和表寫,完成具體的程序存儲器的合理利用。
1.2.2 數(shù)據(jù)存儲器的設(shè)計
由于使用的PIC單片機通過PAM方式進行數(shù)據(jù)存儲,所以我們必須對其進行尋址機制的設(shè)計,以此保證其本身對于地址的快速存取。在本文的設(shè)計中,為了實現(xiàn)主處理器中數(shù)據(jù)存儲器的高校尋址,本文采用直接尋址與間接尋址兩種尋址辦法共同運用的方式,進行這一環(huán)節(jié)的設(shè)計。這里的直接尋址是指利用BSR直接賦值進行尋址,而間接尋址則是通過文件選擇寄存器FSR進行動態(tài)更新變量地址的存取[2]。
1.2.3 數(shù)據(jù)中斷處理系統(tǒng)的設(shè)計
在我們使用的PIC單片機中,其本身具有對個中斷源與中斷優(yōu)先級功能,我們只要通過這一PIC單片機的功能進行具體設(shè)計,就可以給大多數(shù)中斷源提供高、低優(yōu)先級的中斷服務(wù)。在這系統(tǒng)的具體設(shè)計中,高優(yōu)先級中斷事件能夠?qū)φ谶M行的低優(yōu)先級進行中斷。在具體的設(shè)計環(huán)節(jié)中,我們需要將Status、WREG和BSR保存在快速寄存器堆棧中,以此節(jié)省中斷服務(wù)本應(yīng)需要對較大存儲空間,不過這種辦法只適用于高優(yōu)先級中斷。由于堆棧寄存器無法可靠的存儲低優(yōu)先級中斷的數(shù)據(jù),這點我們需要在無縫監(jiān)控網(wǎng)絡(luò)嵌入式系統(tǒng)的使用中予以注意。
2 網(wǎng)絡(luò)控制器高效工作的實現(xiàn)
為了實現(xiàn)無縫監(jiān)控網(wǎng)絡(luò)嵌入式系統(tǒng)中網(wǎng)絡(luò)控制器的高效工作,我國還需要運用ENC28J60以太網(wǎng)控制器,并通過其與PIC單片機的相互配合,實現(xiàn)網(wǎng)絡(luò)控制器的高效工作。由于ENC28J60以太網(wǎng)控制器本身通過靜態(tài)RAM進行數(shù)據(jù)的存儲,所以我們需要為其讀緩沖器RBM設(shè)計程序代碼,在這一設(shè)計中,為了保證數(shù)據(jù)接收不會超過ENC28J60以太網(wǎng)控制器的處理極限,我們需要設(shè)計變量作為計數(shù)器,以此實現(xiàn)對冗長數(shù)據(jù)的忽略,實現(xiàn)網(wǎng)絡(luò)控制器的高效工作。
在網(wǎng)絡(luò)控制器高效工作實現(xiàn)環(huán)節(jié)中,我們還需要對網(wǎng)絡(luò)控制器本身的發(fā)送和接收數(shù)據(jù)包功能進行設(shè)計。
2.1 劃分ENC28J60以太網(wǎng)控制器的緩沖區(qū)
在發(fā)送和接收數(shù)據(jù)包這一環(huán)節(jié)中,我們需要對ENC28J60以太網(wǎng)控制器的緩沖區(qū)進行平均分配,這一分配是由于發(fā)送與接收兩方面工作均衡所致。在本文的數(shù)據(jù)包接收環(huán)節(jié)中,采用了一種二次調(diào)用RBM的方法,而實現(xiàn)這一方法需要在PIC單片機中開辟接收數(shù)據(jù)包的緩沖區(qū),以此實現(xiàn)對RAM的二次調(diào)用,以此保證數(shù)據(jù)包接收的可靠。值得注意的是,在主控制器處理完一個數(shù)據(jù)包后,應(yīng)自動釋放已處理數(shù)據(jù)占用的緩沖空間,保證主控制器能夠進行連續(xù)運行[3]。
2.2 發(fā)送數(shù)據(jù)包
在數(shù)據(jù)包的發(fā)送環(huán)節(jié)中,ENC28J60以太網(wǎng)控制器中的MAC會在發(fā)送是自動生成前導(dǎo)符和幀起始定界符,PIC單片機也會自動生成幀字段,并與MAC生成的CRC字段一并寫入緩沖存儲器中,等待具體的發(fā)送。值得注意的是,由于發(fā)送數(shù)據(jù)包的數(shù)據(jù)緩沖發(fā)送區(qū)有著4KB的大小,所以這一環(huán)節(jié)我們通過窗口讀取的方法進行了數(shù)據(jù)發(fā)送的分流[4]。
結(jié)論:本文基于PIC單片機進行了無縫監(jiān)控的網(wǎng)絡(luò)嵌入式系統(tǒng)的設(shè)計,并詳細論述了無縫監(jiān)控的網(wǎng)絡(luò)嵌入式系統(tǒng)硬件設(shè)計與網(wǎng)絡(luò)控制器環(huán)節(jié)的設(shè)計內(nèi)容,希望能夠以此推動我國網(wǎng)絡(luò)嵌入式系統(tǒng)的發(fā)展,最終推動我國后PC時代的再一次進步。
參考文獻:
[1]戴力,劉篤仁.一種基于PIC單片機的嵌入式Internet實現(xiàn)[J]
[2]于強.基于MIcrochipPIC24F單片機的無線數(shù)據(jù)傳輸電路軟硬件設(shè)計[J].電子世界,2012,02:26-27.
[3]姜毅,朱民耀,陳榮林,崔微.基于PIC32單片機的嵌入式遠程控制器的設(shè)計[J].工業(yè)控制計算機,2016,04:103-104+109.
[4]滕贏,夏明超.基于PIC18F87J60的微網(wǎng)電能質(zhì)量監(jiān)測網(wǎng)絡(luò)系統(tǒng)設(shè)計與實現(xiàn)[J].電網(wǎng)與清潔能源,2011,01:25-28.
作者簡介:
劉靚(1982—)男、漢族,湖南省漣源市,貴州電子信息職業(yè)技術(shù)學(xué)院,副教授,工學(xué)碩士,單片機、嵌入式系統(tǒng)。