<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ī)的多參數(shù)測(cè)量?jī)x設(shè)計(jì)

          基于單片機(jī)的多參數(shù)測(cè)量?jī)x設(shè)計(jì)

          作者: 時(shí)間:2011-09-07 來(lái)源:網(wǎng)絡(luò) 收藏
          2 軟件

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

            2.1 主程序

            

          基于單片機(jī)的多參數(shù)測(cè)量?jī)x主程序流程圖

            本系統(tǒng)的主程序流程圖如圖7所示。本系統(tǒng)的主程序主要完成對(duì)時(shí)序的初始化及對(duì)顯示界面的初始化,其中初始化包括對(duì)的初始化和對(duì)接口芯片的初始化。首先是對(duì)進(jìn)行初始化,以設(shè)置時(shí)鐘和必要的標(biāo)志位以及變量初值;接著對(duì)顯示器初始化,設(shè)置數(shù)據(jù)、地址傳輸端口;然后將按鍵選擇程序開啟,主要設(shè)置按鍵任務(wù);最后對(duì)時(shí)鐘A、B以及A/D轉(zhuǎn)換進(jìn)行初始化,設(shè)置必要的控制字和開中斷。

            2.2 定時(shí)器中斷子程序

            在該系統(tǒng)中,定時(shí)器A、B主要用來(lái)捕獲方波以及定時(shí)。當(dāng)中斷開啟時(shí),應(yīng)先判斷中斷請(qǐng)求寄存器TXIV的值,以判斷該中斷是由捕獲引起還是由計(jì)數(shù)溢出引起,然后計(jì)算得到的頻率值,并在預(yù)處理后返回到主程序中。

            本系統(tǒng)中,對(duì)RC、頻率以及相位差的測(cè)量都要利用定時(shí)器的捕獲功能來(lái)獲取頻率值。事實(shí)上,要獲得方波信號(hào)的頻率值,首先要在主程序中設(shè)置好時(shí)鐘與定時(shí)器控制寄存器,然后開定時(shí)器中斷程序。中斷開啟以后,定時(shí)器開始計(jì)數(shù),當(dāng)接收到方波的上升沿時(shí),可存儲(chǔ)該時(shí)刻的計(jì)數(shù)初值B,待下一次上升沿到來(lái)時(shí),再存儲(chǔ)該時(shí)刻的計(jì)數(shù)C,兩次上升沿時(shí)刻之間的差值便是方波的周期。接著,經(jīng)過(guò)短暫延時(shí)后重新測(cè)量,如此循環(huán)測(cè)量并計(jì)算最終結(jié)果。如果在兩次上升沿捕獲的過(guò)程中,計(jì)數(shù)器的計(jì)數(shù)值CCRx發(fā)生了溢出,則需要在中斷程序中設(shè)置溢出次數(shù)變量Y,以在計(jì)算周期時(shí)將溢出值計(jì)算在內(nèi)。

            3 結(jié)束語(yǔ)

            本文利用MSP430單片機(jī)設(shè)計(jì)的RLC、頻率及相位差的,經(jīng)測(cè)試證明,各項(xiàng)指標(biāo)均可達(dá)到設(shè)計(jì)要求,并且具有精度高、體積小、性能穩(wěn)定和操作簡(jiǎn)便等特點(diǎn)。


          上一頁(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); })();