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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于STC89C516RD+單片機的手持式電子鼻的設(shè)計

          基于STC89C516RD+單片機的手持式電子鼻的設(shè)計

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

          2.2 采集終端
          采集終端的主要作用是采集及存儲MOS氣體傳感器陣列的響應(yīng)信息,并通過無線模塊發(fā)送到處理終端。采集終端的電路主要分為以下幾個模塊:
          1)的最小電路模塊,用于控制其它所有的模塊及元件;
          2)ADC模塊,用于采集MOS氣體傳感器陣列的信號電壓;
          3)DAC調(diào)理模塊,即D/A轉(zhuǎn)換并調(diào)理模塊,用于輸出并調(diào)理加熱電壓的信號;4)存儲模塊,用于存儲ADC模塊采集的數(shù)據(jù);
          5)無線模塊,用于發(fā)送與接收數(shù)據(jù)或指令;
          6)微型氣泵,三通電磁閥的開關(guān)與切換的控制。
          2.2.1 管腳設(shè)置
          本文所采用的型號是+,封裝形式為POFP。它具有36個可操作的I/O口,I/O分配見圖4。由于單片機外圍電路涉及的模塊與元件較多,I/O資源不夠分配,故需要擴展I/O口。本文采用8個型號為MAX4634的四路模擬多路復(fù)用器/開關(guān)對單片機的P0口進行擴展。MAX4634共用4個通道可選擇:N01、N02、N03和N04??赏ㄟ^單片機的2個I/O來控制MAX4634的選擇管腳A0與A1的電平狀態(tài),從而切換該開關(guān)的通道。對應(yīng)關(guān)系如下:A0=0,A1=0,選中NO1;A0=1,A1=0,選中NO2;A0=0,A1=1,選中NO3;A0=1,A1=1,選中NO4。因此單通道的P0口可被擴展為四通道的P0口,其中兩個通道NO1、NO2分別連接至存儲模塊和無線模塊。
          2.2.2 ADC模塊
          ADC模塊由A/D轉(zhuǎn)換芯片TLC1549和八路模擬多路復(fù)用器/開關(guān)MAX4617組成,見圖4。TLC1549為10位精度單通道A/D芯片,分辨率為4.88mV(1LSB)。通過控制單片機的3個I/O-P32、P33、P34的電平狀態(tài),可改變MAX4617的3個選擇管腳A、B、C的邏輯狀態(tài),從而切換其8路開關(guān)。因此該ADC模塊能采集由8個MOS氣體傳感器構(gòu)成的陣列的響應(yīng)信號電壓。

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

          d.jpg


          2.2.3 DAC調(diào)理模塊
          DAC調(diào)理模塊的電路如圖5所示。其中的D/A轉(zhuǎn)換芯片TLC5615由單片機的I/O-P15、P16、P17直接控制,在穩(wěn)壓二極管TLC431的作用下,輸出模擬電壓信號。該電壓信號在經(jīng)過運算放大器芯片LM324處理后,用作傳感器陣列的加熱電壓。

          e.jpg



          評論


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