打印

51单片机产生音乐问题

[复制链接]
2580|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
liusensen| | 2012-9-11 11:39 | 只看该作者
用51?

使用特权

评论回复
板凳
xsjkiver| | 2012-9-11 13:12 | 只看该作者
这个应该是要知道音乐方面的一些知识,我也不懂,只是以前用一个模块做过,51做的,蜂鸣器发声,当然效果不怎么好。模块网上有很多。

使用特权

评论回复
地板
computer00| | 2012-9-11 13:43 | 只看该作者
音长由每分钟的拍数和音符的拍数决定。
频率由音符的音高决定,对于简谱,首先要确定主音的频率(也就是定调)。
假设选择为a大调,我们定1的频率为440Hz。那么
1  #1  2  #2  3  4  #4  5  #5  6  #6  7
每个音在前一个音的基础上,频率升高到2的1/12次方(约为1.0594631)即可。

440Hz、466Hz、494Hz、523Hz………………

使用特权

评论回复
5
coody| | 2012-9-11 14:24 | 只看该作者
按十二平均率计算乐谱对应的频率,建一个谱表,时间就是时值,也要按一定的规则编码,由程序识别。

使用特权

评论回复
6
hllyellow|  楼主 | 2012-9-11 15:31 | 只看该作者
谢谢四楼的大侠,那音长怎么确定啊

使用特权

评论回复
7
hllyellow|  楼主 | 2012-9-11 15:39 | 只看该作者
最好谁能对照这个简谱解释解释 感激不尽啊~~~~

使用特权

评论回复
8
teddeng| | 2012-9-11 17:32 | 只看该作者
无聊,简单回答下:
百度音高和频率转换表,1=C就是1=261.63hz,其他自己查表。
速度没标,你自己定义吧,一般一分钟60~120拍,也就是1的时长1秒~0.5秒;
如果是一分钟60拍,那么1时长1秒,1-时长2秒,1下划一线0.5秒,下划2线0.25秒,1.下划一线0.75秒,保证一小节(两个竖线之间)时长之和4秒。
4/4拍子是强弱次强弱,拿第一小节来说就是1电压最高,2低,3次高,1低,这个是为了好听,简单点把每小节第一个四分音符电压输出高点就OK了,高多少好听你自己设个参数调。

使用特权

评论回复
9
云的追寻| | 2012-9-11 23:26 | 只看该作者
仅是想法:pwm写一个函数,按音符转换调用。。。

使用特权

评论回复
10
fjzzclc| | 2012-9-12 08:56 | 只看该作者
音乐不懂

使用特权

评论回复
11
ljx901217| | 2012-9-12 09:00 | 只看该作者

使用特权

评论回复
12
ljx901217| | 2012-9-12 09:00 | 只看该作者
不了解

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

18

帖子

1

粉丝