(基于51核的STC12C5A60S2,keil uvision5 mdk 5.25 编译)
#include <STC12C5A60S2.h>
#define ADC_POWER 0x80 //ADC power control bit
#define ADC_FLAG 0x10 //ADC complete flag
#define ADC_START 0x08 //ADC start control bit
#define ADC_SPEEDLL 0x00 //420 cLOCks
#define ADC_SPEEDL 0x20 //280 clocks
#define ADC_SPEEDH 0x40 //140 clocks
#define ADC_SPEEDHH 0x60 //70 clocks
#define ADC_CH1 0x01 //选择通道1
typedef unsigned char u8;
sbit BEEP = P1 ^ 0; //置1则响
void delay_2ms(unsigned long int time) //2ms的基
{
unsigned long int i;
for (i = 0; i < time * 100; i++);
}
void UART1_Init()
{
SCON = 0x50;
EA = 1;
ES = 1;
TR1 = 1;
TMOD = 0x20;
TH1 = 0xfd;
TL1 = 0xfd;
}
void Uart1_ISR() interrupt 4
{
ES = 0;
if (TI == 1) // 如果TI=1,则说明