|
|
一開串口中斷,就沒有采樣數(shù)據(jù)了
單片機源程序如下:
void main()
{
config();//chuankou chushihua
EX1=1;//zhongduan chushihua
IT1=1;
EA=1;
ADC=0;
timer0init();
while(1)
{
send_byte(ADC_cvt);
seg_display(ADC_cvt);//shumaguan xianshi
ADC=0;
}
}
void timer0init()
{
TMOD |= 0x01;
TH0 = (65536-45872)/256;
TL0 =(65536-45872)%256;
EA = 1;
ET0 = 1;
TR0 = 1;
}
void Timer0() interrupt 1 using 1
{
TH0 = (65536-45872)/256;
TL0 =(65536-45872)%256;
ADC_flag++;
if(ADC_flag>=20)
{
ADC_flag=0;
D1=~D1;
ADC_cvt=ADC;
}
}
void config()//chuankou chushihua
{
SCON=0X50;
TMOD&=0X0f;
TMOD|=0X20;
TH1=256-(11059200/12/32)/9600;
TL1=TH1;
ET1=0;
ES=1;
TR1=1;
}
void send_byte(unsigned char xbyte)
{
unsigned char i=0;
SBUF=xbyte;
while(~TI);
TI=0;
}
|
|