日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網(wǎng)
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
基于單片機的嵌入式SNMP代理器設計與實現(xiàn)
基于單片機的嵌入式SNMP代理器設計與實現(xiàn)
 更新時間:2008-8-17 19:48:15  點擊數(shù):10
【字體: 字體顏色

0 引言

SNMP(簡單網(wǎng)絡管理協(xié)議)應用廣泛,功能強大,只要管理軟件駐留有MIB(管理信息庫),并且擁有適當?shù)臋嘞?管理器就可以訪問SNMP代理器。SNMP一般用于計算機網(wǎng)絡和電信網(wǎng)絡,本文提出了用SNMP進行控制。由于其傳輸媒介是Internet,所以傳輸距離不受限制,這相對于其他工業(yè)控制總線有不可比擬的優(yōu)勢,SNMP最大的優(yōu)點是協(xié)議簡潔,適合嵌入式應用。SNMP體系可擴展性強,只要將新的MIB裝載在管理軟件上就可以實現(xiàn)對新的終端的控制與訪問,本文介紹了一種基于廉價的微控制器的實現(xiàn)嵌入式代理器的方案,以微處理器核心實現(xiàn)相關硬件及軟件。

1 SNMP體系結(jié)構

SNMP的體系結(jié)構(見圖1)以簡單的查詢/回答模型為基礎,發(fā)送查詢的用戶為管理者,SNMP的服務器(代理器)回答查詢。

SNMP在TCP/IP體系中屬于應用層協(xié)議。為了實現(xiàn)SNMP體系,就必須實現(xiàn)從應用層到物理層的所有要用到的協(xié)議,管理器在PC機上,代理器處于監(jiān)測現(xiàn)場,代理器駐留在被管理系統(tǒng)的MIB,我們以單片機為核心來實現(xiàn)嵌入式代理器,嵌入式代理器要對現(xiàn)場采集到的數(shù)據(jù)進行分析,如果有異常情況發(fā)生,通過發(fā)送Trap報文給管理器,告知網(wǎng)管有異常情況發(fā)生,在報文中還帶有異常情況的相關信息,網(wǎng)管可以根據(jù)這一信息進行相應的處理,在一些情況下,代理器將數(shù)據(jù)保存起來,以備管理器的查詢。

2 嵌入式代理器的硬件實現(xiàn)

我們設計的基于SNMP的控制系統(tǒng)原理見圖2。

控制現(xiàn)場的信號采集由A/D轉(zhuǎn)換模塊輸入單片機。單片機對信號進行處理,并且執(zhí)行SNMP代理器的任務,硬件部分主要包括A/D、串口、以太網(wǎng)、小邏輯、單片機、監(jiān)控信號采集、電源及監(jiān)控等模塊,本文著重介紹與嵌入式SNMP代理器密切相關的部分。

2.1 串口模塊

單片機使用的是TTL電平,而RS-23協(xié)議所使用的電平不同,所以需要進行電平轉(zhuǎn)換,通過MAX232實現(xiàn)電平轉(zhuǎn)換。

2.2 A/D模塊

A/D模塊主要負責采集外部監(jiān)控信號,采用AD0809可以采集8個通道的數(shù)據(jù),信號變化的動態(tài)范圍并不大,利用這一特點,合理設置參考電壓,可以提高分辨率,從而用低廉的器件實現(xiàn)很好的性能,ADC0809的兩個參考電壓都可以通過電位器調(diào)節(jié),為了保證系統(tǒng)的精度,參考電壓必須穩(wěn)定,為此采用MAXIM的MAX875作為參考電壓源。另外需要注意的是:輸入到A/D轉(zhuǎn)換器的參考電壓經(jīng)過電位器的分壓,為了使參考電壓穩(wěn)定,必須選用高精度、高穩(wěn)定性的電位器。

2.3 以太網(wǎng)模塊

以太網(wǎng)模塊實現(xiàn)與以太網(wǎng)的通信,采用RealTek的RTL8019芯片實現(xiàn)。

RTL8919A(見圖3)有3種工作方式:跳線方式,網(wǎng)卡的I/O和中斷由跳線決定;即插即用方式,由軟件進行自動配置plug and play;免跳線方式,網(wǎng)卡的I/O和中斷由外接的93C46中的內(nèi)容決定。

RTL8019AS的引腳65(JP)決定了網(wǎng)卡的工作方式,引腳65腳(JP)是輸入引腳,當引腳65為低電平時,8019工作在即插即用方式或免跳線方式,具體由93C46中的內(nèi)容決定,在嵌入式應用中如果可以不使用93C46,則可以降低成本,同時減少連線,我們把引腳65接高電平(VCC),使用跳線方式。那么,網(wǎng)卡的I/O和中斷就不是由93C46的內(nèi)容決定,這是不需要使用93C46。

引腳64(AUI)決定使用AUI還是BNC接口。BNC接口方式支持8線雙絞線或同軸電纜。高電平時使用AUI接口;懸空為低電平,使用BNC接口。我們一般使用BNC,將該引腳懸空。
網(wǎng)絡接口類型由引腳74(PL0)、引腳77(PL1)決定。將PL0、PL1懸空,選擇自動檢測模式,芯片自動檢測接口類型是用同軸電纜或雙絞線,然后進行工作。

RTL89的IOCS16是16位I/O的選擇引腳。當網(wǎng)卡上電復位時,該引腳為網(wǎng)卡的輸入,如果該引腳為高電平,網(wǎng)卡將選擇16位的模式,如果該引腳為低電平,網(wǎng)卡將選擇8位模式,51單片機是8位數(shù)據(jù),所以用電阻R10下拉,因此在復位時該引腳為低電平,網(wǎng)卡選擇8位模式。

AD0-AD7是網(wǎng)卡的8位數(shù)據(jù)總線,接單片機的P0口,RESDRV(引腳33(RESET))接單片機的T0(P3.4),單片機用P3.4來復位網(wǎng)卡。IRQ9接單片機的INT0(P3.2),IRQ9是網(wǎng)卡的中斷9,接到單片機的中斷0上,IOR,IOW接到單片機的P3.6,P3.7(/WR,/R)。

2.4 小邏輯模塊

小邏輯模塊主要實現(xiàn)一些邏輯功能,A/D的時鐘由單片機的ALE信號8分頻,各個外部器件的片選功能都由小邏輯模塊實現(xiàn),雖然功能不復雜,如果用小邏輯器件實現(xiàn),就需要較多的器件,器件利用率低,在電路板上占據(jù)較大的空間,與要求體積小的嵌入式應用相矛盾。采用可編程邏輯器件可以解決這些問題。

2.5 單片機模塊

單片機模塊由單片機以及復位和看門狗電路、外部擴展RAM、時鐘電路等外圍電路構成,看門狗電路可以提高現(xiàn)場惡劣條件的干擾,當系統(tǒng)受到外界干擾使得單片記的程序跑飛,看門狗沒有喂狗信號,看門狗電路將單片機和RTL8019復位,重新開始運行。

3 軟件設計與實現(xiàn)

由于SNMP的編解碼需要占用很多CPU時間,并且在單片機上還要實現(xiàn)A/D數(shù)據(jù)采集轉(zhuǎn)換、以太網(wǎng)通信、串口通信等功能,這就使得協(xié)調(diào)各個功能非常困難,因此,我們選用Micro-C/OS51作為單片機的操作系統(tǒng),Micro-C/OS51是嵌入式實時操作系統(tǒng)Micro-C/ OS在51單片機上的移植代碼,實時系統(tǒng)能夠很好地提高CPU的效率,并且是多任務系統(tǒng),能夠協(xié)調(diào)多個任務,我們將單片機要實現(xiàn)的功能分為人機交互任務、A/D處理任務和SNMP處理任務。
 
3.1 人機交互任務

人機交互任務是通過單片機的串口來實現(xiàn)與用戶的交互,用戶通過串口電纜將PC機與單片機的串口連接,通過PC機的超級終端可以使用命令行的方式對代理器的有關參數(shù)(網(wǎng)關地址、主機地址等)進行配置,還可以察看相關的運行信息,主要的命令行有:

Host 配置本機IP地址

Gateway 配置網(wǎng)關地址

Mask 配置子網(wǎng)掩碼

Snmphost 配置SNMP管理器IP地址

Macadr 配置本機物理地址

ping 可以用這個命令來檢測網(wǎng)絡鏈路

clear 清除電話顯示屏的內(nèi)容

人機交互任務實現(xiàn)的主要思路就是單片機接收用戶鍵盤輸入的字符存入命令緩沖區(qū),并回顯到屏幕,當用戶按下回車鍵,觸發(fā)軟件狀態(tài)機狀態(tài)變遷,從輸入態(tài)轉(zhuǎn)移到命令解釋態(tài),然后根據(jù)用戶命令調(diào)用相關子程序執(zhí)行相關操作,執(zhí)行完畢后重新回到輸入態(tài)。

人機交互程序由詞表、取詞子程序、狀態(tài)機框架程序(輸入回顯和命令解釋執(zhí)行)命令相關子程序組成,詞表就是命令語句的集合,取詞子程序從命令行語句中提取單詞并存入詞表,同時進行匹配檢查和詞法分析,輸入回顯程序循環(huán)檢查用戶鍵盤輸入,命令解釋程序調(diào)用取詞子程序分析用戶命令行輸入,根據(jù)詞表第1個單詞在散轉(zhuǎn)表中的位置調(diào)用相應執(zhí)行子程序處理命令,命令解釋程序向相應的命令相關子程序傳入詞表指針,具體執(zhí)行由用戶自行決定,由命令相關資程序返回后重新回到命令輸入態(tài),完成一次輸入執(zhí)行全過程,此過程周而復始地循環(huán)執(zhí)行。

3.2 A/D處理任務

A/D轉(zhuǎn)換需要一定的時間,讀取A/D轉(zhuǎn)換的結(jié)果有3種方式:

a)采用中斷方式,讀取數(shù)據(jù)及時,同時頻繁的中斷處理增加了CPU的負擔。

b)查詢方式,造成CPU時間的浪費,大大地降低了CPU效率;

c)等待方式,看起來沒有優(yōu)點,但是在UC/OS51操作系統(tǒng)中,到任務調(diào)度的一個很重要的思想就是延時,高優(yōu)先級的任務執(zhí)行一段時間后,再延時一段時間,以便低優(yōu)先級的任務執(zhí)行,這樣將等待的時刻放到A/D處理任務的延時時刻,可以起到一舉多得的作用,我們正是采用這種方式。

3.3 SNMP處理任務

當接收到UDP數(shù)據(jù)包、處理UDP報頭后,由函數(shù)udp_recv()處理SNMP數(shù)據(jù)包。其基本思想是:解碼SNMP消息,如果解碼正確,判斷該Community(共同體)是否具有進行所請求操作的權限,如果沒有權限,則拋棄該報文,并且給管理器發(fā)送Trap報文。如果權限正確,則從代理器上的MIB表中查找所請求的對象。找到后,執(zhí)行相應操作,同時生成響應報文。然后進行SNMP編碼,如果編碼無誤,則將這個SNMP報文交給上一層協(xié)議處理,SNMP處理流程見圖4。

[1] [2]  下一頁
  • 上一篇: AVR單片機的RTOS-AVRX應用
  • 下一篇: 基于MCU的家庭防盜報警系統(tǒng)
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網(wǎng)友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1