单片机音乐播放器设计报告.doc_第1页
单片机音乐播放器设计报告.doc_第2页
单片机音乐播放器设计报告.doc_第3页
单片机音乐播放器设计报告.doc_第4页
单片机音乐播放器设计报告.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

通信工程系电子线路实现训练报告 目 录 1.方案与论证1 1.1 显示电路 1 1.2 时钟电路 1 2.电子音乐产生原理1 2.1 音调.1 2.2 节拍.3 3.系统硬件设计6 3.1 系统总框图.6 3.2 电路设计 7 3.2.1 单片机时钟电路7 3.2.2. 复位电路.8 3.2.3电源电路.8 3.2.4. USB 程序下载电路.9 3.2.5. 蜂鸣器驱动电路.10 3.2.6 显示电路.11 3.2.8 矩阵电路11 4.系统软件设计12 5.总结与展望14 6.参考文献14 附 录.15 附录 1 系统总电路.15 附录 2 源代码.16 通信工程系电子线路实现训练报告 1 1.1.方案与论证方案与论证 1.1 显示电路 方案.1:采用LED数码管来显示(电路简单,成本低) ; 方案.2:采用LCD液晶显示器来显示(电路简单,成本高) ; 方案3:采用TFT真彩液晶显示(电路复杂,成本高,但显示的分辨率高) ; 综上所述,选择方案一进行设计。 1.2 时钟电路 方案.1:选择DS1302实时时钟芯片来实现音乐播放器(时间准确,但要增加额外 开销) ; 方案.2:选择单片机的软件实时来实现音乐播放器(灵活性高,时间不准确) ; 方案.3:选择单片机内部可编程定时器来实现音乐播放器(在不增加额外的开销 前提下,时间可以做到准确) 。 综上所述,选择方案三进行设计。 2.2.电子音乐产生原理电子音乐产生原理 单片机发音原理:单片机演奏音乐基本是单音频率,它不包含相应幅度的谐波频 率,也就是说不能象电子琴那样能奏出多种音色的声音,但一定要弄清楚两个概念即 可,也就是“音调”和“节拍” 。 音调 表示一个音符唱多高的频率。 节拍 表示一个音符唱多长的时间。下面,就此两点,阐述说明: 2.1 音调 在音乐中所谓“音调” ,其实就是我们常说的“音高” 。在音乐中常把中央 C 上方 的 A 音定为标准音高,其频率 f=440Hz,其余与其比较。f1 和 f2 为两个音符,当这两 个音符的频率相差一倍时,也即 f2=2f1 时,则称 f2 比 f1 高一个倍频程。在音乐中 1 与 ,2 与,正好相差一个倍频程,在音乐学中称它相差一个八度音。在一个 . 1 . 2 八度音内,有 12 个半音。以 1i 八音区为例,12 个半音是:11、12、2 2、23、34、44,45、5 一5、56、66、67、7i 。 这 12 个音阶的分度基本上是以对数关系来划分的。如果我们只要知道了这十二个音符 通信工程系电子线路实现训练报告 2 的音高,也就是其基本音调的频率,我们就可根据倍频程的关系得到其他音符基本音 调的频率。 确定一个频率所对应的定时器的定时初值的方法: 以标准音高 A 为例:标准音高 A 的频率 f = 440 Hz,其对应的周期为: T = 1/ f = 1/440 =2272s 因此,需要在单片机 I/O 端口输出周期为 T =2272s 的方波脉冲, 如下图所示。 图 1 方波脉冲 由上图可知,单片机上对应喇叭的 I/O 口来回取反的时间应为: t = T/2 = 2272/2 = 1136s 此处分两种方式叙述,请比较选用,其实结果相同:.这个时间 t 也就是单片机上定时器应有的中断触发时间。一般情况下,单片机奏乐时,其定时器 为工作方式 1,它以振荡器的十二分频信号为计数脉冲。设振荡器频率为 f0,则定时 器的予置初值由下式来确定: t = 12 (TALL THL)/ f0式中,TALL = 216 = 65536,THL为定时器待确定的计数初值。因此定时器的高低计数器的初值为: TH = THL / 256 = ( TALL t f0/12) / 256TL = THL % 256 = ( TALL t f0/12) %256 将 t=1136s 代入上面两式(注意:计算时应将时间和频率的单位换算一致) ,即 可求出标准音高 A 在单片机晶振频率 f0=12Mhz,定时器在工作方式 1 下的定时器高低 计数器的预置初值为 : TH440Hz = (65536 1136 * 12/12) /256 = FBH TL440Hz = (65536 1136 * 12/12)%256 = 90H 根据上面的求解方法,我们就可求出其他音调相 应的计数器的予置初值。. .假设单片机晶振频率 f0=12Mhz,定时器在工作方式 1 计数 脉冲值与频率的关系为: N=FI 2FR 其中N计数值; FI内部计时一次为 1us,故其频率为 1MHz; FR要产生 的频率。其计数值的求法为: T=65536N=65536FI 2FR 则标准音高 A(频率 f = 440 Hz)的计数值为: T=65536N=65536FI 2FR=6553610000002 FR =65536500000/440=655361136=64400=0FB90H 下面给出 C 调各音符频率值和定时器 定时初值:(晶振频率 f0=12Mhz,定时器在工作方式 1) 表 1 C 调各音符频率值和定时初值对照表 C 调 音符 11#22#344#55#66#7 通信工程系电子线路实现训练报告 3 频率 Hz 262277293311329349370392415440466494 TH/TLF88BF8F2F9B7FA14FA66FAB9FB03FB4AFB8FFBCFFBCFFC0B C 调 音符 11#2#4#5#6# 频率 Hz 523553586621658697739783830879931987 TH/TLFC43FC78FCABFCDBFD08FD33FD5BFD81FDA5FDC7FDE7FE05 C 调 音符 11#22#344#55#66#7 频率 Hz 104511061171124113161393147615631658175518601791 TH/TLFB21FE3CFE55FE6DFE84FE99FEADFEC0FE02FEE3FEF3 FF02 对于非 C 调的歌曲,要对各音符的频率做相应的变化 调号音乐上指用以确定乐曲主音高度的符号。 升 C 调:1#C,也就是降 D 调:1bD;277(频率) 升 D 调:1#D,也就是降 E 调:1bE;311 升 F 调:1#F,也就是降 G 调:1bG;369 升 G 调:1#G,也就是降 A 调:1bA;415 升 A 调:1#A,也就是降 B 调:1bB。4 所谓 1A,就是说,这首歌曲的“导” (即作为基调的中音 DO)要唱得同 A 音 符一样高,其它各音符依次向后递推,通常把这首歌曲叫做 A 调歌曲,或叫“唱 A 调” 。 1C,就是说,这首歌曲的“导”要唱得同 C 一样高,或者说“这歌曲唱 C 调” 。同样 是“导” ,不同的调唱起来的高低是不一样的。在递推的时候要严格按各音符间音程关 系进行(全音还是半音,只有 34 和 7i 之间是半音关系,其它音之间都是全音关 系) ,下面以 1=D 调进行说明。 参照上面的钢琴键盘图和表 1,确定出 D 调各音符对应的频率值为:(到后来制表 时就以各音符对应的新频率值确定定时初值) 2.2 节拍 音符的节拍我们可以举例来说明。在一张乐谱中,我们经常会看到这样的表达式, 通信工程系电子线路实现训练报告 4 如 1=C 、1=G 等等,这里 1=C,1=G 表示乐谱的曲调,和我们前面所谈的音调 4 4 4 3 有很大的关联,、就是用来表示节拍的。以为例加以说明,它表示乐谱中以四 4 4 4 3 4 3 分音符为节拍,每一小结有三拍。比如: 其中 1 、2 为一拍,3、4、5 为一拍,6 为一拍共三拍。1 、2 的时长为四分音符 的一半,即为八分音符长,3、4 的时长为八分音符的一半,即为十六分音符长,5 的 时长为四分音符的一半,即为八分音符长,6 的时长为四分音符长。那么一拍到底该唱 多长呢?一般说来,如果乐曲没有特殊说明,一拍的时长大约为 400500ms 。我们以 一拍的时长为 400ms 为例,则当以四分音符为节拍时,四分音符的时长就为 400ms,八 分音符的时长就为 200ms,十六分音符的时长就为 100ms。若乐谱有特别说明则另行对 待。如有乐谱中注明每分钟 86 拍,则一拍时间为 60/86s=698ms。可见,在单片机上控 制一个音符唱多长可采用循环延时的方法来实现。首先,我们确定一个基本时长的延 时程序,比如说以十六分音符的时长为基本延时时间,那么,对于一个音符,如果它 为十六分音符,则只需调用一次延时程序,如果它为八分音符,则只需调用二次延时 程序,如果它为四分音符,则只需调用四次延时程序,依次类推。 具体来说,. 每个音符使用一个字节,字节的高 4 位代表音符的高低,低 4 位 代表音符的节拍,节拍与节拍码的对照,如下表所示。 表 2 节拍与节拍码的对照表 节拍码节拍数节拍码节拍数 1 (十六分音符)1/4 拍 为 1DELAY 1 1/8 拍 2 (八分音符)2/4 拍 2 1/4 拍 3 3/4 拍 3 3/8 拍 4 (四分音符)1 拍 4 1/2 拍 5 1 又 1/4 拍 5 5/8 拍 6 1 又 1/2 拍 6 3/4 拍 8 (二分音符)2 拍 8 1 拍 10 A 2 又 1/2 拍 A 1 又 1/4 拍 12 C 3 拍 C 1 又 1/2 拍 15 F 3 又 3/4 拍 通信工程系电子线路实现训练报告 5 16(全音符)4 拍 . 以 1/4 拍(十六分音符)为一个基准定时单位(1DELAY) ,则 2/4 拍(八分音 符)为 2DELAY, 1 拍(四分音符)为 4DELAY, 2 拍(二分音符)为 8DELAY, 4 拍 (全音符)为 16DELAY。1/4 和 1/8 节拍的时间设定,如下表所示。 表 3 各调节拍时间设定表 1/4 节拍的时间设定1/8 节拍的时间设定 曲调值 DELAY 曲调值 DELAY 调 4/4 125ms 调 4/4 62ms 调 3/4 187ms 调 3/4 94ms 调 2/4 250ms 调 2/4 125ms 通过上面介绍的音符音调和节拍的相关知识,以及它们在单片机系统中的确定方 法,我们就可以在单片机上实现演奏音乐了。具体的实现方法为:将乐谱中的每个音 符的音调及节拍变换成相应的音调参数和节拍参数,将他们做成数据表格,存放在存 储器中通过程序取出一个音符的相关参数,播放该音符,该音符唱完后,接着取出下 一个音符的相关参数,如此直到播放完毕最后一个音符,根据需要也可循环不停 地播放整个乐曲。请注意,用单片机上实现音乐演奏关键在于,根据乐谱制作出数据 表格,编程在其次,这个过程很耗费时间和精力。另外,对于乐曲中的休止符,一般 将其音调参数设为 FFH 或 00H,其节拍参数与其它音符的节拍参数确定方法一致,乐曲 结束用节拍参数为 00H 来表示。实例说明建立音乐的方法(1)建立简谱对应的简谱码、 T 值及节拍数表,画在草稿纸上。先对照歌曲的简谱把其中所有出现的音符找出,从 低音到高音依次排序,确定各音的数值(编写查表程序时将此值减 1,即得对应音符相 对于 TABL1 表头的偏移量) 。对于不是 C 调的歌曲,要对各音符的频率做相应的变化。 对照歌曲的简谱确定各音符的节拍数相对于基准定时单位的倍数,从小到大排列。 各音符时值的倍数关系是确定不变的,关键要正确确定其值。这需要懂一点简谱知识 才能准确的确定出乐谱中音符节拍数。以歌曲兰花草为例,如下表: 表 4 简谱发音(这一列知道就行不必写出) 简谱码T 值节拍码节拍数 低 3低音 MI 1640211 1/4 拍 低 4低音 FA 2641032 2/4 拍 低 5低音 SO 3642603 3/4 拍 通信工程系电子线路实现训练报告 6 低 6低音 LA 4644004 1 拍 低 7低音 TI 5642545 1 又 1/4 拍 中 1中音 DO 6645806 1 又 1/2 拍 中 2中音 RE 7646848 2 拍 中 3中音 MI 86477710 A 2 又 1/2 拍 中 4中音 FA 96482012 C 3 拍 中 5中音 SO A6489815 F 3 又 3/4 拍 中 6中音 LA B6496816 4 拍 中 7中音 TI C65030 休止符不发音 0 关定时器 注:以四分音符为一拍,现在以 1/4 拍为定时的基准单位,为 1DELAY。则 1 拍应 为 4 倍 DELAY,依次类推。所以只要求得 1/4 拍的 DELAY 时间,其余的节拍数就是它的 倍数。 (2)把各音符频率对应的定时 T 值建立在 TABLE1 表。各音符频率对应的定时值 表TABLE1:; DW 64021,64103,64260,64400 DW 64524,64580,64684,64777 DW 64820,64898,64968,65030(3)根据第一步建立的表,建立乐曲对应音符 节拍码表 TABLE,其中简谱码(音符)在高 4 位(但是此种方法只能排 16 个音,若乐 谱中音符较多可占一个字节来表示) ,节拍码(节拍数)在低 4 位(但此种方法也只能 最大延时 15 个基准定时单位的时间) 。TABLE:;歌曲兰花草的音符与节拍码表;高 4 位为简谱码(音符) ,低 4 位为该音符对应的节拍数 DB 42H,82H,82H,82H,84H,02,72H DB 62H,72H,62H,52H,48H DB0B2H,0B2H,0B2H,0B2H,0B4H,02H,0A2HDB12H,0A2H,0D2H,92H,88H DB 82H,0B2H,0B2H,0A2H,84H,02H,72H DB 62H,72H,62H,52H,44H,02H,12H DB 12H,62H,62H,52H,44H,02H,82HDB 72H,62H,52H,32H,48H DB 00H 3.3.系统硬件设计系统硬件设计 3.1 系统总框图 电路主要由AT89C51芯片,LED发光二极管,喇叭,晶振电路组成,由引脚输出定 通信工程系电子线路实现训练报告 7 时器产生的各种固定频率的方波信号,然后由喇叭产生各种频率的声音。同理,方波 信号通过发光二极管可以使二极管闪烁发光,产生韵律灯的效果。由于该方案中使用 内部振荡电路,XTAL1、XTAL2引脚外界石英晶体和微调电容构成的晶振电路。 晶振电路 存储器扩展电路 4*4矩阵电路 A T 8 9 C 51 复位电路 蜂鸣器 数码管 图2 系统框图 3.2 电路设计 音乐播放器的硬件电路主要是以下8大部分: 3.2.1 单片机时钟电路 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date:12-Jun-2011Sheet of File:F:动动protel动动动动动动动动动动动动动动动动.DdbDrawn By: C4 30p C5 30p Y2 11.0592M X1 X2 图3 单片机时钟电路 单片机时钟电路是用来配合外部晶体实现振荡的电路,这样可以为单片机提供运 行时钟,如果运行时钟为 0 的话,单片机就不工作,当然超出单片机的工作频率的时 钟也会导致单片机不工作。在 MCS51 单片机片内有一个高增益的反相放大器,反相 放大器的输入端为 XTAL1,输出端为 XTAL2,由该放大器构成的振荡电路和时钟电路一 起构成了单片机的时钟方式。根据硬件电路的不同,单片机的时钟连接方式可分为内 部时钟方式和外部时钟方式。在内部方式时钟电路中,必须在 XTAL1 和 XTAL2 引脚两 端跨接石英晶体振荡器和两个微调电容构成振荡电路,通常 C1 和 C2 一般取 30pF,晶 振的频率取值在 1.2MHz12MHz 之间。对于外接时钟电路,要求 XTAL1 接地,XTAL2 脚 通信工程系电子线路实现训练报告 8 接外部时钟,对于外部时钟信号并无特殊要求,只要保证一定的脉冲宽度,时钟频率 低于 12MHz 即可。晶体振荡器的振荡信号从 XTAL2 端送入内部时钟电路,它将该振荡 信号二分频,产生一个两相时钟信号 P1 和 P2 供单片机使用。时钟信号的周期称为状 态时间 S,它是振荡周期的 2 倍,P1 信号在每个状态的前半周期有效,在每个状态的 后半周期 P2 信号有效。CPU 就是以两相时钟 P1 和 P2 为基本节拍协调单片机各部分有 效工作的。 3.2.2. 复位电路 S 1 R ES T C 1 22uf R 2 200K R 4 10K VC C R ES T2 图4 复位电路 复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑 内部的程序从头开始执行。单片机也一样,当单片机系统在运行中,受到环境干扰出 现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。在单片机系统中, 系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下, 系统还会复位。所以可以通过按键的断开和闭合在运行的系统中控制其复位。 在电路图中,电容的的大小是 10uF,电阻的大小是 10k。所以根据公式,可以算 出电容充电到电源电压的 0.7 倍(单片机的电源是 5V,所以充电到 0.7 倍即为 3.5V), 需要的时间是 10K*10UF=0.1S。也就是说在电脑启动的 0.1S 内,电容两端的电压时在 03.5V 增加。这个时候 10K 电阻两端的电压为从 51.5V 减少(串联电路各处电压之和 为总电压)。所以在 0.1S 内,RST 引脚所接收到的电压是 5V1.5V。在 5V 正常工作的 51 单片机中小于 1.5V 的电压信号为低电平信号,而大于 1.5V 的电压信号为高电平信 号。所以在开机 0.1S 内,单片机系统自动复位(RST 引脚接收到的高电平信号时间为 0.1S 左右)。 通信工程系电子线路实现训练报告 9 3.2.3电源电路 AC 1 V+ 2 AC 3 V- 4 D1 2k B P 10 R 1 10K C 4 0.1uf C 2 470uf 1 1 2 2 C 5 0.1uf C 3 220uf Vin 1 Gnd 2 +5V 3 L1 LM 7805 GND 1 2 3 J1 DOAC 9V A 1 K 2 D2 2sd VC C 图5 电源电路 电源电路是指提供给用电设备电力供应的电源部分的电路设计,使用的电路形 式和特点。电源有交流电源也有直流电源 。直流电源电路分为开关电源和非开关电 源两种形式,电路也大不相同。开关电源一般不使用变压器;非开关电源是传统的 设计方式,电源电路里多使用变压器来变压后再整流滤波的方式。 几个组件通过导线互相连接,形成 “电路” ,也可以称为 “网络” 。更特定地, 电路是可以形成 闭合回路的网络。 “支路”是电路的一部分,每一个组件都有它独 属的支路。任意两条或多条支路的相交点,称为 “节点” 。 几个组件通过导线互相连接,形成 “电路” ,也可以称为 “网络” 。更特定地, 电路是可以形成闭合回路的网络。 3.2.4. USB 程序下载电路 D6 IN4J48 VC C1 1 2 2 3 3 4 4 usb JB 1 USB 图6 USB下载电路 通信工程系电子线路实现训练报告 10 USB 即“Universal Serial Bus ”,中文名称为通用串行总线。这是近几年逐步 在 PC 领域广为应用的新型接口技术。USB 接口具有传输速度更快,支持热插拔以及连 接多个设备的特点。目前已经在各类外部设备中广泛的被采用。目前 USB 接口有两种: USB1.1 和 USB2.0。USB 接口的输出电压为直流 5V,输出电流不大于 500 毫安。PC 机的 USB 接口可以连接外设、复合设备和集线器。最多可以连接 5 级集线器,最多可连接 127 台外设和集线器。 USB1.1 的高速模式为 12Mb/s,低速模式为 1.5Mb/s。 USB 采用 半双工传输方式。但当一个 USB 连接多个设备时,各个设备共享 12Mb/s 的传输带宽。 在传输的信息中还携带有状态、控制和差错校验信息,实际的信息传输速率要低一些, 只连接一台设备时,最高有效传输速率约为 9.6Mb/s。USB2.0 的最高传输速率为 480Mb/s。)USB 采用平衡传输方式,抗干扰性好。USB 带纠错能力,可完成对软件透明 的检错和重发。 3.2.5. 蜂鸣器驱动电路 R 3 R ES 2 Q1 8590 1 1 2 2 JJD1 S PEAKER S P VC C 图7 蜂鸣器驱动电路 蜂鸣器是一种一体化结构的电子讯响器,他广泛应用于计算机、打印机、复印机、 报警器、电话机等电子产品中作发声器件。 蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。 电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后, 振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线 圈和磁铁的相互作用下,周期性地振动发声。 蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的, 因此需要一定的电流才能驱动它,单片机 IO 引脚输出的电流较小,单片机输出的 TTL 电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。S51 增强型单片机实 验板通过一个三极管 C8550 来放大驱动蜂鸣器,原理图见下面图 3: 蜂鸣器的正极接到 VCC(5V)电源上面,蜂鸣器的负极接到三极管的发射极 E, 三极管的基级 B 经过限流电阻 R1 后由单片机的 P3.7 引脚控制,当 P3.7 输出高电平时, 通信工程系电子线路实现训练报告 11 三极管 T1 截止,没有电流流过线圈,蜂鸣器不发声;当 P3.7 输出低电平时,三极管 导通,这样蜂鸣器的电流形成回路,发出声音。因此,我们可以通过程序控制 P3.7 脚 的电平来使蜂鸣器发出声音和关闭。 3.2.6 显示电路 本设计显示是采用液晶显示器LCD1602进行显示,LCD1602的功能、P0口是一个地 址/数据复用的双向I/O口,当使用P0口访问外部存储器和数据存储器时,P0口内部已 有上拉电阻,当P0口作程序检验,输出指令字节时,必须外界上拉电阻。LCD1602的控 制信号RS、RW、E分别接到单片机的P2.0、P2.1、P2.2。本设计中主要用LCD1602显示 开机画 V S S 1 V D D 2 V EE 3 R S 4 R W 5 E 6 D 0 7 D 1 8 D 2 9 D 3 10 D 4 11 D 5 12 D 6 13 D 7 14 B LA 15 B LK 16 J1 LC D 1602 P2.3 P2.4 P2.5 D E0 D E1 D E2 D E3 D E4 D E5 D E6 D E7 G N D G N D V C C R 1 10R ,1/2W V C C G N D * R ES -V A R 1 图8 液晶显示 3.2.8 矩阵电路 采用4*4行列式键盘来实现选择歌曲播放,以及对歌曲号做基本的操作,即上一曲、 下一曲以及暂停/播放。 通信工程系电子线路实现训练报告 12 K1 SW -PB K2 SW -PB K3 SW -PB K4 SW -PB K5 SW -PB K6 SW -PB K7 SW -PB K8 SW -PB K9 SW -PB K10 SW -PB K11 SW -PB K12 SW -PB K13 SW -PB K14 SW -PB K15 SW -PB K16 SW -PB H3 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 图8 矩阵电路 4.4.系统软件设计系统软件设计 本设计采用了自定义下的流程图。主要程序流程有:主程序、判断有无按键子程 序、键盘扫描子程序、显示键号/歌曲号子程序、开机画面子程序、按键值播放歌曲子 程序等。程序中使用了两个定时中断,定时中断 0 用于产生整个音程的频率,以便驱 动扬声器。程序的总体流程是当 P1 由按键按下时,读键盘,并储存键值,若为 F 键则 通过查表的方式,调用字符串下手键号/曲目子程序,将键号显示出来。若为 1-A,程 序根据储存的键号,将相应歌曲的表头地主赋给 DPTR,取出曲谱,判断是否为休止符, 通过查表的方式将表中的定时器初值装入定时器 T0,在定时中断 0 里面,重装初值, 将输出口取反,完成发声。在此设计中,每发一个调,调用一个 30MS 的延时,一次当 做曲谱的节拍码。在此过程中若有功能键按下,将当前歌曲的表头地址加 513/减 513 或等待。于此同时调用播放时间初始化子程序,显示 00:00:00,装定时器 T1 的初值, 准备更新播放时间。程序流程如图 9 所示。 通信工程系电子线路实现训练报告 13 开始 显示初始 化 内存初始 化 有无按键? 判断键值并存储 取键值 ASCII 码显 示 1-A 键? 播放时间初始 化 按键值存储相应曲谱首 地址 开机画面 取乐谱进行演奏 F 键? 有无功能键? 装 T1 初值刷新播放时间 单独唱完? 全部唱完? 结束 暂停? 上 1 曲 下 1 曲乐谱首地址加 513 乐谱首地址减 513 等待 再一次按下? 下? 是 无 有 否 否 是 是 是 是 否 否 否 否 否 有 无 是 是 是 图 9 音乐播放器程序流程图 通信工程系电子线路实现训练报告 14 5.5.总结与展望总结与展望 通过这几天的单片机的实训,我在理论的基础上更深刻的掌握了单片机的深层内 容及实际生活中的应用,实训锻炼了自己的动手能力和思维能力,还有在软件方面的 编程能力,让我受益匪浅,学会了如何制作单片机应用程序,并且可以在今后的日常 生活中灵活运用。 在单片机音乐播放器的制作过程中,在设计中因为牌组的方向出现错误,导致电 路无法连接成功,但是经过修改正确后,效果还是比较理想。也说明动手能力还有不 足 ,仍有待提高。 现将本次的设计总结如下: 5.1 加深了对 16 位单片机结构和原理的了解; 5.2 基本掌握了用 Altium Desinger Summer09 、Keil uvision4、Protues7 Profession、Microsoft Visio 的制图的方法; 5.3 再次温习数字电路与模拟电路,提高了分析电路原理图的能力,综合了解了不同的 使用与制图方法、总结了分析电路原理的方法; 5.4 遇到不懂时,多动脑、多看、多听。虚心接受别人给予的意见但不改变自己的初衷。 在肯定成绩的同时也要指出缺点和不足。 5.5 今后,我会更加努力学习,认真掌握老师所讲的知识,勤动脑,勤动手。相信有一 天,我会以优秀的成绩来回报老师、回报学校、回报社会。 6.6.参考文献参考文献 1 侯玉宝,陈忠平,李成群. 基于 Proteus 的 51 系列单片机设计与仿真M. 北京 电子工业出版 社,2008 2 沈德金,陈粤初MCS-51 系列单片机接口电路与应用程序实例M北京航空航天大学出版 社,1990 3 胡汉才.单片机原理及接口技术M.清华大学出版社,1996 4 何立民MCS-51 系列单片机应用系统设计M北京航空航天大学出版社,19901 5 张毅刚、彭喜元、姜守达、乔立岩新编 MCS-51 系列单片机应用设计M哈尔滨工业大学出 版社,2003.6 通信工程系电子线路实现训练报告 15 附附 录录 附录 1 系统总电路 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 R S T 9 P3.0(R XD) 10 P3.1(TXD) 11 P3.2(INT0) 12 P3.3(INT1) 13 P3.4(T0) 14 P3.5(T1) 15 P3.6(W R ) 16 P3.7(R D) 17 XTAL2 18 XTAL1 19 GND 20 P2.0(A8) 21 P2.1(A9) 22 P2.2(A10) 23 P2.3(A11) 24 P2.4(A12) 25 P2.5(A13) 26 P2.6(A14) 27 P2.7(A15) 28 PS EN 29 ALE/PR OG 30 EA/Vpp 31 P0.7(AD7) 32 P0.6(AD6) 33 P0.5(AD5) 34 P0.4(AD4) 35 P0.3(AD3) 36 P0.2(AD2) 37 P0.1(AD1) 38 P0.0(AD0) 39 Vcc 40AT89C 51 U1 AT89S 51 R 5 10K R 4 200 C 3 22UF S D R ES T GND VC C Y1 11.0592M Hz C 130P C 230P GND 1 2 3 J3 S IP3 R 6 10KR 7 10KR 8 10KR 9 10KR 10 10KR 11 10KR 12 10KR 13 10K VC C VS S 1 VDD 2 VEE 3 R S 4 R W 5 E 6 D0 7 D1 8 D2 9 D3 10 D4 11 D5 12 D6 13 D7 14 B LA 15 B LK 16 J1 LC D1602 P2.3 P2.3 P2.4 P2.4 P2.5 P2.5 DE0 DE1 DE2 DE3 DE4 DE5 DE6 DE7 DE0 DE1 DE2 DE3 DE4 DE5 DE6 DE7 GND GND VC C R 1 10R ,1/2W VC C GND 1 2 3 4 5 6 7 8 J9 LIU8 K1 S W -PB K2 S W -PB K3 S W -PB K4 S W -PB K5 S W -PB K6 S W -PB K7 S W -PB K8 S W -PB K9 S W -PB K10 S W -PB K11 S W -PB K12 S W -PB K13 S W -PB K14 S W -PB K15 S W -PB K16 S W -PB H3 H3 12 34 56 78 910 J7 IS P R 3 10K VC CH1 H2 H1 H3 H2 H4 H4 GND 1 2 3 J4 DC /AC 9V +C 7 220U +C 4 470U 1 2 3 4 J5 B R IDG C 5 0.1U C 6 0.1U R 2 10K GND VC C A1 A2 A3 1 1 2 2R 14 470 R 15 470 R 16 470 VC C A1 A2 A3 R 17 1K J10 S PEAKER Q1 8550 GND VC C D2 Vin 1 GND2 Vout 3 JP3 LM 7805 D3 D4 D5 VC C GND 1 1 2 2 3 3 4 4 usb J2 US B D8 IN4 148 * R ES -VAR 1 通信工程系电子线

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论