|
#include<reg52.h> #define uchar unsigned char #define uint unsigned int sbit bee=P2^3; uchar flag; uint a; uint num,numt; void init() { bee=0; TMOD=0x21; TH0=(65536-2000)/256; TL0=(65536-2000)%256; TH1=0xfd; TL1=0xfd; TR1=1; SM0=0; SM1=1; REN=1; EA=1; ES=1; ET0=1; bee=0; flag=0; } void main() { init(); while(1) { if(flag==1) { ES=0; switch (a) { case 1: num=100; TR0=1; break; case 2: num=50; TR0=1; break; case 3: num=25; TR0=1; break; case 4: TR0=0; bee=0; break; default: break; } ES=1; flag=0; } } } void ser()interrupt 4 { RI=0; a=SBUF; flag=1; } void time()interrupt 1 { TH0=(65536-2000)/256; TL0=(65536-2000)%256; numt++; if(numt>=num) { numt=0; bee=~bee; } } 这样可以的。 |
admin 发表于 2015-1-9 15:34 现在是启动程序后蜂鸣器就响了,并且串口调试控制不管用。 |
| 楼主你这个程序现在运行是什么效果? |