• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Cortex M0+的超低功耗多路高精度數(shù)字頻率測量儀的設(shè)計

      2015-05-30 10:48:04王靜鄭暉暉
      科技資訊 2015年27期
      關(guān)鍵詞:高精度

      王靜 鄭暉暉

      摘 要:該文設(shè)計的頻率測量儀選用通用的集成前端處理電路,從超低功耗高精度著手,其核心控制模塊為當(dāng)前最新推出的微功耗ARM Cortex M0+處理器,主要是利用其多路高速定時器/計數(shù)器功能完成在單位時間內(nèi)頻率的計算工作,并利用信號整形和放大電路完成對待測信號的處理。測量得到的值,采用動態(tài)顯示的方式通過LED顯示器顯示出來。

      關(guān)鍵詞:高精度 微功耗 頻率測量儀 ARM Cortex M0+

      中圖分類號:TN 915.6 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2015)09(c)-0055-02

      隨著科學(xué)技術(shù)和計算機技術(shù)的快速發(fā)展,頻率的測量顯得越來越重要,測量頻率的方法也日趨多樣,在測量性能提升的同時,設(shè)計的成本與復(fù)雜度也不斷提高。而頻率測量儀器功能也從單一的頻率測量,變得更豐富。

      該文所設(shè)計的頻率測量儀選用通用的集成前端處理電路,從超低功耗高精度著手,其核心控制模塊為當(dāng)前最新推出的微功耗ARM Cortex M0+處理器,主要是利用其多路高速定時器/計數(shù)器功能完成在單位時間內(nèi)頻率的計算工作,并利用信號整形和放大電路完成對待測信號的處理。測量得到的值,采用動態(tài)顯示的方式通過LED顯示器顯示出來。

      1 基于Cortex M0+的功能模塊電路設(shè)計

      Cortex M0+控制模塊、LED數(shù)碼管顯示器模塊、信號發(fā)生與調(diào)理模塊、計數(shù)模塊、電源模塊等構(gòu)成了數(shù)字顯示的頻率測量儀。

      高精度頻率測量儀,需要自制信號源,并能夠正常輸出正弦波、方波、三角波,故選用精密函數(shù)發(fā)生器ICL8038。

      該設(shè)計使用LED顯示電路,頻率計數(shù)顯示要精確到小數(shù)點后面2位,因此需要有4個LED顯示器,又綜合考慮CPU的處理速度和電源的使用效率等其它因素,該設(shè)計的頻率測量儀采用動態(tài)顯示方式,該設(shè)計的計數(shù)電路由74LS290構(gòu)成。

      信號的放大、整形電路是將其他信號如正弦波、三角波信號轉(zhuǎn)換成脈沖信號,這個功能是靠施密特觸發(fā)器或者單穩(wěn)態(tài)觸發(fā)器來完成的。

      該電路使用集成芯片LTC3638、CN302實現(xiàn)電源充放電的管理,對鋰電池進(jìn)行充電,鋰電池的飽和電壓為4.2 V。通過設(shè)置LTC3638的外圍電路將LTC3638的輸出電壓設(shè)置為4.2 V。

      2 基于UC/OS II的嵌入式軟件設(shè)計

      2.1 軟件設(shè)計規(guī)劃

      2.1.1系統(tǒng)移植

      該設(shè)計將在MCU中移植UC/OS II(Micro Control Operation System Two),進(jìn)行任務(wù)調(diào)度,實現(xiàn)實時2路頻率的測量、顯示。

      2.1.2信號處理

      頻率計開始工作以及頻率測量的過程,需要對程序進(jìn)行初始化操作。除了包含中斷控制初始化和定時器/計數(shù)器控制模式初始化過程外,還包括初始化堆棧指針(SP)和通用工作寄存器。

      2.1.3中斷控制

      中斷控制是當(dāng)CPU執(zhí)行相應(yīng)的程序,Cortex M0+接收到中斷源的中斷響應(yīng)信號,使Cortex M0+停止當(dāng)前任務(wù),執(zhí)行能夠引起響應(yīng)的中斷服務(wù)程序,當(dāng)中斷服務(wù)程序執(zhí)行完畢后,回到剛才暫停程序的位置,繼續(xù)執(zhí)行相應(yīng)的程序。

      2.2 系統(tǒng)資源

      Cortex M0+處理器采用了三級流水線的馮·諾伊曼結(jié)構(gòu)(Von Neumann architecture)。它是基于一個32位處理器的內(nèi)核,特點是集成度高、而且功耗非常低。

      2.3 系統(tǒng)移植

      2.3.1 Cortex M0+的啟動代碼

      啟動代碼包括:初始化堆棧,初始化異常向量表,定義異常入口函數(shù)及復(fù)位異常響應(yīng)代碼。

      2.3.2 Systick啟動

      在移植系統(tǒng)之前,我們需要先啟動Systick異常,啟動的目的是為系統(tǒng)提供一個可以使系統(tǒng)能夠處理延時或者超時等與時間有關(guān)的事件的周期性的信號源。

      (1)Systick使能與優(yōu)先級分配。

      在內(nèi)核啟動之后,可進(jìn)行Systick異常的使能和優(yōu)先級分配。

      (2)Systick異常處理函數(shù)。

      Systick異常處理函數(shù)每次響應(yīng)時都調(diào)用了OSTimeTick。OSTimeTick做了兩件事情:一是給OSTime加1,二是將等待任務(wù)的剩余時間值減1,并將等待時間為0的任務(wù)進(jìn)入就緒狀態(tài),運行其最高優(yōu)先級任務(wù)。

      2.3.3 OS初始化和啟動

      在OS啟動時,需要根據(jù)內(nèi)核的不同進(jìn)行任務(wù)堆棧的初始化,多任務(wù)的啟動。

      (1)任務(wù)堆棧初始化。

      (2)多任務(wù)的啟動。

      (3)MSP與PSP切換。

      2.3.4 任務(wù)切換

      (1)任務(wù)切換函數(shù)OSCtxSw。

      任務(wù)切換函數(shù)OSCtxSw作用就是保存被中止運行任務(wù)的斷點和恢復(fù)待運行任務(wù)的斷點并啟動它。因此這個函數(shù)中主要是一系列的壓棧和出棧操作。

      (2)中斷任務(wù)切換函數(shù)OSIntCtxSw。

      OS在完成中斷服務(wù)程序后,并不一定回到被中斷的任務(wù),而是進(jìn)行一次中斷調(diào)度來決定是返回被中斷任務(wù)還是調(diào)用一個更高優(yōu)先級任務(wù)。而此刻函數(shù)OSIntCtxSw是用來完成任務(wù)切換工作。該函數(shù)一般用在中斷服務(wù)程序的末尾,它的作用是用來保護(hù)被中止運行程序的斷點,如果已經(jīng)在中斷服務(wù)程序的前段完成了此工作的話,那么它的工作只是恢復(fù)待運行任務(wù)的斷點。

      2.4 多中斷處理

      (1)優(yōu)先級定義。

      (2)中斷編號定義與中斷使能。

      (3)優(yōu)先級分配。

      (4)多中斷響應(yīng)程序編寫。

      (5)多中斷響應(yīng)問題小結(jié)。

      ①中斷響應(yīng)啟動HardFault_Handler異常。

      ②中斷嵌套后并未返回運行系統(tǒng)。

      2.5 應(yīng)用層總體設(shè)計

      本設(shè)計其主程序流程圖如圖1所示。

      2.6 部分關(guān)鍵子程序算法

      2.6.1 中斷檢測

      可采用同步法測量。

      2.6.2 數(shù)碼轉(zhuǎn)化

      因為Cortex M0+測量頻率的結(jié)果是以10進(jìn)制的形式顯示出來的,但是測量的數(shù)據(jù)是以2進(jìn)制的形式計算,并以16進(jìn)制的形式存儲在RAM里的,所以在顯示之前還需要將數(shù)據(jù)進(jìn)行轉(zhuǎn)換。

      2.6.3 數(shù)碼顯示

      顯示程序分為7種模式,分別對應(yīng)6組不同數(shù)據(jù)范圍的高位或低位消隱,以及一種錯誤模式顯示。display00子函數(shù)為小數(shù)點后兩位顯示程序,當(dāng)測量數(shù)據(jù)小于1 000時,對小數(shù)顯示程序進(jìn)行調(diào)用,使測量結(jié)果顯示兩位小數(shù)。

      為了確保系統(tǒng)能工作正常,就要對電路重要部分仿真,即我們把波形整形電路、分頻電路進(jìn)行了仿真,Proteus軟件是非常好的Cortex M0+的仿真軟件。我們采用安捷倫33 500B任意波形發(fā)生器作為標(biāo)準(zhǔn)信號輸入,進(jìn)行系統(tǒng)測量精度的測試,最后我們還要進(jìn)行誤差分析、系統(tǒng)噪聲控制、系統(tǒng)功耗分析。

      參考文獻(xiàn)

      [1] 史坡,廉德宇,沈昱明,等.一種精確頻率測量儀設(shè)計[J].儀器儀表學(xué)報,2006,27(S2):1532-1533.

      [2] 何錚,周娜.智能家居基于 Cortex M3/M0的感知與控制子網(wǎng)設(shè)計[J].單片機與嵌入式系統(tǒng)應(yīng)用,2014(12):25-27.

      [3] 朱錦明.基于Cortex-M0+內(nèi)核的KE02微控制器的應(yīng)用研究[D].蘇州大學(xué),2014.

      [4] 張如芹.Cortex-M0單片機二—十進(jìn)制整數(shù)轉(zhuǎn)換的快速算法[J].單片機與嵌入式系統(tǒng)應(yīng)用,2013,13(7):32-33.

      猜你喜歡
      高精度
      高抗擾高精度無人機著艦縱向飛行控制
      船載高精度星敏感器安裝角的標(biāo)定
      基于高精度測角的多面陣航測相機幾何拼接
      高精度免熱處理45鋼的開發(fā)
      山東冶金(2015年5期)2015-12-10 03:27:41
      高精度VLBI技術(shù)在深空探測中的應(yīng)用
      DFD-1500I高精度自動檢重秤
      機電信息(2014年5期)2014-02-27 15:51:47
      承德市| 四会市| 景德镇市| 宁安市| 安泽县| 雷山县| 遂昌县| 怀安县| 土默特左旗| 黔南| 青岛市| 乐业县| 彰化县| 乌拉特后旗| 上饶市| 喜德县| 清流县| 阿拉善盟| 读书| 南丹县| 淮滨县| 黔西县| 米林县| 图片| 泉州市| 额济纳旗| 台东县| 板桥市| 文化| 新和县| 衡水市| 沂南县| 沈阳市| 南康市| 华宁县| 牙克石市| 泸定县| 友谊县| 郧西县| 双牌县| 沙坪坝区|