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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于PIC18F1320的信號采集系統(tǒng)設(shè)計

          基于PIC18F1320的信號采集系統(tǒng)設(shè)計

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

            本文研究一種微控制器為基礎(chǔ)的,以滿足信號采集的低成本和靈活模式。開發(fā)系統(tǒng)的主要硬件包括一臺微型計算機(jī)、一個以為基礎(chǔ)的微控制器電路板以及串行通訊鏈接設(shè)備。EEPROM 24LC32A被用來進(jìn)行存儲器擴(kuò)展。微型計算機(jī)運(yùn)行控制程序。一旦用戶在微型計算機(jī)界面上決定采樣輸入,信息便通過RS-232端口送往微控制器。微型計算機(jī)和微控制器通過特定的協(xié)議通信。微型計算機(jī)告知微控制器模-數(shù)轉(zhuǎn)換的采樣間隔、采樣次數(shù)與采樣通道。電路板的設(shè)計考慮了開放式結(jié)構(gòu)。該系統(tǒng)采用了24引腳易于插拔的插座來容納Micro-chip微控制器。微處理器將調(diào)制的信號轉(zhuǎn)換成數(shù)據(jù)直接輸送到微型計算機(jī)或者存儲于EEPROM以便將來讀取。不同的命令與反饋代表系統(tǒng)的不同操作。電路板通過串行電纜在采集完信號后連接到微型計算機(jī)交互,也可以即時連接和傳送。

            1 系統(tǒng)硬件設(shè)計

            系統(tǒng)的主要原理圖如圖1所示。其中控制器采用5 V電源供電,支持在線串行編程,最高時鐘頻率達(dá)到40 MHz,通訊波特率可以自動檢測。端口A是雙向輸入/輸出復(fù)用管腳,ANO等管腳被定義成模擬輸入,由用戶進(jìn)行采樣通道的選擇??偣灿?3個模/數(shù)轉(zhuǎn)換通道且采樣時間可以編程。通道輸入的被測信號經(jīng)過電子電路調(diào)制成符合微控制器電氣要求的信號。調(diào)制信號經(jīng)過轉(zhuǎn)換變成寄存器內(nèi)的數(shù)據(jù),模數(shù)轉(zhuǎn)換的參考電壓為+5 V。電路板可在微控制器重新編程后方便地插入;同時,電路板可通過跳線設(shè)置與終端用戶進(jìn)行電纜連接。由于微控制器與串行電路的電氣特性不同,工業(yè)標(biāo)準(zhǔn)級的MAX232芯片被使用以保證正確的數(shù)據(jù)傳輸(見圖2)。該芯片和一樣適用于低功耗場合。MAX232上連接的電容采用的是電解電容,電容值為1 μF。MAX232的11腳或者10腳接微控制器的USART輸出端,12腳或者9腳接微控制器的USART輸入端。微控制器的存儲器擴(kuò)展使用了32 k的I2C串行EEPROM(見圖3),數(shù)據(jù)可以保持200年。EEPROM的地址線A0、A1、A2被接地。串行數(shù)據(jù)線SDA和串行時鐘線SCL被分別連接到微控制器的B端口相應(yīng)管腳。寫保護(hù)WP接+5 V。

            

          a.JPG


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