新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > 嵌入式系統便攜式數據采集裝置設計

        嵌入式系統便攜式數據采集裝置設計

        ——
        作者:鄭晉平,段富 時間:2007-07-18 來源:電子設計信息網 收藏

          隨著計算機科學技術的飛速發展和普及,技術已經滲透到雷達、通信、水聲、遙感、地質勘探、振動工程、語音處理、智能儀器、工業自動控制以及生物醫學工程等眾多領域。本設計借助于系統設計技術和微處理器技術來實現的低功耗、大容量存儲的便攜式裝置。該裝置具有如下特點:多通道(包括8路模擬量采集通道)、16路開關量采集通道、海量數據實時顯示存儲、集成度高、攜帶方便。

          平臺的構建

          20世紀90年代后,實時操作系統在中確立了主導地位。典型產品如VxWorks、PSOS、VRTX、Nucleus、Lynx、WindowsCE、RTLinux、μC/OS-II等等。

          μC/OS-II嵌入式操作系統簡介

          μC/OS-II的特點如下:公開源代碼,代碼結構清晰、明了,注釋詳盡,組織有條理,可移植性好,可裁剪,可固化。內核屬于搶占式,最多可以管理60個任務。是一個經實踐證明好用且穩定可靠的內核,被成功地移植到了許多不同架構的處理器上。目前國內對μC/OS-II的研究和應用都很多。

          MSP430系列介紹

          MSP430系列是美國德州儀器公司(TI)近幾年開發的新一代16位,MSP430F169是其中一款,具有強大的處理能力,RISC結構,125ns的指令周期,豐富的片內外設,內部具有2kB的RAM和60kB的FLASH,尋址空間達64k。

          本設計中所用到的嵌入式處理器是TI公司的MSP430F169;操作系統是μC/OS-II。

          μC/OS-II在MSP430F169上的移植

          移植,指的是一個操作系統可以在某個微處理器或者微控制器上運行。雖然μC/OS-II大部分源代碼是用C語言寫成的,但是仍然需要用匯編語言完成與處理器相關代碼的編寫。要使μC/OS-II能正常移植到處理器,處理器必須滿足以下要求:①處理器的C編譯器能產生可重入代碼;②能用C語言打開或關閉中斷;③處理器支持中斷,并且能夠產生定時中斷;④處理器能支持一定數量的數據存儲硬件堆棧;⑤處理器有將堆棧指針和其他CPU寄存器存儲和讀出到堆棧(或者內存)的指令。

          硬件設計

          本數據采集裝置的硬件設計主要分三個模塊進行:主控單元、數據采集單元、實時時鐘。主控單元主要完成了人機接口和存儲電路的設計,其中存儲電路選用USB接口電路作為數據存儲,對采集數據及時可靠的存儲保護,數據采集單元主要是模擬量、開關量輸入通道設計。系統實時時鐘是由MSP430F1222實現的,其與專用的RTC器件相比還具有可擴展性。

          核心電路的設計

        圖1 系統功能結構框圖

          微處理器是整個電路的核心器件,其性能的優劣直接影響和決定著系統的功能指標。

          晶振電路作為時基發生器的時鐘振蕩電路,為整個單片機芯片內部各個部分電路及單片機與其他數字系統或者計算機系統之間通信,提供可靠的同步時鐘信號。MSP430F169單片機有3個時鐘輸入源:低速晶體振蕩器(32k)、高速晶體振蕩器(450k~8M)和DCO振蕩器。無論系統上電或掉電都需要保證正常復位。復位電路本系統選用的CAT809微控制器監控電路符合要求。

          電源設計

          電源模塊是數據采集系統硬件設計的重要組成部分,直接影響系統的精度和可靠性。輸出質量高、穩壓效果好、高效率和微功耗、可靠性強、微型化等是其設計原則。

          數據存儲電路

          完成采集數據及時可靠的存儲保護是本系統的一項重要功能,設計選用南京沁恒有限公司的純粹USB接口CH375,它的主要特點是價格便宜、接口方便、可靠性高,尤其適用于產品的改型設計。

          軟件設計

          主程序設計

          主程序負責系統的初始化及任務的創建。基本流程如圖2所示。主控單元的軟件設計主要包括鍵盤掃描任務,液晶顯示任務,數據存儲任務、UART通信任務等。主要介紹數據存儲任務和UART通信任務。

          數據存儲任務

          采集數據及時可靠的存儲保護是本采集裝置的一項重要任務,U盤的讀寫方式下,僅僅是將U盤當作可移動的存儲器,所以讀寫方法與讀寫閃存差不多,操作簡單,速度快,只要幾十條語句就可以讀寫數據。但計算機不能直接讀取寫入的數據。

          Voidx Write CH375 Cmd(UINT8mCmd)/*向CH375寫命令*/

          {

          P2DIR|=0x0F;/*設置P2口A0,CS,WR,RD為輸出控制信號*/

          P4OUT=mCmd;/*向CH375的并口輸出數據*/

          }

          Void xReadCH375 Data(void) */從CH375讀數據*/

          {

          UINT8mData;

          P4DIR=0;/*讀操作所以數據輸入*/

          mData=P4IN;/*從CH375的并口輸入數據*/


          P2OUT|=0x07;

               /*輸出無效的控制信號,完成操作CH375芯片,A0(P2.3)=0;CS(P2.2)=1;WR=(P2.1)=1;RD(P2.0)=1;*/

          return(mData);

          }

         

          UART通訊任務

          數據采集單元的軟件設計包括8路模擬量的采集任務、16路開關量的采集任務和UART通訊任務的編寫,UART通訊任務主要是完成數據采集模塊和主控單元的數據交換。

          本設計是結合先進的嵌入式技術、微處理器技術及USB總線技術,基于低功耗、大容量存儲原則設計的便攜式數據采集裝置;對其主要功能模塊進行了原理設計,部分實驗進行了驗證,證明該裝置適用于工業控制等較為復雜的測控場合。軟件設計上,μC/OS-II的應用使數據采集具有更好的實時性。但是系統功能的擴展和通信方面還具有更深的研究空間。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 金寨县| 黑河市| 洛隆县| 桃源县| 湖口县| 阿拉尔市| 富宁县| 乡城县| 桦南县| 绥阳县| 乌恰县| 达日县| 茌平县| 江达县| 德昌县| 子洲县| 和田市| 邢台市| 武邑县| 永济市| 塘沽区| 凤庆县| 舞钢市| 林甸县| 米林县| 长寿区| 曲沃县| 陇南市| 衡阳县| 张北县| 石屏县| 土默特左旗| 大石桥市| 年辖:市辖区| 建瓯市| 曲靖市| 堆龙德庆县| 宜阳县| 双牌县| 林州市| 花垣县|