技术文档

电子琴单片机课程设计 电子琴单片机编程相关知识

小编 2024-10-06 技术文档 23 0

电子琴单片机编程相关知识

音频脉冲的产生:音乐的产生主要是通过单片机的I/O口输出高低不同的脉冲信号来控制蜂鸣器发音,要想产生音频脉冲信号,需要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。利用单片机定时器计时这个半个周期时间,每当计时到后就将输出脉冲的I/O口反相,然后重复计时此半周期时间再对I/O口反相,这样就能在此I/O口上得到此频率的脉冲。

通常,利用单片机的内部定时器0,工作在方式1下,改变计数初始值THO和TLO来产生不同的率。

例如,若单片机采用12MHz晶振,要产生频率为587Hz的音频脉冲时,其音频信号的脉冲周期 T=1/587=1703.5775μs,半周期的时间为852μs,因此只要令计数器计数=852μs/1μs=852,在每计数852时将I/O口反相,就可得到C调中音Re。

计数脉冲值与频率的关系如下:

频率Hz

周期us

简谱码(定时初值)

音符

频率Hz

周期

us

简谱码(定时初值)

低1Do

262

3816

63628

高1Do

1047

955

65058

低2Re

294

3401

63835

高2Re

1175

851

65110

低3Mi

330

3030

64021

高3Mi

1319

758

65157

低4Fa

349

2865

64103

高4Fa

1397

751

65160

低5So

392

2551

64260

高5So

1568

637

65217

低6La

440

2272

64400

高6La

1760

568

65252

低7Si

494

2024

64524

高7Si

1967

508

65282

中1Do

523

1912

64580

中2Re

587

1703

64684

中3Mi

659

1517

64777

中4Fa

698

1432

64820

中5So

784

1275

64898

中6La

880

1136

64968

中7Si

988

1012

65030

音符的节拍我们可以举例来说明。在一张乐谱中,我们经常会看到这样的表达式,如1=C 、1=G…… 等等,这里1=C,1=G表示乐谱的曲调,和我们前面所谈的音调有很大的关联,、就是用来表示节拍的。以为例加以说明,它表示乐谱中以四分音符为节拍,每一小结有三拍。比如:

其中1 、2 为一拍,3、4、5为一拍,6为一拍共三拍。1 、2的时长为四分音符的一半,即为八分音符长,3、4的时长为八分音符的一半,即为十六分音符长,5的时长为四分音符的一半,即为八分音符长,6的时长为四分音符长。那么一拍到底该唱多长呢?一般说来,如果乐曲没有特殊说明,一拍的时长大约为400—500ms 。我们以一拍的时长为400ms为例,则当以四分音符为节拍时,四分音符的时长就为400ms,八分音符的时长就为200ms,十六分音符的时长就为100ms。

可见,在单片机上控制一个音符唱多长可采用循环延时的方法来实现。首先,我们确定一个基本时长的延时程序,比如说以十六分音符的时长为基本延时时间,那么,对于一个音符,如果它为十六分音符,则只需调用一次延时程序,如果它为八分音符,则只需调用二次延时程序,如果它为四分音符,则只需调用四次延时程序,依次类推。

单片机编程实训任务:多音阶电子琴

1. 制作一个多音阶电子琴,由4X4键盘和功放模块组成,设计成16个音符,可随意弹奏想要表达的音乐,音符和按键对应关系如下图所示。点在数字下面表示低音,点在数字上面表示高音,无点的数字表示中音。

画出接线图和流程图,并根据流程图编写代码,仿真实现功能。

2. 制作一个音乐播放器,循环播放歌曲《两只老虎》。该歌曲简谱如下图所示。

简谱知识:无下划线的音符为四分音符;有一个下划线的音符为八分音符,如5;有两条下划线的音符为十六分音符,如6;有点的音符为附加音符,如5· ,为1.5个八分音符。一拍的时长为400ms,以四分音符为节拍,四分音符的时长就为400ms,八分音符的时长就为200ms,十六分音符的时长就为100ms。

相关问答

单片机电子琴 音调怎么调?

要调整单片机电子琴的音调,首先需要明确所用单片机芯片类型和音频输出方式。然后通过编程软件设置音频输出引脚的频率值,根据所需的音调进行调整。一般来说,...

基于AT89s52 单片机 的8键 电子琴设计 的c语言程序怎么编啊(蜂鸣器)?

蜂鸣器出不同音调的声音是由于震动的频率不同,你可以先定义八个不同的函数分别是八个音(通过定时或循环达到)然后将按键分别与对应的音调函数对应,按哪个按键...

英语翻译摘要本文介绍了一种由Mega16 单片机 、ISD4004语音芯...

SummaryThispaperpresentsasinglechipbytheMega16,ISD4004voicechip,7805andLM317regulato...

猜你喜欢