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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的智能儀器監(jiān)控平臺(tái)設(shè)計(jì)應(yīng)用

          基于單片機(jī)的智能儀器監(jiān)控平臺(tái)設(shè)計(jì)應(yīng)用

          作者: 時(shí)間:2013-02-20 來(lái)源:網(wǎng)絡(luò) 收藏

            3.5 電源啟動(dòng)及轉(zhuǎn)換模塊

            由于便攜式分析儀器采用蓄電池供電,減少整機(jī)電流和待機(jī)電流、降低損耗變得極為重要。傳感器部分的工作電壓為12V,而單片系統(tǒng)采用5V供電,因此,控制平臺(tái)選用了直-交-直變換模塊完成電源轉(zhuǎn)換。選用XR031電壓轉(zhuǎn)換模塊,其轉(zhuǎn)換效率達(dá)80%。啟動(dòng)電路采用CMOS芯片,組成帶施密特整形的flip-flop電路,由儀器鍵盤上的啟動(dòng)鍵控制開、關(guān)機(jī)。關(guān)機(jī)狀態(tài)下電池仍對(duì)該部分電路供電,其電流極小,約為4~8微安,工作狀態(tài)下CPU內(nèi)部A/D采樣模塊對(duì)其進(jìn)行電壓檢測(cè),當(dāng)電壓低于設(shè)定時(shí),置輸出端口為有效電平,該電平經(jīng)微分電路產(chǎn)生+12V尖脈沖觸發(fā)flip-flop電路翻轉(zhuǎn),實(shí)現(xiàn)強(qiáng)行關(guān)機(jī)。本監(jiān)控系統(tǒng)正常工作時(shí)功耗電流為50~60mA(LCD背光關(guān)閉,不包括泵電流),整機(jī)電流最大為140mA(LCD背光開啟)。電源轉(zhuǎn)換及啟動(dòng)硬件設(shè)計(jì)如圖4。

            圖4 電源啟動(dòng)及轉(zhuǎn)換電路

            3.6 時(shí)鐘模塊

            本次設(shè)計(jì)采用了一塊實(shí)時(shí)鐘芯片DS12C887,它是微機(jī)中常用的時(shí)鐘芯片。該芯片是24腳雙列直插封裝的一個(gè)集成組件,組件中包含石英晶體、鋰電池、實(shí)時(shí)時(shí)鐘、日歷時(shí)鐘、報(bào)警時(shí)鐘、和128個(gè)字節(jié)的RAM,其中15個(gè)字節(jié)用作實(shí)時(shí)鐘的控制寄存器,其余113個(gè)字節(jié)可作普通RAM使用,其中數(shù)據(jù)也可以十年不丟失,DS12C887的年月日、時(shí)分秒等信息都放在內(nèi)部寄存器中。

            4 的軟件設(shè)計(jì)

            的軟件系統(tǒng)采用C程序設(shè)計(jì),使用C96編譯器,版本為5.3版。盡管該編譯器占用程序空間比匯編語(yǔ)言編譯器大,但程序開發(fā)周期大大減少,調(diào)試效率及可讀性均明顯優(yōu)于匯編語(yǔ)言,且原程序可更加方便地移植于其他型號(hào)芯片中,便于產(chǎn)品的更新?lián)Q代。

            本軟件系統(tǒng)為多任務(wù)實(shí)時(shí)操作系統(tǒng),主要分為人機(jī)界面、串口通訊、數(shù)據(jù)處理、紅外打印、操作控制五大功能模塊,軟件結(jié)構(gòu)框圖如圖5所示。由于系統(tǒng)采用模塊化設(shè)計(jì),各模塊自成體系,可獨(dú)立調(diào)試,有利于系統(tǒng)集成也便于形成其他分析儀器的監(jiān)控程序。本軟件系統(tǒng)支持中英文兩種版本的界面供用戶操作選擇,其LCD顯示頁(yè)面達(dá)60多個(gè),字庫(kù)漢字超過(guò)250個(gè),編譯后程序代碼約為52Kb。

            圖5 軟件系統(tǒng)設(shè)計(jì)

            整個(gè)軟件系統(tǒng)使用超循環(huán)系統(tǒng)(Super-Loops)結(jié)構(gòu),應(yīng)用程序是一個(gè)無(wú)限循環(huán),循環(huán)中調(diào)用相應(yīng)的函數(shù)完成規(guī)定的操作,程序依次檢查系統(tǒng)的每一個(gè)輸入條件,一旦條件成立就進(jìn)行相應(yīng)的處理,這部分可以看成任務(wù)級(jí)處理。中斷服務(wù)程序處理異步事件,這部分看成中斷級(jí)處理。本系統(tǒng)包括A/D采樣、HSO實(shí)時(shí)中斷、HSO事件中斷、串行通訊等模塊,為保證實(shí)時(shí)性,中斷服務(wù)程序只包含標(biāo)志處理,其隱含功能如采樣值的濾波,HSO事件排隊(duì)均由任務(wù)級(jí)處理。實(shí)時(shí)多任務(wù)按任務(wù)級(jí)別分類處理,在各界面處理模塊中均包含時(shí)間事件處理模塊,以確保定時(shí)事件處理。

            本文作者創(chuàng)新點(diǎn):

            強(qiáng)大的CPU和良好的模塊性使本監(jiān)控平臺(tái)的研究為智能分析儀器提供了具有ARC功能的設(shè)計(jì)平臺(tái),通過(guò)軟硬件模塊的選擇可基本實(shí)現(xiàn)各種不同需求的組合式分析儀。系統(tǒng)提高了分析儀器本身的自動(dòng)化水平,分析儀器的自動(dòng)校準(zhǔn)和診斷。

          參考文獻(xiàn):

          [1].datasheethttp://www.dzsc.com/datasheet/_103576.html.
          [2].29C256datasheethttp://www.dzsc.com/datasheet/29C256_34544.html.
          [3].74LS373datasheethttp://www.dzsc.com/datasheet/74LS373_742872.html.
          [4].MAXIMdatasheethttp://www.dzsc.com/datasheet/MAXIM_1062568.html.
          [5].MAX197datasheethttp://www.dzsc.com/datasheet/MAX197_721185.html.
          [6].T6963Cdatasheethttp://www.dzsc.com/datasheet/T6963C_635050.html.
          [7].MAX749datasheethttp://www.dzsc.com/datasheet/MAX749_1019384.html.
          [8].hsdl-3610datasheethttp://www.dzsc.com/datasheet/hsdl-3610_1729486.html.
          [9].TTLdatasheethttp://www.dzsc.com/datasheet/TTL_1174409.html.
          [10].MAX232datasheethttp://www.dzsc.com/datasheet/MAX232_1074207.html.
          [11].RS-232datasheethttp://www.dzsc.com/datasheet/RS-232_584855.html.
          [12].DS12C887datasheethttp://www.dzsc.com/datasheet/DS12C887_html.


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(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); })();