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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種基于SoPC的低應(yīng)變反射波檢測系統(tǒng)

          一種基于SoPC的低應(yīng)變反射波檢測系統(tǒng)

          作者: 時間:2010-09-16 來源:網(wǎng)絡(luò) 收藏

            4 系統(tǒng)的軟件設(shè)計

            4.1 基于Ⅱ IDE的軟件開發(fā)

            此開發(fā)環(huán)境可在進(jìn)行軟件設(shè)計時,自動根據(jù)Ⅱ處理器系統(tǒng)的需求生成開發(fā)向?qū)?,包括:硬件抽象層、可調(diào)節(jié)的實時操作系統(tǒng)和設(shè)備驅(qū)動[5],避免了手動設(shè)置帶來的不便,從而節(jié)省了時間,縮短了開發(fā)周期?;?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/SoPC">SoPC平臺Ⅱ處理器的軟件開發(fā)環(huán)境有了很大的發(fā)展,整個軟件系統(tǒng)由分別實現(xiàn)不同軟件功能的模塊組成,模塊包括:主程序模塊、中斷子程序、A/D轉(zhuǎn)換子程序、數(shù)據(jù)處理子程序、LCD顯示屏控制程序和觸摸子程序。圖5是整體軟件設(shè)計的流程。

          一種基于SoPC的低應(yīng)變反射波檢測系統(tǒng)

            開始初始化后,對樁長等參數(shù)進(jìn)行設(shè)置,然后通過觸摸屏中斷的方式選擇相應(yīng)的中斷子程序。收到觸發(fā)信號并開始后,信號采集模塊將加速度傳感器輸出的信號與閾值電壓進(jìn)行比較,把有用的信號經(jīng)A/D轉(zhuǎn)換存儲到寄存器中。在采集信號存儲完后,通過觸摸屏選擇數(shù)據(jù)處理中斷子程序功能,開始對寄存器中的數(shù)據(jù)按第1部分中提到的算法進(jìn)行處理,并將波形結(jié)果顯示在觸摸顯示屏上。并可由觸摸屏選擇USB接口中斷子程序,將所有數(shù)據(jù)上傳給PC機(jī),做進(jìn)一步的分析和計算。

            4.2 μClinux操作系統(tǒng)的移植

            將μClinux移植到模塊中,可以使系統(tǒng)表現(xiàn)出完好的實時性和穩(wěn)定性。μClinux操作系統(tǒng)可以和沒有內(nèi)存管理單元(mmu)的NiosⅡ處理器兼容,并且可以下載到嵌入式硬件平臺中[6]。

            首先,在Linux Developer Bash開發(fā)環(huán)境中配置和構(gòu)建內(nèi)核。建立映像文件和linux.flash,生成的linux.flash文件即為μClinux的內(nèi)核映像。將linux.flash文件下載到模塊中,完成內(nèi)核映像的加載。

            除了裝載內(nèi)核,還要裝載根文件系統(tǒng)。μClinux使用romfs文件系統(tǒng),比一般的ext2文件系統(tǒng)需求空間更小。在宿主機(jī)Linux的target目錄為μClinux下的根目錄,用當(dāng)前的腳本和工具將其轉(zhuǎn)換成映像文件romdisk.flash。然后根據(jù) userland/.config文件中相應(yīng)變量的指示將應(yīng)用程序二進(jìn)制拷貝到target目錄中,將應(yīng)用程序加載到文件系統(tǒng)中并更新romdisk.flash文件,最后下載romdisk.flash文件到SoPC模塊中。這樣,就可以將μClinux操作系統(tǒng)及應(yīng)用程序成功地移植到SoPC模塊。



          關(guān)鍵詞: SoPC 檢測 Nios

          評論


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