用89C51单片机和蜂鸣器播放“ 生日快乐”歌的C程序 12M晶振

用89C51单片机和蜂鸣器播放“ 生日快乐”歌的C程序 12M晶振,第1张

1、写入头文件。

2、加入宏定义

3、位定义 给出蜂鸣器变量 beep,接口是P2^3。sbit beep = P2^3。

4、设计延迟函数:void delay(uint z){uint x,yfor(x = zx >0x--)for(y = 60y >0 y--)} 。

5、设计主函数。

6、加入循环效果,蜂鸣器。beep = ~beep中: ~按位取反。

一次定时50ms,中断20次和10次就 是1S和0.5s

uchar a=0

sbit fmq=P1^0

主程序:

void main( )

{

TMOD=0X01

TH0=(65536-50000)/256

TL0=(65536-50000)%256

EA=1

ET0=1

TR0=1

while(1)

{

fmq=1

a=20

while(a!=0)//等待20次中断

fmq=0

a=10

while(a!=0)//等待10次中断

}

}

中断程序为:

void timer0( )interrupt 1

{

TH0=(65536-50000)/256

TL0=(65536-50000)%256

a--

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12132048.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存