首页 单片机按键控制蜂鸣器发声程序

单片机按键控制蜂鸣器发声程序

举报
开通vip

单片机按键控制蜂鸣器发声程序#include<reg52.h>typedefunsignedcharuint8;typedefunsignedintuint16;uint8Count,i;sbitSpeak=P1^2;//蜂鸣器器控制脚 sbitkey1=P3^2;//按键控制引脚sbitkey2=P3^3;sbitkey3=P3^4;/*以下数组是音符编码*/uint8codeSONG[]={0xff,0x39,0x30,0x33,0x30,0xff,0x30,0x30,0x00,};voidTime0_Init()//定时器T...

单片机按键控制蜂鸣器发声程序
#include<reg52.h>typedefunsignedcharuint8;typedefunsignedintuint16;uint8Count,i;sbitSpeak=P1^2;//蜂鸣器器控制脚 sbitkey1=P3^2;//按键控制引脚sbitkey2=P3^3;sbitkey3=P3^4;/*以下数组是音符编码*/uint8codeSONG[]={0xff,0x39,0x30,0x33,0x30,0xff,0x30,0x30,0x00,};voidTime0_Init()//定时器T0方式1,定时10ms{TMOD=0x01;IE=0x82;TH0=0xDC;TL0=0x00;}voidTime0_Int()interrupt1{TH0=0xDC;TL0=0x00;Count++;}voiddelay(uint8k)//按键防抖延时{uint8j;while((k--)!=0){for(j=0;j<125;j++){;}}}voidDelay_xMs(uint8x)//发声延时{uint8i,j;for(i=0;i<x;i++){for(j=0;j<3;j++);}}voidPlay_Song(uint8i)//蜂鸣器发声函数{uint8Temp1,Temp2;uint8Addr;Count=0;//中断计数器清0Addr=i*3;while(1){Temp1=SONG[Addr++];if(Temp1==0xFF)//休止符{TR0=0;Delay_xMs(100);}elseif(Temp1==0x00)//歌曲结束符{return;}else{Temp2=SONG[Addr++];TR0=1;while(1){Speak=~Speak;Delay_xMs(Temp1);if(Temp2==Count){Count=0;break;}}}}}voidkeyscan(void)//按键切换声音函数{if(key1==0){delay(10);if(key1==0){i=0;}}if(key2==0){delay(10);if(key2==0){i=1;}}if(key3==0){delay(10);if(key3==0){i=2;}}}voidMain(){Time0_Init();//定时器0中断初始化while(1){keyscan();Play_Song(i);}}欢迎共阅欢迎共阅欢迎共阅
本文档为【单片机按键控制蜂鸣器发声程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
桃红
喜欢阅读
格式:doc
大小:15KB
软件:Word
页数:5
分类:
上传时间:2019-08-28
浏览量:31