P3.3用作外部中断口,中断方式为1,下降沿此并亩触发。
当然,要是将问题森森实用化的话,要在51单片机的IO口接上驱动电路蔽乱,不然带不动大功率的元件的。
#include <reg51.h>
sbit P1_0=P1^0
sbit P3_3=P3^3
void delay(unsigned char y)
{unsigned char i,k
for(i=0i<yi++)
{for(k=0k<0k++)}
}
void main()
{
while(1)
{
EA=1
EX1=1IT1=1
IT1=1
}
}
void SPEAKER() interrupt 2
{ unsigned char x
EA=0
P3_3=1
x=P3_3
while(x==0)
{
P1_0=0
delay(1)
P1_0=1
P3_3=1
x=P3_3
delay(1)
}
}
PS:如果是想学的话,程序只供参考,自己把程序写的更加好。要是只是应付老师之类的,就随意了。
这么简单的渣缓题物型目用步进梯形图都可以搞定了,第一步中:让蜂鸣器以2Hz的频率鸣叫,警灯以1Hz的频率闪烁,当10S后没有复位转到第二步,,,,,罩梁猜,,,,按下复位后转到第三步,,,停止。led灯宽姿用杜邦线一头接一个IO口(树莓派那些io口任选一个),一头接地,通过控慎迹绝制IO口控制led灯。蜂鸣器用杜邦线正极接一个IO口(任选一州誉个),一头接地,同样是通过控制IO口控制led灯。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)