单片机课程设计简易音乐播放器

论文题目:简易音乐播放器所属系部:电子工程系 指导教师: 学生姓名: 学 号: 专 业: 电子信息工程技术 题目: 简易音乐播放器任务与要求:本设计以 MCS-51 系列单片机为核心,采用常用电子器件 设计。要求最少 8 个按键,每个按键对应一种音调,按下按键发声,松开按键后声音延迟一段时间后停止,延时时间可以设置,要求最少 8 个不同音调,至少可以自动播放 3 种音乐,并且带有显示功能。时间: 2010 年 12 月 19 日 至 2010 年 12 月 31 日 共 2 周所属系部: 电子工程系 学生姓名: 学 号:专业: 电子信息工程技术指导教师: 潘晶莹摘要电子音乐播放器是现代电子科技与音乐结合的产物,是一种新型的播放乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用 AT89S51 单片机为核心控制元件,设计一个音乐播放器。以单片机作为主控核心,与键盘、扬声器、显示器等模块组成核心主控制模块,在主控模块上设有 8 个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠等,具有一定的实用和参考价值。关键字: AT89C51,扬声器,lcd显示器目 录1 前言 .11.1 系统的功能介绍 12 简易音乐播放器原理 .22.1 简易音乐播放器原理 23 简易音乐播放器设计方案 33.1 单片机时钟电路设计 .33.2 单片机复位电路设计 43.3 键盘电路设计 43.4 LCD 显示部分电路 .54 系统软件设计 .64.1 定时器中断服务控制 .64.2 主程序的实现 .74.3 单片机汇编源程序清单 .8结束语 17参考文献 181 前言我们生活在一个信息时代,各种电子产品层出不穷,作为一个电子信息专业的学生,了解这些电子产品的基本用途和设计原理是十分必要的,我们学习的是电子信息方面的理论知识,而课程设计正是对我们学习的理论的实践与巩固。本设计主要介绍的是一个用单片机描述的一个具有若干功能的简易电子音乐播放器。本次设计的目的就是在掌握音乐播放器组成原理理论的基础上,了解 EDA 技术,掌握汇编描述语言的设计方法和思想,通过学习的汇编语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识,例如本课程设计就是基于所学的计算机原理中的时钟分频器和定时器的基础之上的,通过本课程设计,达到巩固和综合运用单片机原理中的知识,理论联系实际,巩固所学理论知识,并且提高自己通过所学理论分析、解决实际问题的能力。1.1 系统的功能介绍1 可以演奏出基本的 8 种音调:Do、Re、Mi、Fa、SO、La、Si、高音 Do; 2 演奏的同时会以 LED 显示出当前的按键,利于培养乐感;3 可以演奏内置的 3 种歌曲。 4 自动演奏时,LCD 显示播放的曲目序号和演奏的歌曲歌词。使用方法:通过按下方的 3 个键演奏。播放器可实现循环播放、上一曲、下一曲等功能,也可以产生包括“Do“、“Re“、“Me“-- 等音阶在内的各种频率声音。将各个音阶连接在一起,便可组成一支曲子或是演奏一段旋律,操作方便,无须再为找不到适全的音乐芯片而烦恼。我们知道,声音的频率范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的高电平或低电平,则在该口线上就能产生一定频率矩形波,接上扬声器就能发出一定频率的声音,若能利用延时程序控制 “高” “低”电平的持续时间,就能改变输出频率,从而改变音调。要产生音频脉冲,只要算出某一音频的周期,然后将此周期除以 2,即半周期的时间,为单片机的定时时间,然后反复进行半周期定时,每当定时到就将输出脉冲的 I/O 口取反,如此就可以在 I/O 端口上得到此频率的脉冲2 简易音乐播放器原理一定频率产生声音,频率高低决定音调。利用单片机输出脉冲信号经放大后送给喇叭,便可发出声音。本制作中巧妙地利用了单片机的定时器,让定时器中断一次就对改变喇叭的状态一次,即形成矩形方波,这也是数字电路产生声音的方法。本作品使用 AT89S51 型单片机。 由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器 T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。2.1 简易音乐播放器原理高中低音符与单片机计数 T0 相关的计数值如下表所示音符 频率(HZ)简谱码(T 值) 音符 频率(HZ)简谱码(T 值)表 2-1低 1 DO 262 63628 # 4 FA# 740 64860 #1 DO# 277 63731中 5 SO 784 64898 低 2 RE 294 63835 # 5 SO# 831 64934 #2 RE# 311 63928中 6 LA 880 64968 低 3 M 330 64021 # 6 932 64994 低 4 FA 349 64103 中 7 SI 988 65030 # 4 FA# 370 64185高 1 DO 1046 65058 低 5 SO 392 64260 # 1 DO# 1109 65085 # 5 SO# 415 64331高 2 RE 1175 65110 低 6 LA 440 64400 # 2 RE# 1245 65134 # 6 466 64463 高 3 M 1318 65157 低 7 SI 494 64524 高 4 FA 1397 65178 中 1 DO 523 64580 # 4 FA# 1480 65198 # 1 DO# 554 64633高 5 SO 1568 65217 中 2 RE 587 64684 # 5 SO# 1661 65235 # 2 R# 622 64732 高 6 LA 1760 65252 中 3 M 659 64777 # 6 1865 65268 中 4 FA 698 64820 高 7 SI 1967 65283 3 简易音乐播放器设计方案声音的频谱范围约在几十 hz 到几千 hz,利用程序来控制单片机某个口线不段的输出“高” 、 “低”电平,则在该口线上就能产生一定的频率的方波,将该方波接上喇叭,就能发出一定的声音,若在利用程序来控制“高” 、 “低”电平的持续时间,就能改变输出波形的频率,从而改变音调。乐曲中,每一个音符对应着确定的频率,表 1 给出了 C 调时各音符频率。如果单片机某个口线输出“高” 、 “低”电平的频率和某个音符的频率一样,那么将口线接上喇叭就可以发出次音符,如下表所示表 3-1表 3-1 C 调时各音符频率音名 1 2 3 4 5 6 7频率(hz) 523.3 587.3 659.3 698.3 784 880 967.83.1 单片机时钟电路设计当 MCS-5l 系列单片机的复位引脚 RST(全称 RESET)出现 2 个机器周期以上的高电平时,单片机就执行复位操作。如果 RST 持续为高电平,单片机就处于循环复位状态。时钟电路如图 3-1 所

单片机音乐播放器课程设计C语言,单片机课程设计简易音乐播放器相关推荐

  1. Android音乐App桌面图标制作以及启动页面开发(简易音乐 一)

    Android音乐App桌面图标制作以及启动页面开发( 简易音乐 一 ) 关于 效果 第一步 第二步 第一步 修改SplashAcitivity的布局页面 第二步 修改androidmanifest. ...

  2. c语言编程课程心得,c语言编程课程设计心得.docx

    C语言编程课程设计心得 C语言编程课程设计心得 河南城建学院 <C语言程序设计>课程设计报告 适用专业工程管理专业课程名称C语言程序设计指导教师赵军民.魏新红.张芳芳 设计人:051409 ...

  3. c语言循环控制结构的单元课程设计,C语言单元课程设计(张芝雨).pdf

    <C语言程序设计>课第 1 单元 课程单元教学设计 (2017 -2018 学年第 1 学期) 单元名称: C 语 言 概 述 所属系部: 机电工程系 制定人: 张芝雨 合作人: 制定时间 ...

  4. c语言 vc 记事本设计,c语言程序设计课程设计--记事本.doc

    c语言程序设计课程设计--记事本 PAGE C#语言程序设计课程设计 题 目 记事本 指导老师 专业班级 学 号 姓 名 2012年 摘要:记事本是专为个体用户量身定制的记录数据的平台.记事本,用来记 ...

  5. c语言程序设计英汉词典设计,c语言(二)课程设计--电子英汉词典设计.doc

    课 程 设 计 报 告 课程名称 <C语言程序设计> 课题名称 电子英汉词典设计 专 业 班 级 学 号 201713030216 姓 名 指导教师 2018年 7 月 6 日 湖南工程学 ...

  6. 用c语言做教学课程安排,C语言入门课程安排

    <C语言入门课程安排>由会员分享,可在线阅读,更多相关<C语言入门课程安排(5页珍藏版)>请在人人文库网上搜索. 1.C语言入门课程安排开班人数:2-5人年级:3年级以上第一课 ...

  7. c语言教改课程项目,C语言程序设计课程的教学改革.pdf

    · 180 · 价值工程 C语言程序设计课程的教学改革 TeachingReform ofC LanguageProgramming 张立 臣 ZhangLichen:王 四万 WangSiwan ( ...

  8. 课程管理系统c语言程序,课程信息管理系统C语言程序Word版

    <课程信息管理系统C语言程序Word版>由会员分享,可在线阅读,更多相关<课程信息管理系统C语言程序Word版(19页珍藏版)>请在人人文库网上搜索. 1.传播优秀Word版文 ...

  9. matlab语言在天线设计,MATLAB语言在天线设计中的运用.pdf

    MATLAB语言在天线设计中的运用.pdf 第 25 卷 第 1 期 2004年 3月 制 导 与 引 信 GUIDANCE 天线 方向图 中图分类号 TN 820 12 文献标识码 A The Ap ...

最新文章

  1. CVPR 2010 MOSSE:《Visual Object Tracking using Adaptive Correlation Filters.》论文笔记
  2. python脚本迁移数据库_Python迁移MySQL数据到MongoDB脚本
  3. 盘点大厂的那些开源项目 - 小米科技
  4. getresource 路径转义_java中的相对路径和绝对路径
  5. [css] 如何让IE6支持min-width和max-width?
  6. 9件事把你从消极情绪中解救出来
  7. 作者:张悦今,女,中央财经大学信息学院讲师。
  8. 容器编排技术 -- 使用Vagrant本地运行Kubernetes
  9. YII 利用Clip构建layout
  10. Kippo:一款强大的SSH蜜罐工具
  11. hadoop2.x配合ZooKeeper集群环境搭建
  12. 自动控制原理1---自动控制原理基本概念
  13. 计算机电源接口图,电脑电源接口定义图解
  14. 瞬态抑制二极管型号参数对照表,想要的都在这里
  15. Python简答题编程题
  16. 网络安全进阶篇(十一章-7)APP渗透测试篇(下)
  17. 安百拓西安仓储物流中心正式运营;中外运敦豪广东分公司迁新址 | 美通企业日报...
  18. TestFlight使用教程
  19. Android Studio 3.0 多渠道打包 解决All flavors must now belong to a named flavor dimension
  20. [CSCCTF 2019 Qual]FlaskLight SSTI注入

热门文章

  1. 贪心算法 背包问题代码 c语言,用贪心算法求解普通背包问题的C++代码
  2. 解决NativeCat能连接的上,但是IDEA连接不上
  3. 从万物静默到声情并茂:百度输入法的AI发声计划
  4. 程序员有前途吗?出路在哪里?
  5. ccf 地铁修建spfa (得分85到100)
  6. 2. Java并发编程-互斥锁、死锁
  7. Codeforces 76A Gift 题解
  8. Latex编译报错 “Undefined control sequence. \chapter“
  9. AIR32F103(九) CAN总线的通信和ID过滤机制及实例
  10. 撑持4G LTE网络 OPPO R1S或在美出售