基于单片机的电子音乐门铃设计任务书(编辑修改稿)内容摘要:

们之间的距离就是全音; E–F、 B–C 两音之间没有黑键相隔,它们之间的距离就是半音。 通常唱成 7 的音叫自然音,那些在它们的左上角加上﹟号或者 b 号的叫变化音。 ﹟叫升记号,表示把音在原来的基础上升高半音, b 叫降记音,表示在原来的基础上降低半音。 1) 要产生音频脉冲,只要算出某一音频的周期( 1/频率),然后将此周期除以 2,即为半周期的时间。 利用定时器计时这半个周期时间,每当计时到后就将输出脉冲的 I/O反相,然后重复计时此半周期时间再对 I/O 反相,就可在 I/O 脚上得到此频率的脉冲。 2) 利用 AT89C51 的内部定时器使其工作在计数器模式 MODE1 下,改变计数值 TH0及 TL0 以产生不同频率的方法。 计算机与信息 工程学院 5 此外结束 符和休止符可以分别用代码 00H 和 FFH 来表示,若查表结果为 00H,则表示曲子终了;若查表结果为 FFH,则产生相应的停顿效果。 计数脉冲值与频率的关系公式如下: N=Fi 2 Fr N:计算值; Fi:内部计时一次为 1us,故其频率为 1MHz; 3) 其计数值的求法如下: T=65536N=65536Fi 2 Fr 例如:设 K=65536, F=1000000=Fi=1MHz,球低音 DO( 261Hz)。 中音 DO( 523Hz)。 高音的 DO( 1046Hz)的计算值 T=65536N=65536Fi 2 Fr=655361000000 2 Fr=65536500000/Fr 低音 DO 的 T=65536500000/262=63627 低音 DO 的 T=65536500000/523=64580 低音 DO 的 T=65536500000/1047=65059 4) C 调各音符频率与计数值 T 的对照表如表 41 所示。 表 41 C 调各音符频率与计数值 T 的对照表 低音 频率 T 参数 中音 频率 T 参数 高音 频率 T 参数 Do 262 1908 229 Do 523 956 115 Do 1046 57 57 Do﹟ 277 1805 217 Do﹟ 554 903 108 Do﹟ 1109 54 54 Re 294 1701 204 Re 587 852 102 Re 1175 51 51 Re﹟ 311 1608 193 Re﹟ 622 804 97 Re﹟ 1245 48 48 Mi 330 1515 182 Mi 659 759 91 Mi 1318 45 45 Fa 349 1433 172 Fa 698 716 86 Fa 1397 43 43 Fa﹟ 370 1351 162 Fa﹟ 740 676 81 Fa﹟ 1480 41 41 So 392 1276 153 So 784 638 77 So 1568 38 38 So﹟ 415 1205 145 So﹟ 831 602 72 So﹟ 1661 36 36 La 440 1136 136 La 880 568 68 La 1760 34 34 La﹟ 464 1078 129 La﹟ 932 536 64 La﹟ 1865 32 32 Si 494 1012 121 Si 988 506 61 Si 1976 30 30 节拍的确定 若要构成音乐,光有音调是不够的,还需要节拍,让音乐具有旋律(固定的律动),而且可以调节各个音的快满度。 休止符表示暂停发音。 一首音乐是 由许多不同的音符组成的,而每个音符对应着不同频率,这样就可以利用不同的频率的组合,加以与拍数对应的延时,构成音乐。 对于单片机来说,产生不同频率的脉冲是非常方便的,利用单片机的定时 /计数器来产生这样的方波频率信号。 表 42 节拍与节拍码对照 节拍码 节拍数 节拍码 节拍数 1 1/4 拍 1 1/8 拍 计算机与信息 工程学院 6 2 2/4 拍 2 1/4 拍 3 3/4 拍 3 3/8 拍 4 1 拍 4 2/1 拍 5 1 又 1/4 拍 5 5/8 拍 6 1 又 1/2 拍 6 3/4 拍 8 2 拍 8 1 拍 A 2 又 1/2 拍 A 1 又 1/4 拍 C 3 拍 C 1 又 1/2 拍 F 3 又 3/4 拍 每个音符使用 1 个字节,字节的高 4 位代表音符的高低,低 4 位代表音符的节拍,表 42 为节拍码的对照。 如果 1 拍为 秒, 1/4 拍实 秒,只要设定延迟时间就可求得节拍的时间。 假设 1/4 拍为 1DELAY,则 1 拍应为 4DELAY,以此类推。 所以只要求得 1/4 拍的 DELAY 时间,其余的节拍就是它的倍数,如表 43 为 1/4 和 1/8 节拍的时间设定。 表 43 1/4 和 1/8 节拍的时间设定 曲调值 DELAY 曲调值 DELAY 调 4/4 125 毫秒 调 4/4 62 毫秒 调 3/4 187 毫秒 调 3/4 94 毫秒 调 2/4 250 毫秒 调 2/4 125 毫秒 编码 do re mi fa so la si 分别编码为 1~7,重音 do 编为 8,重音 re 编为 9,停顿编为 0。 播放长度以十六分音符为单位(在本程序中为 165ms),一拍即四分音符等于 4 个十六分音符,编为 4,其它的播放时间以此类推。 音调作为编码的高 4 位,而播放时间作为低 4位,如此音调和节拍就构成了一个编码。 以 0xff 作为曲谱的结束标志,可以参考简谱码如表 44 所示。 歌曲播放的设计:先将歌曲 的简谱进行编码,储存在一个数据类型为 unsigned char 的数组中。 程序从数组中取出一个数,然后分离出高 4 位得到音调,接着找出相应的值赋给定时器 0,使之定时操作蜂鸣器,得出相应的音调;接着分离出该数的低 4 位,得到延时时间,接着调用软件延时。 表 44 简谱对应的简谱码、 T 值、节拍数 简谱 发音 简谱码 T 值 节拍码 节拍数 5 低音 SO 1 64260 1 1/4 拍 6 低音 LA 2 64400 2 2/4 拍 7 低音 TI 3 64524 3 3/4 拍 1 中音 DO 4 64580 4 1 拍 2 中音 RE 5 64684 5 1 又 1/4 拍 3 中音 MI 6 64777 6 1 又 1/2 拍 4 中音 FA 7 64820 8 2 拍 5 中音 SO 8 64898 A 2 又 1/2 拍 6 中音 LA 9 64968 C 3 拍 计算机与信息 工程学院 7 7 中音 TI A 65030 F 3 又 3/4 拍 1 高音 DO B 65058 2 高音 RE C 65110 3 高音 MI D 65157 4 高音 FA E 65178 5 高音 SO F 65217 5 调试 检查硬件连接 在 PROTUES 检查各硬件管脚是否连接正确,线路逻辑是否正确,例如:晶振电路的连接,复位电路是否设计正确。 检查软件系统 1. 根据系统的原理结构检查各流程图是否正确,再根据流程图来检查程序是否也正确。 2. 将所有程序组织起来,在软件环境下运行,检查程序是否正确。 通过对硬件和软件系统的认真检查,反。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。