基于at89c51单片机的电子音乐盒设计课程设计(编辑修改稿)内容摘要:

第 11 页 灭。 LED 共有阳极和阴极两类,如图 c所示 共阴极 LED 数码管的发光二极管的阴极共地。 当某个发光二极管的阳极电压为高电平时,二极管发光;而共阳极 LED 数码管是发光二极管的阳极共接, 当某个二极管的阴极电压为低电平时,二极管发光。 a b (1) b(2) c 本次课题所选的二极管为共阳极二极管,数码管每段的电流是 10A。 所以公共段接高电平, Proteus 图如下所示 数码管引脚图 abcdefgdpR8( a ) 共 阴 极abcdefgdpR8( b ) 共 阳 极+5Vaabbcdcedfegf g17 6432 510 9 8GNDGND dp黄河科技学院课程设计 第 12 页 键盘部分 键盘是由一组按压式或触摸式开关构成的阵列,是一种常用的输入设备。 键盘可分 为编码式键盘和非编码式键盘两种。 ,这种键盘所需程序简单,但硬件电路复杂、价格昂贵通常不被单片机系统采用。 ,其硬件逻辑与按键编码不存在严格的对应关系,而要由所用的程序来决定。 非编码键盘的硬件接口简单,但是要占用较多的 CPU 时间,通常采用可编程键盘管理芯片来克服这个缺点。 本设计使用两种按键,一种是按键式非编码键盘和轻触式非编码开关。 按键开关 在接线时由于有六个引脚,连接时需要用万用表进行测量,然后接通两个引脚。 轻触开关 一种电子开关,使用时轻轻点按开关按钮就可使开关接通,当松开手时开关既断开,其内部结构是靠金属弹片受力弹动来实现通断的。 但微动开关也有它不足的地方,频繁的按动会使金属弹片疲劳失去弹性而失效 ,连接时接通对角线即可。 一般所指的蜂鸣器是以压电陶瓷为主要元件的。 压电陶瓷是一类有将压力与电流相互转换能力的特殊陶瓷。 这种能力缘于其特殊的晶体结构。 当压电陶瓷在一定方向上受到一个压力使其晶体结构发生形变时,它就会在内部产生一个电流,并且电流的变化与压力的变化密切相关。 反之亦然。 所以利用这 一特性,在压电陶瓷上通过一定频率的电流,就会引起压电陶瓷微小形变,这一形变带动空气发生振动,如果频率适当,就可以被人耳所听见,也就是产生了蜂鸣声。 黄河科技学院课程设计 第 13 页 蜂鸣器简介 1.蜂鸣器的作用:蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。 2.蜂鸣器的分类:蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。 3.蜂鸣器的电路图形符号:蜂鸣器在电路中用字母“ H”或“ HA”(旧标准用“ FM”、“ LB”、 “ JD”等)表示。 实物如下图所示, 蜂鸣器实物 蜂鸣器原理 压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱和外壳等部分组成。 有的压电式蜂鸣器外部还装有发光二极管。 黄河科技学院课程设计 第 14 页 多谐振荡器由晶体管或集 成电路构成。 当接通电源后( 直流工作电压),多谐振荡器起振,输出 的音频信号,阻抗匹配器推动压电蜂鸣片发声。 压电蜂鸣器片由 锆钛酸铅或铌镁酸铅压电陶瓷材料制成。 在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢粘连在一起。 电磁式蜂鸣器 电磁式蜂鸣器由 振荡器、电磁线圈、磁铁、振动膜片 及外壳等组成。 接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。 振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。 三 .系统软件设计 一个系统的正常运行不仅需要硬件系统的支持,而且需要软件系统的支持。 如果把硬件比作躯体,那软件就是灵魂,硬件系统和软件系统相互间密切的配合才构建了能够“思考”和“判断”的整体系统。 借助软件的可编程性,可以精简硬件系统的组成;凭借软件的灵活性,可以不用对硬件系统进行修改而实现系统功能的修改。 软件系统与硬件系统是密切相联的,软件系统建立在硬件系统之上,离开了硬件系统,软件将无法实现任何功能。 软件的设计有一定的针对性,对于不同的硬件系统,需要编写不同的软件。 与硬件系统一样,软件系统的好坏,直接影响到系统的工作效率和 可靠性。 黄河科技学院课程设计 第 15 页 编程语言的选择 基于单片机的电子音乐盒的设计本次课题采用汇编语言编程,它是一种面对机器的语言,可以直接控制硬件的语言。 因为本次 还要进行硬件连接, 所 以可以方便控制各个硬件接口如 I/O接口,并且目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。 具有保持了机器语言的优点,具有直接和简捷的特点。 基于这些特点,所以 70%以上的系统软件使用汇编语言编程。 很多很多高级绘图程序、视频游戏程序是用汇编语言编写的。 因此汇编语言是我们理解整个计算机系统的最佳起点和最有效途径, 通过学习和使用汇编语言,能够感知、体会、理解机器的逻辑功能,向上为理解各种软件系统的原理,打下技术理论基础;向下为掌握硬件系统的原理,打下实践应用基础。 单片机烧录的代码,用来编程单片机。 编程软件的选择 单片机的开发除了必须的硬件设备外还需要一定的软件支持,我们写的汇编语言源程序要变为 CPU 可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。 机器汇编是通过汇编软件将源程序变为机器码,用于 MCS51 单片机的汇编软件有早期的 A51,随着单片机开发技术的不断发 展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展, Keil软件是目前最流行开发 MCS51 系列单片机的软件,这从近年黄河科技学院课程设计 第 16 页 来各仿真机厂商纷纷宣布全面支持 Keil 即可看出。 Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境( uVision)将这些部份组合在一起。 运行 Keil 软件需要Pentium 或以上的 CPU, 16MB 或更多 RAM、 20M 以上空闲的硬盘空间、 WIN9 NT、 WIN20 WINXP 等操作系统。 掌握这一软 件的使用对于使用 51系列单片机的爱好者来说是十分必要的,如果你使用 C语言编程,那么 Keil 几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用 C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。 系统程序设计 主程序流程图 开始定义音频输出端口,歌曲总数以及每首歌曲的入口地址;然后对定时器初始化,确定工作方式,赋初值,开放中断,启动定时器工作;对音频输出端口初始化;设置音节起始位置和节拍间距,把音节和节拍的入口 地址信息存放在固定存储单元中;将取出的音符数 +节拍数保存在存储单元中,查询音乐的节拍表;当六首歌曲的节拍表查询完,音乐播放完毕,程序结束。 具体的程序框图如下图所示: 黄河科技学院课程设计 第 17 页 系统流程图 OUT BIT。 定义音频输出端口 , N EQU 6。 歌曲总。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。