新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 主流A/D轉換芯片學習詳解(1):美信MAX197

        主流A/D轉換芯片學習詳解(1):美信MAX197

        作者: 時間:2012-08-06 來源:網絡 收藏


         采樣及應用
          的內部核心部分是一個采用逐次逼近方式的DAC,前端包括一個用來切換模擬輸入通道的多路復用器以及輸入信號調理和過壓保護電路。其內部還建有一個2.5V的能隙基準電壓源,管腳如圖3所示。

        本文引用地址:http://www.104case.com/article/154197.htm
          
          圖3 引腳定義視圖

          MAX197既可以使用內部參考電壓源,也可以使用外部參考電壓源。當使用內部參考源時,內部的2.5V基準源經放大后向REF提供4.096V參考電平。這時應在REF與AGND之間接入一個4.7μF電容,在REFADJ與AGND之間接入一個0.01μF電容。當使用外部參考源時,接至REF的外部參考源必須能夠提供400μA的直流工作電流,且輸出電阻小于10Ω。如果參考源噪聲較大,應在REF端與模擬信號地之間接一個4.7μF電容。模擬量輸入通道擁有±16.5V的過電壓保護,即使在關斷狀態下,保護也有效。
          通過將控制寄存器的ACQMOD位置0可選擇內部采集控制模式。在內部采集控制模式下,寫信號脈沖將開始一個由內部定時控制長度的采集間隔。在6個時鐘周期長度的采集間隔結束時,將啟動下一個。
          在內部采集控制模式下,MAX197的模擬信號輸入電路擁有5MHz的信號帶寬,當使用內部采集控制模式并使用外接2MHz時鐘時,可達到100kSa/s的通過速率。
          通過將控制寄存器的ACQMOD位置1可選擇外部采集控制模式。采用外部采集控制模式是為了精確控制采樣孔徑或獨立控制采集和時間。由用戶分別通過兩個寫信號脈沖控制采集間隔和開始時間,第一個寫信號脈沖時將控制寄存器的ACQMOD位置1,開始一個采集間隔。第二個寫信號脈沖時將控制寄存器的ACQMOD位置0,結束采集間隔并開始轉換。然而,如果在第二個寫信號脈沖時將控制寄存器的ACQMOD位置1,則將開始又一個采集間隔。
          在第一個寫信號脈沖和第二個寫信號脈沖時,控制寄存器中的模擬通道選擇位必須置相同的值。電源關斷模式控制位可以置不同的值。
          選用AT89C51單片機作為主處理器。通過P0.0~P0.7與MAX197的D0~D7相連,既用于輸入MAX197的初始化控制字,也用于讀取轉換結果數據。 用AT89C51單片機的P2.7作片選信號,則MAX197的高位地址為7FH。選擇MAX197為軟件設置低功耗工作方式,所以置SHDN腳為高電平。本文采用外部基準電壓,所以REFDJ接高電平,而REF則接外部輸入參考電壓。AT89C51單片機的P1.1腳用做判讀高、低位數據的選擇線,直接與HBEN腳相連。MAX197的INT腳可與AT89C51的INT0相連,以便實現中斷,讀取轉換結果。MAX197只有8個通道,一共要采32路壓力值,用8片4選1的模擬開關實現。
          在電路中,AGND和DGND應相互獨立,各種電源與模擬地之間都用0.1mF電容來消除電源的紋波。
          AX197的硬件電路設計如圖4所示。

          
          圖4 MAX197連接原理圖

          單片機數據采集程序設計如下:
          void scan(uchar channel){ //channel為通道數
          uchar conword,low8,high4,i; //定義變量
          for(i=0;i《8;i++){
          if(i》0)channel=channel》》1;
          if(channel1){
          conword=0x50+i;
          P12=1;
          XBYTE[0xE000]=conword; //讀取數據
          while(P32==1){}
          //P12=0;
          P13=0;
          low8=XBYTE[0xE000]; //低位處理
          P13=1;
          high4=XBYTE[0xE000]0x0F; //高位處理
          SUMX[i]=high4*256+low8; //數據整合
          }
          }
          }
          根據系統的要求以及的性能,選擇10ms為采樣的最小間隔。后面在PC端的程序可調整設定發送間隔,如果發送間隔大于采樣間隔,則將采樣得到的完整數據取均值后再發送,可以起到濾波的作用。
          if(FREQ》=10){ //INTERVAL 設定采樣間隔為10ms
          FREQ=0;
          scanall();
          NUM1++;
          P16=0;
          P17=0;
          }
          if(NUM1》=INTERVAL){ //interval 即為PC端發送的指令
          for(i=0;i《32;i++){ //如果大于10ms則取平均值
          if(SUM[i]!=0){
          union{
          ulong usum;
          uchar ustr[4];
          } nua;
          uchar a;
          transfer(i);
          SUM[i]=SUM[i]/NUM1;
          nua.usum=SUM[i];
          a=nua.ustr[2];
          transfer(a);
          a=nua.ustr[3];
          transfer(a);
          SUM[i]=0;
          }
          }
          NUM1=0;
          NUM2++;
          }
          串行通信部分

          
          圖5 MAX232通信連接原理圖

          采用MAX232與PC機通信,電路連接如圖5所示。
          總結
          將系統進行實際測試,連續運行14小時正常。該系統已用于水庫模型測量實驗中,運行良好。將前端傳感器更換后,后級系統可以應用于多種場合,另外加入保護電路后更可用于惡劣條件下。系統前級提供4~20mA的電流模擬信號,后級即可工作并將信號輸出,通用性較強。


        上一頁 1 2 3 下一頁

        關鍵詞: 詳解 美信 MAX197 學習 芯片 A/D 轉換 主流

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 方城县| 武冈市| 高尔夫| 万山特区| 绥宁县| 衡阳市| 墨脱县| 玛曲县| 象山县| 邵阳县| 咸丰县| 绥江县| 富平县| 屏边| 友谊县| 太仓市| 白山市| 承德县| 石河子市| 资阳市| 分宜县| 乌拉特前旗| 金山区| 大宁县| 米易县| 长寿区| 分宜县| 洱源县| 锦州市| 泸定县| 阜平县| 东莞市| 绥芬河市| 白玉县| 嘉黎县| 河西区| 葫芦岛市| 芜湖县| 丽水市| 廉江市| 花垣县|