基于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 */
                      };

  • 3
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值