这个程序是什么意思?求解答typedef unsigned char uint8;typedef unsigned int uint16;sbit s1=P1^0;sbit s3=P3^2;sbit light=P3^0;sbit speaker=P3^1;sbit zhishi=P1^2;void baojing(){ uint8 counter; TMOD=0x01; TH0=0xB8; TL0=0x0
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/21 20:06:55
![这个程序是什么意思?求解答typedef unsigned char uint8;typedef unsigned int uint16;sbit s1=P1^0;sbit s3=P3^2;sbit light=P3^0;sbit speaker=P3^1;sbit zhishi=P1^2;void baojing(){ uint8 counter; TMOD=0x01; TH0=0xB8; TL0=0x0](/uploads/image/z/6464985-33-5.jpg?t=%E8%BF%99%E4%B8%AA%E7%A8%8B%E5%BA%8F%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D%3F%E6%B1%82%E8%A7%A3%E7%AD%94typedef++unsigned+char+++uint8%3Btypedef++unsigned+int+++++uint16%3Bsbit+s1%3DP1%5E0%3Bsbit+s3%3DP3%5E2%3Bsbit+light%3DP3%5E0%3Bsbit+speaker%3DP3%5E1%3Bsbit+zhishi%3DP1%5E2%3Bvoid+baojing%28%29%7B++++uint8++counter%3B++++TMOD%3D0x01%3B++++TH0%3D0xB8%3B++++TL0%3D0x0)
这个程序是什么意思?求解答typedef unsigned char uint8;typedef unsigned int uint16;sbit s1=P1^0;sbit s3=P3^2;sbit light=P3^0;sbit speaker=P3^1;sbit zhishi=P1^2;void baojing(){ uint8 counter; TMOD=0x01; TH0=0xB8; TL0=0x0
这个程序是什么意思?求解答
typedef unsigned char uint8;
typedef unsigned int uint16;
sbit s1=P1^0;sbit s3=P3^2;
sbit light=P3^0;sbit speaker=P3^1;
sbit zhishi=P1^2;
void baojing()
{
uint8 counter;
TMOD=0x01;
TH0=0xB8;
TL0=0x00;
TR0=1;
while(s3)
{
if(1==TF0)
{
TF0=0;
TH0=0xB8;
TL0=0x00;
counter++;
}
if(25==counter)
{
counter=0;
light=~light;
speaker=~speaker;
}
}
}
void zs()
{
这个程序是什么意思?求解答typedef unsigned char uint8;typedef unsigned int uint16;sbit s1=P1^0;sbit s3=P3^2;sbit light=P3^0;sbit speaker=P3^1;sbit zhishi=P1^2;void baojing(){ uint8 counter; TMOD=0x01; TH0=0xB8; TL0=0x0
很简单的一个程序,主要目的是实现时间到了告警和指示灯状态翻转的程序.
先用51自身的定时器产生一个最大的计时周期,计时时间到,产生中断,TF0标志位置位,由于这个最大的计时周期不能满足要求,因此,在TF0中断后清相关标志位,再用counter做进一步累加,以获取更大的计数周期,当counter累加25次后,清累加器counter以便下一次累加,相应的灯(light)和蜂鸣器(speaker)状态发生翻转.