1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現在位置:范文先生網>理工論文>電子通信論文>利用ADuC834構成二次儀表系統

    利用ADuC834構成二次儀表系統

    時間:2023-02-20 22:55:59 電子通信論文 我要投稿
    • 相關推薦

    利用ADuC834構成二次儀表系統

      摘要:介紹了一種利用ADuC834單片機設計的智能二次儀表,給出了該儀表的硬件和軟件設計方法,同時各部分地介紹了ADuC834的應用方法。
      關鍵詞:ADuC834二次儀表智能儀器
      
      ADuC834是一種真正意義上的完整的數據采集系統芯片。這種嶄新的微處理轉換器和先進的混合信號處理工藝顯著提高了數據采集系統的性能,并大幅度減少了應用系統的開發時間和成本。ADuC834是美國模擬器件(AD)公司最新投入市場的一款微處理轉換器產品,它集成了雙路Σ-Δ型ADC、溫度傳感器、增益可程控放大器(PGA)、8位51MCU、62k的可編程程序EEPROM、4k的數據FlashMemory、2304字節的片內RAM、12位DAC以及定器、I2C兼容的SPI和標準的串行I/O等。由此可見,ADuC834本身就是一個內嵌MCU的高性能數據采集系統,利用它可以極方便地構成各種二次儀表系統。
      
      1ADuC834芯片介紹
      
      ADuC834內部集成了兩路獨立的Σ-ΔADC,其中主通道ADC為24位,輔助通道ADC的16位。兩個獨立的ADC通道由于使用了數字濾波,因而可以實現寬動范圍的低頻信號測量,非常適用于稱重儀、張力應變儀、壓力轉換器和溫度測量等方面的應用。其中主通道的AD輸入范圍在±20mV~±2.56V之間分為8檔,使用時可任選一檔。由于使用了Σ-Δ轉換技術,因此可以實現高達24位無丟失碼性能,且輔助通道還可以作為溫度傳感器使用。
      
      ADuC834利用32kHz晶振來驅動片內鎖相環(PLL)以產生內部所需要的工作頻率,它的微控制器內核與8051兼容。片內外圍設備包括一個與SPI和I2C兼容的串行端口、多路數字輸入/輸出端口、看門狗定時器、電源監視器以及時間間隔計數器。同時片內還提供了62kB閃速/電擦除程序存儲器以及2304字節的片內RAM。
      
      ADuC834本身能提供程序串行下載,所以可以直接下載調試程序,非常方便于程序的開發和設計。因此,利用ADuC834可以非常簡單地制作各種復雜的二次儀表。
      
      2二次儀表的硬件電路設計
      
      本系統設計主要針對兩路傳器進行采樣,然后進行數據處理和相應的數據顯示,同時要求有復雜菜單設計。由于數據處理過程中要用到浮點乘除運算,同時要求有菜單設置,因此,利用ADuC834的62k程序存儲空間可以進行各種復雜的運算和處理,而不需要外擴程序存儲器。圖1是其硬件設計原理圖。
      
      本系統利用ADuC834的P3口構成3×4鍵盤,并通過P0、P2口和7HC138譯碼器來構成10個數碼管動態顯示屏,然后利用ADuC834的P1.0、P1.1和74HC164構成8個發光LED的顯示,同時利用ADuC834的串口SPI功能進行軟件調試。
      
      2.1數碼管的動態顯示
      
      利用ADuC834的P2口的P2.0~P2.4,并通過74HC138譯碼可以得到8個地址選通信號,而P2.5和P2.6則用于構成剩下的2個選通信號,同時把P0口作為顯示的數據接口。
      
      用程序可選擇ADuC834定時器T2的自裝入方式,并可將其定時為2ms,同時可采用動態方式刷新數碼管的顯示緩沖區,以實現動態顯示。
      
      2.2鍵盤控制電路
      
      由ADuC834的P3口的P3.0~P3.6可以構成鍵盤控制電路,其原理圖如圖2所示。
      
      由圖2可以看出,該鍵盤有3行4列共12個鍵,使用7個I/O作為控制線,其中采用P3.0、P3.1、P3.2作為行掃描線,采用P3.3~P3.6作為列加復線來構成矩陣鍵盤。運行中,當有鍵按下時,程序并不立即進行按鍵處理程序,只有在按鍵按下又松開的時刻才進入程序處理,因為這樣可防止按鍵的連擊和抖動。
      
      2.3發光LED設計
      
      由于本系統要求有8種狀態顯示,故需要使用8個發光LED來表示當前程序運行的不同狀態。而這可利用P1.0、P1.1和74HC164控制8個發光數碼管來進行顯示。
      
      3二次儀表的軟件程序設計
      
      3.1數據采集程序
      
      進行AD采集時,可選擇ADuC834的內部參考電壓(注意此時內部參考電壓是Vref=1.25V,所以ADC通道輸入范圍都縮小一半),并通過寫寄存器AD0CON的RN2、RN1和RN0來選擇不同的輸入范圍道替換,以實現對兩個通道輸入電壓的AD采樣。其初始采集程序如下:
      
      EADC=0;/*禁止ADC中斷*/
      
      ADCMODE=0x20;/*啟動主
      
      
      
      ADC*/
      
      tempfloat=flash_read(2);/*讀取輸入通道選擇配置*/
      
      temp=(uchar)(tempfloat-10001);/*采用24位的ADC,使用內部參考電壓,選擇AIN1、AIN2輸入,選擇雙極性編碼,
      
      ANGE=+-TEMP*/
      
      EADC=1;/*允許ADC采樣中斷*/
      
      ADCMODE=0x23;/*進行連續采樣*/
      
      ……
      
      下面是ADC中斷服務子程序,其中ADC的中斷號為6
      
      voidadc_int(void)interrupt6
      
      {
      
      EADC=0;
      
      RDY0=0;
      
      ……
      
      EADC=1;
      
      }
      
      3.2用戶閃速/電擦除數據寄存器的編程
      
      ADuC834的用戶閃速/電擦除數據存儲器的容量為4kB,利用這些EEPROM可以進行系統配置信息的存儲。具體程序如下:
      
      sfrEDARL=0xe6;
      
      #defineF_READ0x01/*讀取頁*/
      
      #defineF_WRITE0x02/*寫入頁*/
      
      #defineF_VERIFY0x04/*檢測頁*/
      
      #defineF_ERASE0x05/*擦除頁*/
      
      #define_F_ERASEALL0x06/*全部擦除*/
      
      floatflash_read(unsignedcharf_add)/*從地址f_add讀取浮點數據*/
      
      {
      
      floatidataf_data=0;
      
      floatidata*ph;
      
      ucharidata*puc;
      
      pf=&f_data;
      
      puc=(ucharidata*)pf;
      
      EDARL=f_add;
      
      ECON=0x01;
      
      *puc=EDATA1;
      
      ++puc;
      
      *puc=EDATA2;
      
      ++puc;
      
      *puc=EDATA3;
      
      ++puc;
      
      *puc=EDATA4;
      
      returnf_data;
      
      }
      
      unsignedcharflash_write(unsignedcharf_add,floatf_data)
      
      /*寫浮點數據f_data到地址f_add*/
      
      {
      
      floatidata*pf;
      
      ucharidata*puc;
      
      ucharidatatemp;
      
      pf=&f_data;
      
      puc=(ucharidata*)pf;
      
      EDARL=f-add;
      
      ECON=0x05;/*首先擦除*/
      
      
      
      
      EDARL=f_add;
      
      EDATA1=*(puc++);
      
      EDATA2=*(puc++);
      
      EDATA3=*(puc++);
      
      EDATA4=*(puc);
      
      ECON=0x02;/*寫數據*/
      
      ECON=0x04;/*檢測數據
      
      temp=ECON;
      
      if(temp==0)returnTRUE;
      
      elsereturnFLASE;
      
      }
      
      4結論
      
      本文所描述的二次儀表的軟硬件設計具有采集速度快、精度高、系統體積小的特點,特別適用于需要進行復雜運算且要求采集精度較高、體積較小的系統中。在實際的設計開發中,使用ADuC834可在很大程序上縮短開發時間并降低成本。另外,筆者設計的這款二次儀表在實際應用中也取得了很好的使用效果。
      
      
      
      

    【利用ADuC834構成二次儀表系統】相關文章:

    聚乙烯管道系統的構成與施工08-06

    聚乙烯管道系統的構成與施工08-06

    電子商務應用系統的構成08-05

    智能建筑的系統構成及造價確定08-06

    智能小區管理網絡系統的構成08-06

    現代集成制造系統的技術構成及發展策略研究08-06

    DSP和PBL3717A構成的步進電機的控制系統08-06

    USB2.0接口和DSP構成的高速數據采集系統08-06

    由W3100A構成嵌入式網關的家庭智能系統08-06

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      日韩肏屄久久网站视频 | 在线观看日韩精品一区二区 | 中中文字幕亚洲无线码 | 中文字幕欧美激情 | 日韩精品一区二区中文在线 | 日韩一区二区三区精品 |