21-8-2.c

来自「51单片机开发与应用技术详解(珍藏版)PPT及源码」· C语言 代码 · 共 39 行

C
39
字号
#include<ADUC812.H>						//头文件
#include<stdio.h>

void main(void)								//主函数
{
float DAC0V,DAC1V;						//声明变量

SCON=0x50;								//初始化串口
TMOD|=0x20;
TL1=0xF4;								//设置串口波特率为4800kbps
TH1=0xF4;
TR1=1;
TI=1;

DACCON=0x7B;							//设置D/A转换器
while(1)									//主循环
{
unsigned int i;								//声明变量
										//循环2^12=4096
for(i=0;i<4096;i++)
{
DACCON &=~0x04;						//清SYNC位

DAC0H=i>>8;							//DAC0
DAC0L=i&0xFF;
DAC0V=(float)i*5.0/4095.0;				//DAC0电压值

DAC1H=(4095- i) >>8;					//DAC1
DAC1L=(4095- i) &0xFF;
DAC1V=(float) (4095- i) *5.0/4095.0;			//DAC1电压值

DACCON|=0x04;						//设置SYNC位
										//输出结果
printf("Output %4.4X to DAC0(%1.4fV)\n",( unsigned)i,DAC0V);
printf("Output %4.4X to DAC1(%1.4fV)\n",( unsigned) (4095- i) ,DAC1V);
}
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?