📄 da.c
字号:
#include <stdio.h>
#include <ADUC812.H>
void main (void)
{
//设置串口波特率
SCON = 0x50;
TMOD |= 0x20;
TH1 = 0xFA;
TR1 = 1;
TI = 1;
PCON |= 0x80;
//设置A/D转换12-bit 模式, 范围是0-VDD
//DAC0 DAC1 DACCON = 0111 1?01
DACCON = 0x7B; //每循环 4096次转换DAC0 和DAC1
while (1)
{
unsigned int i;
//满12 bit: 2^12 = 4096
for (i = 0; i < 4096; i++)
{
DACCON &= ~0x04; //清SYNC位
DAC0H = i >> 8;
DAC0L = i & 0xFF;
DAC1H = (4095 - i) >> 8;
DAC1L = (4095 - i) & 0xFF;
DACCON |= 0x04; //设置SYNC位
printf ("Output %4.4X to DAC0 (%1.4fV) ", (unsigned) i, (float) i * 5.0 / 4095.0);
printf ("Output %4.4X to DAC1 (%1.4fV)\n", (unsigned) 4095-i, (float) (4095-i) * 5.0 / 4095.0);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -