📄 dfg.c
字号:
#include<reg52.h>
#include<intrins.h>
sfr P1_ADC_EN = 0x97;
sfr ADC_CONTR = 0xC5;
sfr ADC_DATA = 0xC6;
typedef unsigned char INT8U;
typedef unsigned int INT16U;
//延时子程序
void delay(INT8U delay_time)
{
INT8U n;
INT16U m;
for (n=0; n<delay_time; n++)
{
for (m=0; m<10000; m++);
}
}
//初始化川口
void initiate_RS232 (void)
{
ES=0;
SCON=0x50;
T2CON=0x34;
RCAP2H=0xFF;
RCAP2L=0xDB;
ES=1;
}
//发送字符
void Send_Byte(INT8U one_byte)
{
TI = 0;
SBUF = one_byte;
while (TI == 0)
{
;
}
TI = 0;
}
//AD
INT8U get_AD_result(INT8U channel)
{
INT8U AD_finished = 0;
ADC_DATA = 0;
ADC_CONTR = channel;
delay(1);
ADC_CONTR |= 0x08;
AD_finished = 0;
while ( AD_finished == 0 )
{
AD_finished = (ADC_CONTR & 0x10);
}
ADC_CONTR &= 0xF7;
return (ADC_DATA);
}
void main()
{
initiate_RS232();
P1 = P1 | 0x63;
P1_ADC_EN = 0x63;
while(1)
{
Send_Byte(get_AD_result(0));
delay(0x200);
Send_Byte(get_AD_result(1));
delay(0x200);
Send_Byte(get_AD_result(5));
delay(0x200);
Send_Byte(get_AD_result(6));
delay(0x200);
Send_Byte(0);
Send_Byte(0);
Send_Byte(0);
Send_Byte(0);
delay(0x200);
delay(0x200);
delay(0x200);
delay(0x200);
delay(0x200);
delay(0x200);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -