基于51单片机八音盒电子琴音乐播放器设计(毕设课设)
八音盒DIY制作具体功能:
- 功能1.八个按键对应“都瑞咪发嗖拉稀逗”,同时数码管可以显示对应音阶
- 功能2.可以实现音乐播放“荷塘月色”、“挥着翅膀的女孩”、“国际歌”,可以切歌,也可以自行在代码中加入喜欢的歌曲
- 功能3.功能1和功能2之间可以切换
- 【资源下载】下载地址如下(914):https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
#include <STC89.H>
#include"stdio.H"
#include"intrins.H"
typedef unsigned char uchar; /* 类型定义 */
typedef unsigned int uint;
sbit BeepIO = P3^4; /* 定义喇叭输出管脚 */
sbit Mode = P3^3; /* 定义模式选择管脚 */
uchar Sound_Temp_TH0,Sound_Temp_TL0; /* 定时器初值 */
uchar SpeedTime; /* 一拍时间 */
uchar Music_num = 0;
uchar code table[10]={0xe7,0x21,0xcb,0x6b,0x2d,0x6e,0xee,0x23,0xef,0x6f,}; //数码管编码
/******************************** 音阶频率表 ************************************/
/* 四个八度的28个频率数据 */
uchar code FREQH[ ] = { /* 音阶频率表 高八位 */
0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC, /* 低音 1,2,3,4,5,6,7 */
0xFC,0xFC,0xFD,0xFD,0xFD,0xFD,0xFE, /* 中音 1,2,3,4,5,6,7 */
0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF /* 高音 1,2,3,4,5,6,7 */
} ;
uchar code FREQL[ ] = { /* 音阶频率表 低八位 */
0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B, /* 低音 1,2,3,4,5,6,7 */
0x8F,0xEE,0x44,0x6B,0xB4,0xF4,0x2D, /* 中音 1,2,3,4,5,6,7 */
0x47,0x77,0xA2,0xB6,0xDA,0xFA,0x16 /* 高音 1,2,3,4,5,6,7 */
};