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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于TMS320F2812和ADS8364的智能節(jié)點設(shè)計

          基于TMS320F2812和ADS8364的智能節(jié)點設(shè)計

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

          的片選CS是一個有源低電平輸入信號。當CS為高時,并行輸出引腳處于高阻態(tài)。當CS為低時,并行數(shù)據(jù)線反映了輸出緩沖器的當前狀態(tài)。為了正確地從的并行數(shù)據(jù)總線上讀取數(shù)據(jù),必須被片選CS選中后才能進行讀操作。

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

          a.jpg


          ADS8364的讀(RD)信號端也是有源低電平信號。當CS為低時,在讀信號(RD)的下降沿,ADS8364中寄存器的內(nèi)容將被更新。這意味著在每個讀序列之前,RD信號必須被觸發(fā),這樣才能更新輸出緩沖器。通過的中斷子程序?qū)DS8364的RD引腳置低可以保存輸入的數(shù)據(jù),之后可再將RD引腳置高。

          2 軟件
          在實際工作中,將采集到的數(shù)據(jù)或頻譜值發(fā)送到上位機進行存貯、處理。上位機通過CAN接口與通信。
          的程序是在TI提供的開發(fā)工具Code Composer Studio上用C語言開發(fā)。在開發(fā)過程中,使用了TI公司提供的C281×C/C++頭文件庫。該頭文件庫利用結(jié)構(gòu)體和聯(lián)合體的形式對F2812的各個寄存器進行了定義,用戶可以通過C語言直接對處理器內(nèi)部的寄存器進行訪問。
          由于MS320F2812沒有獨立的程序存儲空間和數(shù)據(jù)存儲空間,是統(tǒng)一編址的,因此用戶首先要根據(jù)需要通過配置鏈接命令文件(.cmd文件)對存儲空問進行劃分。
          為了實現(xiàn)數(shù)據(jù)的FFT變換,開發(fā)過程中還使用了TI公司提供的FFT函數(shù)庫。FFT函數(shù)庫提供了32位復(fù)數(shù)FFT變換(CFFT32)和實數(shù)FFT變換(RFFT32)兩種模塊,可以進行128、256、512和1024點的復(fù)數(shù)和實數(shù)FFT變換。需要注意的是變換中所使用的數(shù)據(jù)是Qx格式,因此對變換后的結(jié)果需要進行格式轉(zhuǎn)換才能得到真實數(shù)值。
          智能節(jié)點的主程序流程為:加電后,程序先初始化,進入主循環(huán)后就不斷進行數(shù)據(jù)采集和閾值判斷,如有收到上位機命令(CAN接口接收中斷)就轉(zhuǎn)入中斷處理程序,根據(jù)上位機的不同命令選擇不同的處理方式。如采集到的數(shù)據(jù)超出閾值,優(yōu)先向上位機發(fā)送報警信息。

          3 結(jié)束語
          本文的智能節(jié)點已在多個監(jiān)測和故障診斷系統(tǒng)中得到應(yīng)用,實踐證明該模塊工作可靠,能滿足工程中分布式數(shù)據(jù)采集與監(jiān)測需要。


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