机械基础设计文档.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
机械基础设计文档

音乐盒实验报告 专业:生产过程自动化 班级:08机电(2)班 姓名:何远龙 指导老师:陈玉琼 2010-10-08 一、实验材料 1、仪器设备,软件工具 软件 用途 keil 软件 源程序的编译 Proteus软件 实现电路的仿真 Progisp软件 将程序下载到学习板上进行实验 硬件 用途 万用表 检测硬件电路 学习板 实现源程序的调试,并通过实验现象来修改程序 2、元器件清单 元件名称 参数 数量 IC插座 DIP40 1 单片机 89C51 1 晶体振荡器 12MHZ 1 瓷片电容 22PF 2 按键 4 IC插座 DIP8 1 三极管 2N5088 1 电阻 1K 4 电解电容 47uF 1 电阻 510 8 蜂鸣器 无源式 1 小喇叭 1 放大器 LM386 1 二、实验过程描述 1、设计功能描述 (1)通过改变单片机输出脉冲高低电平的保持时间和频率,可以得到音阶和调节不同的音调,运用定时中断来控制节拍,从而来演奏乐曲。 (2)用数码管显示当前播放的歌曲序号。 (3)通过功能键控制上,下曲目的选择以及乐曲的暂停和播放。 2、原理图设计思路 由P1.0口控制一个LM386功率放大器,经功率放大器控制发声器件小喇叭。当P1.0口输出低电平时,三极管导通,小喇叭通电;当P1.0口输出高电平时,三极管截止,小喇叭断电。通过连续不断周期性地改变P1.0口的高、低电平,就会产生一定频率的矩形波,小喇叭就能产生一定频率的声音,再配合延时程序控制高、低电平的持续时间,就能改变音调。由P3.2、P3.3、P3.4、P3.5分别作为开始键/停止键,暂停键、下一曲键、上一曲键。图中还将共阳级数码管相应的段选控制端用P0口控制,将数码管的公共端,也称“位选端”由P2口控制。 原理图如下: 3、程序设计思路,并画出流程图 程序思路:初始化设置,开延时与外部中断,按下P3.2键先唱第一首,然后循环播放。若有按下P3.3键则执行暂停作用,再按一次则继续播放;若有按下P3.3,P3.4键则分别执行下一曲、上一曲功能。播放歌曲是多少数码管则显示相应的数字。流程图如下: 主流程 4、写出源程序与必要的注释 shuzhi equ 3fh ;选曲目的地址 song equ p1.0 ;扬声器播放P1.0 play equ p3.2 ;播放停止键P3.2 addone equ p3.4 ;曲目加一键P3.4 subone equ p3.5 ;曲目减一键P3.5 dul equ p0 ;数码管段选P0口 wel equ p2 ;数码管位选P2口 org 0000h ljmp start org 000bh ;定时器0溢出中断入口地址 ajmp cont ;指向定时器中断程序 org 0013h ;外部中断一入口地址 ajmp pause ;指向外部中断程序 org 0100h start: mov sp,#50h mov th0,#0dbh ;定时器赋初值 mov tl0,#0ffh mov tmod,#01h mov ie,#86h ;开中断 mov tcon,#00h mov r0,#00h mov shuzhi,#00h main: jnb play,first ;判断P3.2键是否按下 sjmp main first: acall del20 jnb play,first ;判断P3.2键是否释放 mov shuzhi,#00h mov dul,#0f9h ;显示数值1 mov wel,#7fh ;显示位送P2口 mov dptr,#dat1 ;表1首地址送DPTR acall music0 acall next ret next: inc shuzhi ;shuzhi+1 mov a,shuzhi cjne a,#01,loop3 ;A是否=1,不等就跳转到LOOP3 mov dptr,#dat2 ;表2首地址送DPTR mov dul,#0a4h ;显示数值2 mov wel,#7fh acall music0 inc a loop3: cjne a,#02,loop4 ;A是否=2,不等就跳转到LOOP4 mov dptr,#dat3 ;表3首地址送DPTR mov dul,#0b0h ;显示数值3

文档评论(0)

hyh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档