<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 學習方法與實踐 > 嵌入式系統(tǒng)便攜式數(shù)據(jù)采集裝置設計

          嵌入式系統(tǒng)便攜式數(shù)據(jù)采集裝置設計

          作者:鄭晉平,段富 時間:2008-01-30 來源:電子設計信息網(wǎng) 收藏

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

          本文引用地址:http://www.ex-cimer.com/article/78247.htm

            嵌入式平臺的構(gòu)建

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

            μC/OS-II嵌入式操作系統(tǒng)簡介

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

            MSP430系列單片機介紹

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

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

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

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

            硬件設計

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

            核心電路的設計

            圖1 系統(tǒng)功能結(jié)構(gòu)框圖

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

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

            電源設計

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

            數(shù)據(jù)存儲電路

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

            軟件設計

            主程序設計

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

            數(shù)據(jù)存儲任務

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

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

            {

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

            P4OUT=mCmd;/*向CH375的并口輸出數(shù)據(jù)*/

            }

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

            {

            UINT8mData;

            P4DIR=0;/*讀操作所以數(shù)據(jù)輸入*/

            mData=P4IN;/*從CH375的并口輸入數(shù)據(jù)*/


            P2OUT|=0x07;

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

            return(mData);

            }

            UART通訊任務

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

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

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


          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();