📄 moshu.c
字号:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
#define Start16AD 0xee
#define N 2500
uchar Res16ADC=255,sm=128,fir=5,sec=6,thi=7;
double ResData1=0.0;
uint ResData2=0;
sfr P1ASF=0x9D;
sfr ADC_CONTR=0xBC;
sfr ADC_RES=0xBD;
sfr ADC_RESL=0xBE;
sfr AUXR1=0xA2;
sfr IPH=0xB7;
void init_16ADC (void)
{
IE=0xA0; //开中断
P1ASF=0x40;//选择P1.6为AD输入口
ADC_CONTR=ADC_CONTR|0xE6;//打开AD电源、设置P1.6为8位AD转换脚、速度最快。
}
void Key16ADC(void) interrupt 5 using 1
{
Res16ADC=ADC_RES;
ResData1=Res16ADC*5.0*100/256;;
//ResData1=ResData1
ResData2=ResData1;
ADC_CONTR= ADC_CONTR&0xE7 ;
}
void mDly(uint i)//0<i<65536
{
uint j,k;
k=i;
while(k--)
for(j=0;j<50;j++);
}
void Display(void)
{
fir=ResData2/100;
sec=(ResData2-100*fir)/10;
thi=(ResData2-fir*100)%10;
P1=0xfe;P2=fir;
P1=0xfd;P2=sec;
P1=0xfb;P2=thi;
}
void main()
{
init_16ADC();
//while(1)//启动STC12C5A60S2看门狗之后就可以去掉while语句
//{
ADC_CONTR=Start16AD;
mDly(N);
Display();
//}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -