天嵌 ARM开发社区

 找回密码
 注册
查看: 37015|回复: 185

裸奔三部曲 第4章

[复制链接]
wang1234sheng 发表于 2010-3-19 20:07:38 | 显示全部楼层 |阅读模式
第三章因为本人正在使用那个触摸校正的算法发论文,为了不要引起不必要的麻烦暂时搁浅到后面了。

现在首先给大家把第四章整理出来了,希望大家喜欢!!

此方法(例程4.4的加强版pwm唱歌)为笔者原创,转载请注明出处!

看帖回帖是美德!谢谢!


例程 4.4 加强版PWM 唱歌
在我们写出了以上使用ARM9 实现蜂鸣器唱歌的程序之后,大家已经听到了一首动
听了歌曲了,是不是很有成就感呢?但是大家是否完全搞明白了这首歌的来龙去脉了
呢?还有些朋友(例如拍拖中的朋友或者过生日的朋友)可能会有比较多的想法,例如
我们可不可以使用ARM9 的蜂鸣器在恰当的时机唱出自己喜欢的任意的歌曲呢?下面
的实验就来帮大家解决这个问题。
(注意:此例程为笔者原创,转载请注明出处。)
一、 实验目的
1、频率分析:分析低、中、高音的do、re、mi、fa、sol、la、si 对应的声音的频率
2、编写自己的程序,使我们可以对照着乐谱(例如下面的《老鼠爱大米》那一个
乐谱),在数组中直接写入对应的低音、中音、高音的do、re、mi、fa、sol、la、si 以及
该音节的节拍数即可实现蜂鸣器将那一首歌唱出来。方便以后自己朝开发板里面写入任
意歌曲。
注意:此处我们的数组采用以下助记规则:
(1)对低音的do、re、mi、fa、sol、la、si,分别写入01、02、03、04、05、06、07
对中音的do、re、mi、fa、sol、la、si,分别写入11、12、13、14、15、16、17
对高音的do、re、mi、fa、sol、la、si,分别写入21、22、23、24、25、26、27
(2)对应的节拍数,1/4 拍写1,2/4 拍写2,3/4 拍写3,依次类推。
欢迎大家提出更好的助记规格。
二、 我们所需要做的工作摘要:
1、编写程序段,使用串口工具,将使用例程4.3 的方法实现蜂鸣器唱歌的时候对应的
频率打印出来。
笔者在这里分析这些数据并为大家总结这些数据间的关系如下:
SONG[]中的数值:
低音:0x60,0x55,0x4c,0x48,0x40,0x39,0x33,
中音:0x30,0x2b,0x26,0x24,0x20,0x1c,0x19,
高音:0x18,0x15,0x13,0x12,0x10,0x0e,0x0d,
对应蜂鸣器的频率(Hz):
低音:260,294,328,347,390,438,490,
中音:520,581,657,694,781,892,1000,
高音:1041,1190,1315,1388,1562,1785,1923,
2、对照例程 4.3 中的《祝你平安》的乐谱将数据写入数组如下:
unsigned char SONG[] ={ //祝你平安,2 表示2/4 拍
13,2, 15,2, 15,2, 13,1, 15,1, 15,8,
13,2, 11,2, 11,2, 6,1, 11,1, 11,8,
........

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 7 +52 收起 理由
Jminy + 10
xincaizhen + 10
nosolo + 3
liushui2007 + 5 太好了
lirain115 + 9

查看全部评分

358763471 发表于 2010-3-19 20:25:03 | 显示全部楼层
赞赞赞赞赞赞赞
muyihuaan 发表于 2010-3-19 20:57:03 | 显示全部楼层
先顶上!!
再研究下
huajiji 发表于 2010-3-19 21:00:35 | 显示全部楼层
好期待第三章。先看第四章啦。谢谢啦!
shaqi 发表于 2010-3-19 22:13:42 | 显示全部楼层
顶顶~~
我也来研究研究~~
lee198717 发表于 2010-3-19 22:56:24 | 显示全部楼层
顶一个,谢谢!
yh1988 发表于 2010-3-20 00:35:12 | 显示全部楼层
我也来研究研究~~
混江龙 发表于 2010-3-20 13:38:00 | 显示全部楼层
学习学习!非常感谢。。。。。。
ARMNEW 发表于 2010-3-20 14:36:35 | 显示全部楼层
学习学习顶下先
luobocarrot 发表于 2010-3-20 23:33:33 | 显示全部楼层
顶,继续期待
qiguibao 发表于 2010-3-21 08:28:25 | 显示全部楼层
呵呵,谢谢楼主!!辛苦,加油!
黄朝斌 发表于 2010-3-21 09:35:40 | 显示全部楼层
学习中,太thank了。
276865881 发表于 2010-3-21 15:34:40 | 显示全部楼层
辛苦了!下来看看
zhonghua8410 发表于 2010-3-22 10:58:23 | 显示全部楼层
支持楼主!
aihuazhiren 发表于 2010-3-22 11:23:54 | 显示全部楼层
继续加油哦。。。。。。。。。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-5-5 20:22 , Processed in 1.062507 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表