📄 msc1211.c
字号:
#include<reg1211.h>
sbit P17 = P1^7;
/*****************************************************************************************************
IO初始化子程序
*****************************************************************************************************/
void IOInit(void)
{
WDTCON&=~0x40; //禁用看门狗
P1DDRH=0x75;
// HCR1=0x0c;
}
/*****************************************************************************************************
串口1初始化子程序
*****************************************************************************************************/
void UARTInit(void)
{
SCON1=0x70;//串口方式1,异步10位
CKCON=0;//T1为晶振频率12分频
TMOD=0x20;//定时器1八位自动重装方式
TL1=0xf8;//波特率300
TH1=0xf8;
TR1=1;//启动定时器1
}
/*****************************************************************************************************
ADC初始化
*****************************************************************************************************/
void ADCInit(void)
{
ADCON0=0x30;//打开内部基准电压源2.5V;输入缓冲器无效;PGA=0
ADCON1=0x70;//单极性输入;滤波器稳定模式为sinc3;无校准
ADCON2=0xff;//设定抽取因子为1024
ADCON3=0x03;
ACLK=0x08; //配置模拟时钟寄存器 FREQ
}
/*****************************************************************************************************
启动ADC
*****************************************************************************************************/
void ADCStart(void)
{
PDCON&=0xf7;
}
/*****************************************************************************************************
查询读取ADC结果
*****************************************************************************************************/
double ADCRead(void)
{
unsigned char adcH,adcM,adcL,i,temp;
double result;
for(i=0;i<4;i++)
{
while(AISTAT&0x20)
{
temp=ADRESL; // 丢弃4个转换结果
}
}
while(AISTAT&0x20)
{
adcL=ADRESL;
adcM=ADRESM;
adcM=ADRESH;
result=ADRESH<<16 + ADRESM<<8 + ADRESL;
return result;
}
}
/*****************************************************************************************************
*****************************************************************************************************/
void main(void)
{
UARTInit();
IOInit();
while(1)
{
SBUF1='a';
// while(TI==0);
TI=0;
P17=0;
P17=1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -