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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)

          一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2012-03-12 來源:網(wǎng)絡(luò) 收藏

          一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)
          一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)
          一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)

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

          用C語言編程具有開發(fā)周期短、可讀性強(qiáng)、可移植性好和修改方便等特點(diǎn),但是C語言反匯編生成的匯編代碼往往較長。直接用匯編語言編程雖然編寫的程序較短,在直接對機(jī)器配件進(jìn)行控制方面具有相當(dāng)?shù)膬?yōu)勢,但是開發(fā)周期長,修改也不方便。較好的解決辦法是程序的框架或主體部分用C語言編寫,要求執(zhí)行效率高的部分用匯編語言編寫。這種混合編程的方法將C語言和匯編語言的優(yōu)點(diǎn)結(jié)合起來,所以成為目前開發(fā)最流行的編程方法。
          根據(jù)設(shè)計(jì)要求,按照實(shí)現(xiàn)功能的分類,系統(tǒng)軟件主要完成五項(xiàng)任務(wù):系統(tǒng)初始化、、數(shù)據(jù)處理、鍵盤響應(yīng)和數(shù)據(jù)顯示。在數(shù)據(jù)處理中,需要進(jìn)行大量浮點(diǎn)數(shù)的乘除法和正弦、余弦運(yùn)算,因此數(shù)據(jù)處理部分采用C語言編寫,在Keil環(huán)境中模塊化編程,充分利用C語言強(qiáng)大的計(jì)算能力,系統(tǒng)初始化、鍵盤響應(yīng)和數(shù)據(jù)顯示也采用C語言編程,在部分中,對時(shí)序要求比較嚴(yán)格,采用匯編語言實(shí)現(xiàn),所有功能模塊均為獨(dú)立的C文件或ASM文件。而實(shí)現(xiàn)C語言和匯編語言的混合編程是軟件設(shè)計(jì)中的難點(diǎn)和關(guān)鍵之一。本文中,匯編語言采用單獨(dú)的文件,通過寄存器傳遞函數(shù)參數(shù),相關(guān)具體程序如下所示:
          一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)
          一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)
          一種高速單片機(jī)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)

          5 結(jié)束語

          為保證數(shù)據(jù)的準(zhǔn)確性,可多次采樣后,利用程序來進(jìn)行數(shù)字濾波,以減少各種噪聲和干擾帶來的錯(cuò)誤數(shù)據(jù),提高系統(tǒng)的可靠性和穩(wěn)定性,而不需增加任何硬件開銷.


          參考文獻(xiàn)

          1 MAXIM公司. MAXIM產(chǎn)品資料全集[M/CD]. 1999
          2 薛鈞義,張彥斌. 單片微型計(jì)算機(jī)及其應(yīng)用[D]. 西安:西安交通大學(xué)出版社,2001.06
          3 (美)Charlie Calvert,et al.著 徐科等譯C++Builder應(yīng)用開發(fā)大全[M].北京:清華大學(xué)出版社,1999。


          上一頁 1 2 下一頁

          評論


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