STC89C52做音乐播放器

内部晶振11.0592MHZ

C大调音符对照表


###TH0,TL0初始值

小星星乐谱

硬件电路实现


用于驱动蜂鸣器

###蜂鸣器

实现代码(运用模块化编程)

###主函数

#include <REGX52.H>
#include "Timer0.h"
#include "intrins.h"
#include "Delay.h"
void Timer0_Suspend();
sbit buzzer=P1^5;
//定时器装载值
int Frequency[]={63777,63872,63969,64054,64140,64216,
64291,64360,64426,64489,64547,64603,
64655,64704,64751,64795,64837,64876,
64913,64948,64981,65012,65042,65070,
65095,65120,65144,65166,65186,65206,
65225,65242,65259,65274,65289,65303,
};
//小星星乐谱编号
int  code Indexes[]={12,4,12,4, //1
19,4,19,4, //5
21,4,21,4, //6
19,8,17,4,17,4, //4
16,4,16,4, //314,4,14,4, //2
12,8,
//1
19,4,19,4,
17,4,17,4,
16,4,16,4,
14,8,19,4,19,4,
17,4,17,4,
16,4,16,4, //3
14,8, //2
12,4,12,4,//1
19,4,19,4, //521,4,21,4, //6
19,8, //5
17,4,17,4, //4
16,4,16,4, //3
14,4,14,4, //2
12,8//1
};
int Selection,Music;
void main()
{Timer0_Init();while(1){Selection=Indexes[Music];Music++;Delay(125*Indexes[Music]);Music++;TR0 =0;Delay(30);TR0 =1;if(Music>=84)Music=0;    }
}void Timer0_Suspend() interrupt 1
{TL0 =Frequency[Selection]%256;    TH0 =Frequency[Selection]/256;buzzer=~buzzer;}

###定时器0初始化

#ifndef __TIMER0_H__
#define __TIMER0_H__
void Timer0_Init();
#endif
#include <REGX52.H>void Timer0_Init()      //1毫秒@11.0592MHz
{TMOD &= 0xF0;     //设置定时器模式TMOD |= 0x01;     //设置定时器模式TL0 = 0x66;       //设置定时初值TH0 = 0xFC;        //设置定时初值TF0 = 0;       //清除TF0标志TR0 = 1;      //定时器0开始计时ET0=1;EA=1;PT0=0;
}

###延时函数模块

#ifndef __DELAY_H__
#define __DELAY_H__
void Delay(int Ms);
#endif
void Delay(int Ms)       //@11.0592MHz  1ms
{unsigned char i, j;for(;Ms>0;Ms--){_nop_();i = 2;j = 199;do{while (--j);} while (--i);}
}

基于STC89C52做音乐播放器(小星星)相关推荐

  1. 基于单片机的音乐播放器设计

     word完整版可点击如下下载>>>>>>>> 基于单片机的音乐播放器设计-硬件开发文档类资源-CSDN下载内容包括详细设计文档word版,附带开题报告 ...

  2. 音频频谱显示-基于fmod设计音乐播放器并动态显示频谱图(二)

    音频频谱显示-显示音频文件静态频谱图(一) https://blog.csdn.net/xiaolong1126626497/article/details/126971535 音频频谱显示-基于fm ...

  3. 基于Qt的音乐播放器(二)切换歌曲,调节音量,调节语速,暂停

    2020博客之星年度总评选进行中:请为74号的狗子投上宝贵的一票! 我的投票地址:点击为我投票 文章目录 1.切换歌曲 2.调节音量 3.调节语速 4.播放/暂停 5.我们来看下效果 6.关于上一篇提 ...

  4. 基于FPGA的音乐播放器系统设计_kaic

    摘 要 音乐播放器随处可见,广播.CD.MP3.车载播放器.智能家居等系统,都用播放器娱乐着我们的生活.FPGA以硬件描述语言完成的电路设计,具有运算速度快,编程简单又稳定性,长期维护,成本等优点,本 ...

  5. 基于python的音频播放器_基于python实现音乐播放器代码实例

    基于python实现音乐播放器代码实例,一首,函数,按钮,布局,音乐 基于python实现音乐播放器代码实例 易采站长站,站长之家为您整理了基于python实现音乐播放器代码实例的相关内容. 核心播放 ...

  6. 基于C#的音乐播放器

    效果图: 实现了基本功能: 歌词显示功能: 播放功能: 切歌功能: 进度条拖动播放功能: 下面是用到的一些变量 List<string> MusicList = new List<s ...

  7. java课程设计-音乐播放器,基于java的音乐播放器设计.doc

    摘要:音乐是生活的必需的,它能够缓解人们焦躁的心情,调节现代化生活的节奏,让人们能够舒缓身心.一个好的音乐播放器,能够实现个性化的功能,它能够根据个人的喜好来推荐歌曲.深流音乐播放器正是实现了此功能, ...

  8. android服务绑定音乐播放器,Android基于Service的音乐播放器

    本文开发一个基于Service的音乐播放器,音乐由后台运行的Service负责播放,当后台的播放状态发生变化时,程序将会通过发送广播通知前台Activity更新界面:当点击Activity的界面按钮时 ...

  9. 基于jQuery虾米音乐播放器样式代码

    分享一款基于jQuery虾米音乐播放器样式代码.这是一款基于jquery+html5实现的虾米音乐播放器源码下载.效果图如下: 在线预览    源码下载 实现的代码. html代码: <div ...

最新文章

  1. Mac上webstorm与git仓库建立连接
  2. [转]全面了解setjmp与longjmp的使用
  3. 清单文件,测试,打电话和发短信应用
  4. shiro session 设置取不到_SpringCloud+shiro+前后端分离
  5. Docker 容器从入门到Devops实践
  6. gitee最多上传多大文件_H5移动端图片压缩上传,基于Jquery的前端,实现拍照上传,选择相册
  7. Opencv与dlib联合进行人脸关键点检测与识别
  8. 产品经理必读:用户场景分析的四要素
  9. Linux apache编译安装
  10. 编程开源_立即注册免费的在线开源编程课程
  11. 运算优先级、类型转换
  12. android gps 获取方位_Android GPS定位 获取经纬度
  13. 小米 红米手机安装证书报错 无法安装该证书 因为无法读取该证书文件
  14. pygame.mask原理及使用pygame.mask实现精准碰撞检测
  15. Python 并行编程教程 | Lynda教程 中文字幕
  16. 快充芯片IP5328P的寄存器数据读写[用于DIY数显快充充电宝]
  17. php class ziparchive not found,php Class 'ZipArchive' not found解决办法(php安装zip扩展)
  18. 服务器gs文件修改器,NBA2K17L大修改器用法 使用第三方名单和GS教程
  19. 计算机考研二外,广东外语外贸大学英语考研二外,广外考研二外英语难度如何?...
  20. 转载--我的求职路:华为、中兴、百度、腾讯

热门文章

  1. 爬取一周天气获取24小时温度+数据可视化
  2. 游戏程序设计 # ch18 运行环境和运维
  3. 玩转Reactjs第一篇-构建工程(create-react-app)
  4. Redis sds packed对齐理解
  5. 艾出行广告精灵挂机源码+对接码支付即时到账+充值系统+推广下级系统+封装app
  6. 通过docker安装ElasticSearch并与PHP结合使用
  7. 使用foxpsd设计器,实现DIY定制网站设计器、DIY定制小程序、DIY设计APP
  8. 企业备份方案设计干货参考:典型场景、典型问题及案例
  9. Android JNI开发读取asserts目录中文件的方法
  10. 最新CmsEasyQA悬赏问答系统PHP源码分享