📄 ad.c
字号:
例如,A/D(芯片为ADuC812)仿真程序源代码如下:
#include <ADUC812.H>
#include <stdio.h>
void main (void)
{
unsigned char chan_2_convert;
SCON = 0x50; //设置串口波特率为300 Baud
TMOD |= 0x20;
TH1 = 0xA0;
TR1 = 1;
TI = 1;
ADCCON1 = 0x7C; //设置每通道的A/D转换为连
//续的0111 1100
while (1)
{
unsigned int conv_val;
unsigned char channel;
//开始转换,并且一直到完成
chan_2_convert = (chan_2_convert + 1) % 8;
ADCCON2 = (ADCCON2 & 0xF0) | chan_2_convert;
SCONV = 1;
while (ADCCON3 & 0x80);
//读A/D值并且打印
channel = ADCDATAH >> 4;
conv_val = ADCDATAL | ((ADCDATAH & 0x0F) << 8);
printf ("ADC Channel %bu = 0x%4.4X\r\n", channel, conv_val);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -