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

    EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 以 μC/OSII 為平臺的數(shù)據(jù)采集系統(tǒng)設(shè)計

    以 μC/OSII 為平臺的數(shù)據(jù)采集系統(tǒng)設(shè)計

    作者: 時間:2012-02-09 來源:網(wǎng)絡(luò) 收藏

    無線的應(yīng)用范圍非常廣泛,涉及電力、水利、交通和安防等行業(yè)。通用分組無線業(yè)務(wù)GPRS(General Packet Radio Service),由Nokia、Ericsson等公司開發(fā)。該技術(shù)建立在GSM網(wǎng)絡(luò)的基礎(chǔ)上,被稱為2.5代移動通信技術(shù),它將無線通信與Internet緊密結(jié)合,是一種先進的、全新的無線網(wǎng)絡(luò)承載手段,具有獨特優(yōu)勢。隨著GPRS技術(shù)在移動通信領(lǐng)域的發(fā)展,為傳輸及監(jiān)控提供了一種新的高性價比的數(shù)據(jù)通信方案。

    本文引用地址:http://www.czjhyjcfj.com/article/149744.htm

    同時,嵌入式以其高效的開發(fā)、低廉的成本、方便的使用和維護等優(yōu)點受到信息業(yè)界的廣泛推崇。嵌入式在工農(nóng)業(yè)控制領(lǐng)域主要用于對現(xiàn)場的監(jiān)視和控制。而傳統(tǒng)監(jiān)控產(chǎn)品的目標往往為保護大型企事業(yè)單bit的安全,不同程度地使用了凌亂的布線和較大型的硬件,其造價高昂、安裝繁瑣、操作復(fù)雜,必須有人長時間專門值守,且不具備遠程控制功能。這些缺點使它們很難走進中小型工農(nóng)企業(yè)和家庭中。因此開發(fā)一種小型的、模塊化的、無須專人隨時維護、能夠方便地使用無線網(wǎng)絡(luò)進行操作的采集監(jiān)控系統(tǒng),已成為必然的趨勢,并擁有巨大的需求。隨著系統(tǒng)復(fù)雜度的提高,應(yīng)用嵌入式操作系統(tǒng)是一個流行的趨勢。筆者以μ為操作系統(tǒng),基于ARM7系列處理器,對一種高性能的系統(tǒng)開發(fā)進行了探索。

    嵌入式操作系統(tǒng)簡介

    嵌入式操作系統(tǒng)μ(microcontroller operating system)是專為微控制器系統(tǒng)和軟件開發(fā)而的公開源代碼的搶占式實時多任務(wù)操作系統(tǒng)內(nèi)核,是一段微控制器啟動后首先執(zhí)行的背景程序,作為整個系統(tǒng)的框架貫穿系統(tǒng)運行的始終。對于對實時性和穩(wěn)定性要求很高的數(shù)據(jù)采集系統(tǒng)來說,引入μC/OSII無疑將大大改善其性能。

    μC/OSII的特點可以概括為以下幾個方面:公開源代碼,代碼結(jié)構(gòu)清晰、明了,注釋詳盡,組織有條理,可移植性好,可裁剪,可固化。內(nèi)核屬于搶占式,最多可以管理60個任務(wù)。μC/OSII自1992年的第一版(μC/OS)以來已經(jīng)有好幾百個應(yīng)用,是一個經(jīng)實踐證明好用且穩(wěn)定可靠的內(nèi)核。目前國內(nèi)對μC/OSII的研究和應(yīng)用都很多。

    2系統(tǒng)基本工作原理

    應(yīng)用時,數(shù)據(jù)采集系統(tǒng)置于被監(jiān)控的設(shè)備處,通過傳感器對設(shè)備的電壓或者電流信號進行采樣、保持,并送入A/D轉(zhuǎn)換器變成數(shù)字信號,然后將該信號送到FIFO中。當FIFO中存放的數(shù)據(jù)到了一定數(shù)目時,由ARM7從FIFO中讀出,然后通過ARM7的以太網(wǎng)接口或者RS232送給上位機。考慮到要監(jiān)控的設(shè)備可能會很多,所以了多路采集通道,他們經(jīng)過模擬開關(guān)后再進入A/D轉(zhuǎn)換器。CPLD是整個系統(tǒng)的控制核心,他控制采集通道的切換、A/D轉(zhuǎn)換器的啟/停、轉(zhuǎn)換后的數(shù)據(jù)在FIFO中的存放地址發(fā)生器、產(chǎn)生中斷請求以通知ARM7讀取存放在FIFO中的數(shù)據(jù)等。

    3系統(tǒng)硬件結(jié)構(gòu)

    系統(tǒng)采用了Samsung公司的S3C4510B作為系統(tǒng)與上位機溝通的橋梁,S3C4510B是基于以太網(wǎng)應(yīng)用系統(tǒng)的高性價比16/32位RISC微控制器,他有如下幾個主要特點:

    硬件方面內(nèi)含一個由ARM公司設(shè)計的16/32位ARM7TDMI RISC處理器核,ARM7TDMI為低功耗、高性能的16/32核,最適合用于對價格及功耗敏感的應(yīng)用場合。S3C4510B通過在ARM 7TDMI核內(nèi)容基礎(chǔ)上擴展一系列完整地通用外圍器件。

    片上資源包括2個帶緩沖描述符(buffer descriptor)的HDLC通道;2個UART通道;2個GD M A通道;2個32位定時器;18個可編程的I/O口。還有中斷控制器;DRAM/SDRAM控制器;ROM/S RAM和FLASH控制器;系統(tǒng)管理器;1個內(nèi)部32位系統(tǒng)總線仲裁器;1個外部存儲器控制器等片內(nèi)的邏輯控制電路。

    這些為μC/OSII的移植提供了優(yōu)良的物理資源。

    軟件支持方面他有配套的代碼編輯調(diào)試環(huán)境ADS12和JTAG在線調(diào)試功能,使S3C4510B芯片軟件可以直接用C編寫,這就使μC/OSII的植入成為可能。

    12位高速A/D轉(zhuǎn)換電路采用Analog Devices的AD574,該電路輸出具有三態(tài)鎖存功能。預(yù)處理電路包括了電流電壓互感器、隔離電路和同步采樣電路,他可以將信號轉(zhuǎn)換成與AD574相匹配的量值,供后續(xù)處理。通訊電路采用常用的以太網(wǎng)接口與上位機相連,而232接口可作為備用,這樣該裝置既可作為便攜式系統(tǒng)使用,也可通過網(wǎng)絡(luò)來對設(shè)備實施實時監(jiān)控。

    4軟件設(shè)計部分

    軟件部分要分別編寫S3C4510B部分的程序和CPLD控制程序。前者可分為μC/OSII的移植和各個應(yīng)用程序的編寫,后者用VHDL語言實現(xiàn)。

    對于S3C4510B部分,根據(jù)整個裝置實現(xiàn)的功能和對他的要求進行系統(tǒng)任務(wù)分割,并根據(jù)實際需要為各個任務(wù)分配優(yōu)先級。系統(tǒng)大致可分為如下幾個任務(wù):初始化CPLD控制參數(shù);對FI FO的讀取;與上位機的TCP/IP通訊;與上位機的串口通訊。對應(yīng)每個任務(wù),需要編寫相應(yīng)的應(yīng)用程序,軟件設(shè)計部分的關(guān)鍵技術(shù)有:

    (1)μC/OSII內(nèi)核向S3C4510B中的移植,要根據(jù)處理器的特點合理地修改μC/OS II的3個與處理器相關(guān)的文件:OS_CPUH,OS_CPU_AASM,OS_CPU_C.C。主要是將文件中的匯編指令,改為ARM7的匯編指令,并根據(jù)CPU的特點對文件中寄存器的初值進行改寫。

    (2)內(nèi)存配置問題。對于存儲器容量的設(shè)計,要綜合考慮μC/OSII內(nèi)核代碼和應(yīng)用程序代碼的大小。每個任務(wù)是獨立運行的,必須給每個任務(wù)提供單獨的棧空間(RAM),RAM總量的計算公式為:

    RAM總量=應(yīng)用程序的RAM需求+內(nèi)核數(shù)據(jù)區(qū)的RAM需求+各任務(wù)棧需求之總和+最多中斷嵌套所需堆棧

    (3)TCP/IP協(xié)議在μC/OSII中的實現(xiàn)。為了滿足嵌入式設(shè)備與Internet網(wǎng)絡(luò)直接交換信息的要求,在μC/OSII中又移植了LwIP協(xié)議棧。

    LwIP是瑞士計算機科學(xué)院(Swedish Institute of Computer Science)的Adam Dunkels等開發(fā)的一套用于嵌入式系統(tǒng)的開放源代碼TCP/IP協(xié)議棧。LwIP的含義是Light Weight(輕型)IP協(xié)議。LwIP可以移植到操作系統(tǒng)上,也可以在無操作系統(tǒng)的情況下獨立運行。LwIP TC P/IP實現(xiàn)的重點是在保持TCP協(xié)議主要功能的基礎(chǔ)上減少對RAM的占用,一般他只需要幾十k的RAM和40 k左右的ROM就可以運行,這使LwIP協(xié)議棧適合在低端嵌入式系統(tǒng)中使用。

    LwIP的特性有:支持多網(wǎng)絡(luò)接口下的IP轉(zhuǎn)發(fā);支持ICMP協(xié)議;包括實驗性擴展的的UDP(用戶數(shù)據(jù) 報協(xié)議);包括阻塞控制、RTT估算、快速恢復(fù)和快速轉(zhuǎn)發(fā)的TCP(傳輸控制協(xié)議);提供專門的內(nèi)部回調(diào)接口(raw API)用于提高應(yīng)用程序性能。

    LwIP可以很容易地在μC/OSII的調(diào)度下,為系統(tǒng)增加網(wǎng)絡(luò)通信和網(wǎng)絡(luò)管理功能。LwIP協(xié)議棧在設(shè)計時就考慮到了將來的移植問題,他把所有與硬件,OS,編譯器相關(guān)的部份獨立出來,放在/src/arch目錄下。因此LwIP在μC/OSII上的實現(xiàn)就是修改這個目錄下的文件,其他的文件一般不應(yīng)該修改。在驅(qū)動中主要是根據(jù)S3C4510B內(nèi)的以太網(wǎng)控制特殊功能寄存器,編寫網(wǎng)絡(luò)接口的處發(fā)送包、接收包函數(shù),初始化以及用于以太網(wǎng)控制器的外部中斷服務(wù)程序。

    5結(jié)語

    采用基于ARM7的S3C4510B嵌入式微處理器,可以使系統(tǒng)小型化,便于提高性能以及與各種外設(shè)連接擴展,同時降低了成本。μC/OSII作為一個源代碼公開的操作系統(tǒng),在具體應(yīng)用種穩(wěn)定可靠。本系統(tǒng)采用ARM7+μC/OSII開發(fā)設(shè)計,具有精度高、運行穩(wěn)定、實時性好、抗干擾能力強、性價比高的特點,可以在各種工業(yè)場合中廣泛應(yīng)用,達到了設(shè)計的初衷。

    tcp/ip相關(guān)文章:tcp/ip是什么




    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 定陶县| 疏勒县| 汉中市| 林周县| 遂川县| 彭水| 宜良县| 扎鲁特旗| 富源县| 高碑店市| 察隅县| 外汇| 桐梓县| 合江县| 涡阳县| 格尔木市| 高平市| 全州县| 韶山市| 澄江县| 九台市| 福建省| 长乐市| 香格里拉县| 徐汇区| 太和县| 阿城市| 咸宁市| 揭东县| 基隆市| 永仁县| 永泰县| 克东县| 开原市| 永仁县| 高安市| 双江| 涪陵区| 古浪县| 三台县| 河源市|