1、/***************************************** 名称:用D钽吟篑瑜AC0832生成锯齿波 ******忮氽阝另**********************************/#include <reg51.h>#include <absacc.h>#define uchar unsigned char#define uint unsigned int#define DAC0832 XBYTE[0xfffe]uchar i=0,t;sbit k1=P3^0;sbit k2=P3^2;sbit k3=P3^4;void delay(uint ms){ while(ms--) for(t=0;t<120;t++);}void juchibo() //生成锯齿波{ if(k1==0){ delay(1); DAC0832=--i; delay(1);}}void sanjiaobo ()//生成三角波{ if(k2==0){ delay(1); for(i=0;i<0xff;i++) { DAC0832=i; delay(1); } for(i=0;i<0xff;i++) { DAC0832=0xff-i; delay(1); }}}void fangbo()//生成方波{ if(k3==0){ delay(1); for(i=0;i<0xff;i++) { DAC0832=0xff; delay(1); DAC0832=0; delay(1); }}}void main(){ while(1) { juchibo(); sanjiaobo (); fangbo(); }}
2、仿真图
3、运行图