已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机技术及应用单片机技术及应用 课程设计报告课程设计报告 专专 业:业: 电子信息工程电子信息工程 班班 级:级: 08301 班班 姓姓 名:名: 指导教师:指导教师: 二二 0 一一一一 年十一月年十一月 十一日十一日 目目 录录 一、概述一、概述1 1 1.11.1 课程设计的目的及其意义课程设计的目的及其意义 1 1 1.21.2 课程设计的任务和要求课程设计的任务和要求 1 1 二、系统的基本原理二、系统的基本原理2 2 2.12.1 音乐的相关知识音乐的相关知识 2 2 2.22.2 基本原理及其框图基本原理及其框图 3 3 三、系统的硬件结构三、系统的硬件结构5 5 3.13.1 单片机单片机 89c5189c51 的简介的简介 6 6 3.23.2 键盘电路键盘电路 7 7 3.33.3 振荡电路振荡电路 7 7 3.43.4 复位电路复位电路 8 8 3.53.5 音频电路音频电路 9 9 四、系统软件的设计四、系统软件的设计1 10 0 4.14.1 系统软件的主程序系统软件的主程序 1 10 0 4.24.2 系统的软件的调试与仿真系统的软件的调试与仿真 1 12 2 五、心得体会五、心得体会1 13 3 六、指导老师意见六、指导老师意见1 13 3 七、参考书目七、参考书目1 14 4 附录附录 电子琴实物电子琴实物 图图 1414 1 基于单片机简易电子琴基于单片机简易电子琴 一、概一、概 述述 1.1 课题设计目的及其意义 单片机(单片微型计算机)是大规模集成电路技术发展的产物,具有高性能、 高速度、体积小、价格低廉、稳定可靠等特点。单片机的应用相当广泛,从平常 的家用电器到航空航天系统和国防军事、尖端武器都能找到它的身影。因此,单 片机的开发应用已成为高科技和工程领域的一项重大课题。 随着社会的发展进步,人们的生活水平也逐步提高,音乐已经成为了我们生 活中很重要的一部分,在工作和学习之余,欣赏音乐不仅使身心得到放松,同时 也提高人们的精神品质和个人素养。当代,爱好音乐的年轻人越来越多,也有不 少人自己练习弹奏乐器,作为业余爱好和一种放松的手段,鉴于一些乐器学习难 度大需花费太多精力,且其价格太过于高昂,使得一部分有这种想法的人不得不 放弃这种想法,而电子琴又是一种新型的键盘乐器,它是现代电子科技与音乐结 合的产物,价格相对便宜,能够满足一般爱好者的需求,因此,在现代音乐中扮 演着重要的角色。 故简易电子琴的研制具有一定的社会意义。 1.2 课题设计的任务与主要内容 本文的主要内容是用 at89c51 单片机为核心控制元件,设计一个简单的电子 琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主 控模块上设有 16 个按键和扬声器。定时器按设置的定时参数产生中断,由于定 时参数不同,就会发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤 波后,就会发出不同音调。 先根据要求设计硬件电路和编写相应的程序,然后进行仿真调试,最后细心 2 焊接硬件电路图,将程序烤入芯片中,最终达到设计目的。本系统运行稳定,其 优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定 的实用和参考价值。 具体实现的功能:按下音符键可以发出相应的音符。 二、基本组成和原理二、基本组成和原理 2.1 音乐相关知识 在人类还没有产生语言时,就已经知道利用声音的高低、强弱等来表达自己 的思想和感情。声带、琴弦等物体振动时会发出声波,声波通过空气传播进入人 耳,人们就听到了声音。声音有噪音和乐音之分振动有规律的声音是乐音,音乐 中所用的声音主要是乐音。 乐音听起来有的高、有的低,这就叫做音高。音高是由发声物体振动频率的 高低决定的,频率高声音就高,频率低声音就低。音持续时间的长短即时值,一 般用拍数表示。休止符表示暂停发音。 一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样 就可以利用不同的频率组合,加以拍数对应的延时,构成音乐。如果单片机要自 己播放音乐就必须考虑到节拍的设置。 对于 at80c51 而言要产生一定频率的方波一般是先将某口线输出高电平, 延迟一段时间后再输出低电平。通过改变延迟时间可以改变单片机的输出频率。 单片机的延时主要有两种方式,即软件延时和使用定时/计数器延时。其中软件 延时不是很精确,而电子琴电路由于每个音符的频率值要求比较严格,因此我们 选用定时/计数器延时。 由于本课程设计是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握, 不由程序控制。因此,我们只需弄清楚音乐中的音符和对应的频率,利用单片机 的定时/计数器来产生方波频率信号即可。 要产生相应的音频脉冲,只需要计算出某音频的周期,再除以 2。利用 计数器计时半周期,计满时使 p2.0 反向,然后重复计时再反向。本例中,单 片机工作在 12mhz 时钟,使用定时器/计数器 t0,工作模式为 1,改变计数 初值 th0、tl0 就可产生不同频率的脉冲信号。 3 例如低 3mi 音,频率为 330hz,其周期 t=1/f=1/330=3030us,计数值 n=3030/2=1515,所以每计数 1515 次 p2.0 反向。计数初值 t=65536-n=64021。c 调的各音符频率与计数值 t 的对照表如表 1 所示。 表 1 c 调各音符频率与计数值 t 对照表 音符频率(hz)简谱码(t 值)音符频率(hz)简谱码(t 值) 低 1 do26263628# 4 fa#74064860 # 1 do#27763731中 5 so78464898 低 2 re29463853# 5 so#83164934 # 2 re#31163928中 6 la88064968 低 3 m33064021# 693264994 低 4 fa34964103中 7 si98865030 # 4 fa#37064185高 1 do104665058 低 5 so39264260# 1 do#110965085 # 5 so#41564331高 2 re117565110 低 6 la44064400# 2 re#124565134 # 646664463高 3 m131865157 低 7 si49464524高 4 fa139765178 中 1 do52364580# 4 fa#148065198 # 1 do#55464633高 5 so156865217 中 2 re58764684# 5 so#166165235 # 2 re#62264732高 6 la176065252 中 3 m65964777# 6186565268 中 4 fa69864820高 7 si196765283 2.2 简易电子琴基本原理及其框图 4 1、基本思想: 简易的电子琴系统主要是采用 at89c51 单片机,单片机工作于 12mhz 的 时钟频率,使用其定时/计数器 t0,工作模式为 1,设计 4*4 键盘矩阵,设置成 16 个音,可随意弹奏想要表现的音乐,因为单片机产生的音频脉冲没有足够的 驱动能力,所以用三极管放大电路实现音频的放大,保证扬声器能产生所要实现 的音符声音。 2、硬件框图: 3、软件设计流程图: 本设计采用 at89c51 单片机作为核心处理器件,按下复位键,进入初始化, 调用键盘扫面子程序,获得键值,查询音阶表,获取定时初值,向喇叭输入相应 频率的脉冲驱动,发出相应的音调,若按键没有释放,则一直发声;若按键松开, 则停止发声。当读到结束符时,停止播放音乐。 具体软件流程图如下: 1)中断服务子程序流程图: 5 2)主程序流程图: 三、系统的硬件结构三、系统的硬件结构 6 硬件电路的设计主要包括芯片 89c51,、4*4 键盘电路、振荡电路、复位电路 及音频电路组成。 简易电子琴硬件电路图: 3.1 单片机 89c51 的简介 at89c51 是一个低功耗,高性能 cmos 8 位单片机,片内含 4k bytes isp(in-system programmable)的可反复擦写 1000 次的 flash 只读程序存储器, 器件采用 atmel 公司的高密度、非易失性存储技术制造,兼容标准 mcs-51 指令 系统及 80c51 引脚结构,芯片内集成了通用 8 位中央处理器和 isp flash 存储单 元,功能强大的微型计算机的 at89s51 可为许多嵌入式控制应用系统提供高性价 比的解决方案。 at89s51 具有如下特点:40 个引脚,4k bytes flash 片内程序存储器,128 bytes 的随机存取数据存储器(ram),32 个外部双向输入/输出(i/o)口,5 个中断优先级 2 层中断嵌套中断,2 个 16 位可编程定时计数器,2 个全双工串行 通信口,看门狗(wdt)电路,片内时钟振荡器。 此外,at89s51 设计和配置了振荡频率可为 0hz 并可通过软件设置省电模式。 空闲模式下,cpu 暂停工作,而 ram 定时计数器,串行口,外中断系统可继续工 作,掉电模式冻结振荡器而保存 ram 的数据,停止芯片其它功能直至外中断激活 或硬件复位。同时该芯片还具有 pdip、tqfp 和 plcc 等三种封装形式,以适应不 同产品的需求。 该系列单片机引脚与封装如下图所示: 7 主要引脚功能: 1、rst(9):复位输入。当振荡器复位时,要保持 rst 引脚 2 个机器周期的 高电平时间; 2、xtal1(19):反向振荡器放大器的输入及内部时钟工作电路的输入; 3、xtal2(18):来自反向振荡器的输出; 4、p1 口(18):p1 口是从内部提供上拉电阻器的 8 位双向 i/o 口,p1 口缓 冲器能接收和输出 4 个 ttl 门电流; 5、 /:当保持低电平时,单片机只访问外部程序存储器。为高 _ ea pp v _ ea _ ea 电平时,单片机只访问内部程序存储器。 3.2 键盘电路 键盘是最常用的单片机输入设备,大致可以分为独立连接式键盘和矩阵式。 独立连接式键盘是最简单的键盘电路,每个键独立接入一根数据线。这种键盘结 构简单,使用方便,但是占用的 i/o 口线较多。矩阵式键盘由行线和列线组成, 按键位于行列的交叉点上,行列式键盘可节省 i/o 口,适合按键数较多的场合。 所以本设计的 4*4 键盘采用矩阵式键盘。 8 3.3 振荡电路 单片机的时钟信号用来提供单片机内各种位操作的时间基准,时钟信号通常 有两种电路形式得到:内部振荡方式和外部振荡方式。 在引脚 xtal1 和 xtal2 外接晶体振荡器(简称晶振)或陶瓷谐振器,就 构成了内部震荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后, 就构成了自激振荡器并产生振荡时钟脉冲。晶振通常选用 6mhz、12mhz 或者 24mhz。本设计中采用的是 12mhz。电容器 c1、c2 起稳定振荡频率、快速起 振的作用,电容值一般 530pf。内部振荡方式所得的时钟信号比较稳定,电路 中使用较多。振荡方式如下图: 3.4 复位电路 9 复位操作完成单片机内电路的初始化,是单片机从一种确定的状态开始运行。 当单片机的复位引脚ret出现5ms以上的高电平时,单片机就完成了复位操作。 如果rst持续为高电平,单片机就处于循环复位状态,而无法执行程序。因此要 求单片机复位后能脱离复位状态。 根据应用要求,复位操作通常有2种基本形式:上电复位、开关复位。 上电复位要求接通电源后,自动实现复位操作。开关复位要求在电源接通的 条件下,在单片机运行期间,如果发生死机,用按钮开关操作使单片机复位。 上电后,由于电容要充电,是rst持续一段时间高电平时间。当单片机已经 在运行之中时,按下复位键也能使rst持续一段时间的高电平,从而实现上电且 开关复位的操作。 通常选择c=1030uf,r=101k 常用的复位电路如下图所示: 在单片机启动后,电容c两端的电压持续充电为5v,这是时候10k电阻两端的 电压接近于0v,rst处于低电平所以系统正常工作。当按键按下的时候,开关导 通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过 程中,电容开始释放之前充的电量。随着时间的推移,电容的电压从5v释放到变 为了1.5v,甚至更小。根据串联电路电压为各处之和,这个时候10k电阻两端的 电压为3.5v,甚至更大,所以rst引脚又接收到高电平。单片机系统自动复位。 3.5 音频放大电路 10 使用pnp管来放大,其中发射极接5v电源,集电极接喇叭,电路中的电容是 用来隔离直流电用的。 pnp 管放大原理:当 pnp 管的 vc #include #define uint unsigned int #define uchar unsigned char sbit p20 = p20; /p2.0 外接扬声器 uint ftemp; unsigned int code tab = /定时半周期的初始值 64021,64103,64260,64400, /低音 3 4 5 6 64524,64580,64684,64777, /低音 7,中音 1 2 3 64820,64898,64968,65030, /中音 4 5 6 7 65058,65110,65157,65178; /高音 1 2 3 4 /* * 函数功能 : 用扫描法读 p1 外接 44 键盘 11 */ uchar keyscan(void) uchar i, j, temp, buffer4 = 0xfe, 0xfd, 0xfb, 0xf7; for(j = 0; j = 1; /换右边一位 return 16; /没有键按下就返回 16 主函数 */ void main(void) uchar key_value = 16, key_temp1, key_temp2;/读出的键值 tmod = 0x01; /t0 定时方式 1 et0 = 1; /允许 t0 中断 ex0 = 1; /允许 int0 中断 ea = 1;/开总中断 while(1) tr0 = 0; /t0 工作停,暂不发音 key_temp1 = keyscan(); /第一次读入按键 12 if(key_temp1 != 16) /有键按下 key_temp2 = keyscan(); /再读一次 if (key_temp1 = key_temp2) /两次相等 key_value = key_temp1; /就确认下来 ftemp = tabkey_value; /根据键值,取出定时半周期的初始值 tr0 = 1; /启动定时器 t0,发音 while (keyscan() 8; p20 = p20; /发音 4.2 系统的软件的调试仿真 硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。 这里我们使用 proteus 软件进行仿真,加载编译好的.hex 即文件到 单片机后, 点击运行按钮即可,仿真电路图如下:(当我们按键时如果成功就会 听到我们想要的音乐) 13 5 5、全文总结全文总结 本次课程设计制作简易电子琴,虽然花费了我们很多精力,但收获颇丰,一 方面,将自己的理论知识与
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年省级人力资源服务业发展扶持资金知识题库
- 2026年智能电网建设与管理技术题库
- 2026年乡镇干部防汛抗旱应急预案编制知识题库
- 2026年青年干部数据安全法知识竞赛题库
- 2026年基金会项目专员招聘面试题库
- 2026年中国电信云计算岗面试预测题及解析思路
- 泰康人寿杭州拱墅区2026校园招聘半结构化面试题及思路
- 2026年新增普惠性托育机构及托位建设标准与运营补贴政策知识问答
- 2026年质量状况分析报告年度专项编制问答
- 2026年工会干校干部培训岗面试模拟
- 2025年青岛市农业农村局所属部分事业单位招聘紧缺急需专业人才笔试模拟试题带答案详解
- 移动校招ai面试题库及答案
- 高考英语必背688个高频词汇清单
- 《氢能安全》课件
- 文化和旅游部直属事业单位招聘考试真题2024
- 暖通基础知识培训
- 课题申报书:我国青少年阅读能力的时代内涵与培养路径研究
- 【MOOC】模拟电子技术基础-华中科技大学 中国大学慕课MOOC答案
- 《建筑工程施工许可管理办法》2021年9月28日修订
- 最高人民法院实施民法典继续有效适用的司法解释文件汇编(下)
- 2023年广西二造《建设工程计量与计价实务(安装)》高频核心题库300题(含解析)
评论
0/150
提交评论