標(biāo)題: 51單片機A/D,D/A的應(yīng)用 [打印本頁]

作者: 125@    時間: 2020-7-7 15:29
標(biāo)題: 51單片機A/D,D/A的應(yīng)用
這是我自己做的關(guān)于A/D,D/A技術(shù)應(yīng)用相關(guān)實驗的程序,已經(jīng)驗證過可以仿真
1、設(shè)計51單片機和ADC0809 的接口,使用中斷方式順序采集八路模擬量,存入地址為20~27H的內(nèi)部RAM中,循環(huán)往復(fù),不斷采集。
#include<reg51.h>
#include<absacc.h>
unsigned char xdata *adc_port;
unsigned char data *adc_result;
void main()
{
   adc_port=0x7ff8;  
   adc_result=0x20;
   EX1=1;
   IT1=1;
    EA=1;
   *adc_port=0;
   while(1) {  ;  }
}
extint1() interrupt 2  
     
*adc_result=*adc_port;
                        
    ifadc_port=0x7fff)  
        {
                  adc_port=0x7ff8;  
          adc_result=0x20;
        }
   else
        {
        adc_port++;
   adc_result++;  
   }  
               
    *adc_port=0;      
  
2、設(shè)計51單片機和DAC0832的接口,要求地址為F7FFH,滿量程電壓為5V,采用單緩沖方式,畫出電路圖,編寫程序,輸出下列要求的模擬電壓。
  1) 幅值為4V,周期為2ms 的方波。
#include <reg51.h>
#include <absacc.h>
#define DAC0832 XBYTE[0xF7FF]
void delay()
{
  TMOD=0x01;
  TH0=(65536-500)/256;
  TL0=(65536-500)%256;
   TR0=1;
   do{;} while(!TF0);
    TF0=0;
}
main ()
{ unsigned a=0;
  while(1)
    {
      DAC0832=a;
      delay();
a=a^0xcc;
     }   
}
2)周期為5ms的階梯波,階梯的電壓幅值分別為1V、2V、3V4V、5V,每一個階梯1ms。
#include <reg51.h>
#include <absacc.h>
#define DAC0832 XBYTE[0xF7FF]
unsigned char dat=51;
void main()
{
  EA=1;
  TR0=1;
  ET0=1;
  TMOD=0x01;
  TH0=(65536-1000)/256;
  TL0=(65536-1000)%256;
  while(1)
  {
   DAC0832=dat;
        }
  }
  void DAC() interrupt 1
  {
   TH0=(65536-1000)/256;
   TL0=(65536-1000)%256;
        dat=dat+51;
        if(dat>256){dat=51;}
        }
2)周期為5ms的階梯波,階梯的電壓幅值分別為1V、2V3V、4V、5V,每一個階梯1ms。
#include <reg51.h>
#include <absacc.h>
#define DAC0832 XBYTE[0xF7FF]
unsigned char dat=51;
void main()
{
  EA=1;
  TR0=1;
  ET0=1;
  TMOD=0x01;
  TH0=(65536-1000)/256;
  TL0=(65536-1000)%256;
  while(1)
  {
   DAC0832=dat;
        }
  }
  void DAC() interrupt 1
  {
   TH0=(65536-1000)/256;
   TL0=(65536-1000)%256;
        dat=dat+51;
        if(dat>256){dat=51;}
        }



圖片1.png (86.18 KB, 下載次數(shù): 34)

仿真電路圖

仿真電路圖





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1