51proteus仿真:生成锯齿波

at89c51和dac0832生成锯齿波的proteus仿真

 

之前做了一个adc0832的DA转换实验,利用adc0832把采集到的模拟信号(电压)转换成数字信号,输入到单片机,然后在7段数码管中显示出信号的电压来。

 

所以这一次做一做数字转模拟的实验。

51的比较多的数模转换实验是做信号发生器,锯齿波,正弦波,方波等。

先做一做锯齿波吧。运放用的是标准运放opamp,主要是为了免去了解运放芯片参数的麻烦。

 锯齿波

 程序如下:

为了简单,我直接把dac0832设置为直通方式。实际运用的时候,直通方式是不能直接接单片机的。

 

 #include <reg52.h>
 #include <intrins.h>

 sbit CS0=P3^0;
 sbit WR0=P3^1;


 main()
 {
  unsigned char k;
   WR0=0;
  CS0=0;
    
  while(1)
  {
    _nop_();
   _nop_();
 for(k=255;k>0;k--)
 {

 
 
  P2=k;
   _nop_();
    _nop_();
    _nop_();
    }

   }

 }

 

 

posted @ 2011-10-25 22:07  proteus学习  阅读(2738)  评论(0编辑  收藏  举报