资源简介

51单片机通过蜂鸣器实现电子琴7个音,一个按键控制一个音。protues仿真和程序

资源截图

代码片段和文件信息

/**********************************************
名称:电子琴演奏程序
作者:hs795
功能:按下按键蜂鸣器发出相应的音符,可以进行演奏!
p20接的按键用于播放示例音乐,p21用于停止当前播放音乐
                                 2011年4月16日
**********************************************/
#include
#define unchar unsigned char
#define unint unsigned int
sbit beep=P3^1;//蜂鸣器接口
sbit p30=P3^0; //演示歌曲用
sbit p31=P3^2; //停止键
sbit pk1=P3^3; 
sbit pk2=P3^4; 
sbit pk3=P3^5; 
//数码管段码表
unchar code LED[]={0xc00xf90xa40xb00x990x920x820xf80x800x900xff};//{0x3F0x060x5B0x4F0x660x6D0x7D0x070x7F0x6F0x00}
//以下定义低中高共21个音阶的定时参数通过定时器来实现不同音频的输出
unint code ti[21][2]={
{0xf80x8c}{0xf90x5c}{0xfa0x14}{0xfa0x67}{0xfb0x04}{0xfb0x90}{0xfc0x0c}  //低音
{0xfc0x44}{0xfc0xb6}{0xfd0x09}{0xfd0x34}{0xfd0x82}{0xfd0xc8}{0xfe0x06}  //中音
{0xfe0x22}{0xfe0x56}{0xfe0x8c}{0xfe0x9a}{0xfe0xc1}{0xfe0xe4}{0xff0x03}}; //高音
//简谱由音阶x[]和节拍y[]两部分组成
//节拍为每个音阶的输出时间
//下列出现“+7”是为了得到中音
//**《两只老虎》
unchar code  x0[]={1+72+73+71+71+72+73+71+73+74+75+73+74+75+75+76+75+74+73+71+75+76+75+74+73+71+71+751+71+751+7};
unchar code  y0[]={44444444448448313144313144448448};
//**《粉刷匠》
unchar code  x1[]={5+73+75+73+75+73+71+72+74+73+72+75+75+73+75+73+75+73+71+72+74+73+72+71+72+7
2+74+74+73+71+75+72+74+73+72+75+75+73+75+73+75+73+71+72+74+73+72+71+7};
unchar code  y1[]={4444448444416444444844441644444484444164444448444416};
//**《祝你生日快乐》
unchar code  x2[]={55651+7755652+71+7555+73+71+7764+74+73+71+72+71+7};
unchar code  y2[]={8888816888881688888888888816};
//**《最幸福的人》
unchar code  x3[]={3+75+76+76+76+76+76+73+143+142+142+143+142+147+77+76+75+75+76+77+71+146+76+75+76+72+142+142+141+142+142+143+141+147+76+7
   5+75+75+76+77+77+77+71+142+142+141+147+76+7};
unchar code  y3[]={224224222222842222222222822228222282222222222224};
//**《天边的眷恋》
unchar code x5[]= {3+73+72+73+73+701+72+71+77660066+76+75+75+75+72+72+71+72+7
3+7003+73+76+76+75+75+75+702+72+75+73+72+71+70671+701+71+72+73+7770};
unchar code y5[]={2211821121144442221122222642
22221142222211211822223184};
//**《心肝宝贝》
unchar code x6[]={3+73+73+72+73+72+71+71+71+73561+71+761+75+73+73+70

6+76+76+75+76+73+75+75+75+73+75+73+72+72+71+761+73+7

2+73+72+72+73+73+73+72+73+72+71+71+71+73561+71+761+7
5+73+73+706+76+76+75+76+73+75+75+75+73+75+73+72+72+7
1+761+76+75+73+75+75+75+75+76+75+73+72+72+72+72+72+7
3+72+71+761+71+71+7033665561+71+71+71+7665+75+7
5+76+75+73+73+72+72+

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    .CA....      7087  2011-04-27 00:40  单片机实现电子琴\单片机实现电子琴.c

    .CA....    171448  2011-07-13 15:03  单片机实现电子琴\单片机实现电子琴.DSN

    .CA....       768  2011-10-08 21:17  单片机实现电子琴\单片机实现电子琴.PWI

    .CA....      5897  2011-04-27 00:40  单片机实现电子琴\电子琴.hex

    .CA....     13269  2011-04-19 14:21  单片机实现电子琴\电子琴.uvproj

    .C.D...         0  2012-02-25 23:14  单片机实现电子琴

----------- ---------  ---------- -----  ----

               198469                    6


评论

共有 条评论