好文档 - 专业文书写作范文服务资料分享网站

基于单片机的简易电子琴设计 

天下 分享 时间: 加入收藏 我要投稿 点赞

内蒙古民族大学本科生毕业论文 S13S9S5S1SW-PBSW-PBSW-PBSW-PBS14S10S6S2SW-PBSW-PBSW-PBSW-PBS15S11S7S3SW-PBSW-PBSW-PBSW-PBS16S12S8S4SW-PBSW-PBSW-PBSW-PBP1HEADER 887654321BR1BR2BR3BR4CR1CR2CR3CR4 2.1.3 I/O并行口直接驱动LED显示 LED显示模块如图2-2所示,利用AT89S51单片机的P0端口的P0.0-P0.7连接到一个七段数码管的a-h的笔段上,数码管的公共端接地。在数码管上循环显示0-7数字,时间间隔0.2秒。 414

内蒙古民族大学本科生毕业论文 C7Y112MHz20191830pFC6U1X130pF2122232425262728R4220293083P2.0/A8P2.1/A9GNDX2P3.7/RDP2.2/A10P3.6/WRP2.3/A11P3.5/T1P2.4/A12P3.4/T0P2.5/A13P3.3/INT1P2.6/A14P3.2/INT0P2.7/A15P3.1/TXDPSENP3.0/RXDALEP0.7/AD7P1.7P0.6/AD6P1.6P0.5/AD5P1.5P0.4/AD4P1.4P0.3/AD3P1.3P0.2/AD2P1.2P0.1/AD1P1.1P0.0/AD0RSTVcc17CR416CR315CR214CR113BR412BR311BR210BR1323334dpgfedcba5109124673839e353637876C254321R210KAT89S51R310K632710uFC3VCC0.1uFVccIN+IN-BYPASSLM386U2V OUTGAINGAINGND518410uFC5C4LS1GNDGNDU3DPY7_SEG_DPEA40319系统板上硬件连线:(如图2-2所示) 1 把“单片机系统”区域中的P0.0/AD0-3P0.7/AD7端口用8芯排线连接到24“七段数码显示模块”区域中的任一个数码管的a-h端口上;要求:P0.0/AD0与a相连,P0.1/AD1与b相连,P0.2/AD2与c相连,??,P0.7/AD7与h相连。

程序设计内容

fdgadpcbP1.0扬声器10KR40.1uFR110KC110uFVCC 图2-2 电路原理图 Fig2-2 Circuit diagram 15

内蒙古民族大学本科生毕业论文

(1)LED数码显示原理:

七段LED显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的极管的接线形式,可分成共阴极型和共阳极型。 LED数码管的g~a七个发光二极管因加正电压而发亮,因加零电压而不以发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码,下面给出共阴极的字形码表(如表2-1所示)

表2-1 字形码表

Table 2-1 font code table

“0” “1” “2” “3” “4” “5” “6” “7” 3FH 06H 5BH 4FH 66H 6DH 7DH 07H “8” “9” “A” “b” “C” “d” “E” “F” 7FH 6FH 77H 7CH 39H 5EH 79H 71H

(2)由于显示的数字0-9的字形码没有规律可循,只能采用查表的方式

来完成我们所需的要求了。这样我们按着数字0-9的顺序,把每个数字的笔段代码按顺序排好!建立的表格如下所示:TABLEDB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH。 2.2 音乐产生的方法 2.2.1 原理

一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这 样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系正确即可。

若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,

16

内蒙古民族大学本科生毕业论文

即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。

利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。

计数脉冲值与频率的关系式(如式2-1所示)是:

N=fi÷2÷fr 2-1 式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。 其计数初值T的求法如下:

T=65536-N=65536-fi÷2÷fr

例如:设K=65536,fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。

T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr

低音DO的T=65536-500000/262=63627 中音DO的T=65536-500000/523=64580 高音DO的T=65536-500000/1046=65059

单片机12MHZ晶振,高中低音符与计数T0相关的计数值如表2-2所示

表2-2 音符频率表 Table 2-2 notes the frequency table

音符 低1 DO #1 DO# 低2 RE #2 RE# 低 3 M 低 4 FA # 4 FA# 低 5 SO # 5 SO# 低 6 LA 频率(HZ) 262 277 294 311 330 349 370 392 415 440 简谱码(T值) 音符 63628 63731 63835 63928 64021 64103 64185 64260 64331 64400 # 4 FA# 中 5 SO # 5 SO# 中 6 LA # 6 中 7 SI 高 1 DO # 1 DO# 高 2 RE # 2 RE# 频率(HZ) 740 784 831 880 932 988 1046 1109 1175 1245 简谱码(T值) 64860 64898 64934 64968 64994 65030 65058 65085 65110 65134 17

内蒙古民族大学本科生毕业论文

# 6 低 7 SI 中 1 DO # 1 DO# 中 2 RE # 2 RE# 中 3 M 中 4 FA 466 494 523 554 587 622 659 698 64463 64524 64580 64633 64684 64732 64777 64820 高 3 M 高 4 FA # 4 FA# 高 5 SO # 5 SO# 高 6 LA # 6 高 7 SI 1318 1397 1480 1568 1661 1760 1865 1967 65157 65178 65198 65217 65235 65252 65268 65283 我们要为这个音符建立一个表格,单片机通过查表的方式来获得相应的数据 低音0-19之间,中音在20-39之间,高音在40-59之间

TABLE: DW 0, 63628, 63835, 64021, 64103, 64260, 64400, 64524, 0, 0 DW 0, 63731, 63928, 0, 64185, 64331, 64463, 0, 0, 0 DW 0, 64580, 64684, 64777, 64820, 64898, 64968, 65030, 0, 0 DW 0, 64633, 64732, 0, 64860, 64934, 64994, 0, 0, 0 DW 0, 65058, 65110,65157, 65178, 65217, 65252, 65283, 0, 0 DW 0, 65085, 65134, 0, 65198, 65235, 65268, 0, 0, 0 DW 0

音乐的音拍,一个节拍为单位(C调)(如表2-3所示)

表2-3 曲调值表

Table 2-3 Tune the value of the table

曲调值 调4/4 调3/4 调2/4 DELAY 125ms 187ms 250ms 曲调值 调4/4 调3/4 调2/4 DELAY 62ms 94ms 125ms

对于不同的曲调我们也可以用单片机的另外一个定时/计数器来完成。

琴键处理程序,根据检测到得按键值,查询音律表,给计时器赋值,发出相应频率的声音。对音调的控制:根据不同的按键,对定时器T1送入不同的初值,调节T1的溢出时间,这样就可以输出不同音调频率的方波。不同音调下各个音阶的定时器。 在这个程序中用到了两个定时/计数器来完成的。其中T0用来产生音符频率,T1用来产生音拍。

2.2.2 程序框图

18

基于单片机的简易电子琴设计 

内蒙古民族大学本科生毕业论文S13S9S5S1SW-PBSW-PBSW-PBSW-PBS14S10S6S2SW-PBSW-PBSW-PBSW-PBS15S11S7S3SW-PBSW-PBSW-PBSW-PBS16S12S8S4SW-PBSW-PBSW-PBSW-PBP1HEADER887654321BR1BR2BR3BR4CR1CR2CR3CR42.1.3I/O并行口直接驱动LED
推荐度:
点击下载文档文档为doc格式
2o4s86ade27tdil036b6
领取福利

微信扫码领取福利

微信扫码分享