基于单片机的电子琴课程设计报告内容摘要:
C接通来实现。 时钟电路设计 图 时钟电路 单片机内部具有一个高增益反相放大器,用于构成振荡器。 通常在引脚 XTALl 和 XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,结构图中 Y C C2。 可以根据情况选择 6MHz、12MHz或 24MHz等频率的石英晶体,补偿电容通常选择 30pF左右的瓷片电容。 3 电子琴硬件设计 键盘电路设计 常用的按键有三种:机械触点式按键、导电橡胶式和柔性按键(又称触摸式键盘)。 机械触点式按键是利用 机械 弹性使键复位,手感明显,连线清晰,工艺简单,适合单件制造。 但是触点处易侵入灰尘而导 致接触不良,体积相对较大。 导电橡胶按键是利用橡胶的弹性来复位,通过压制的方法把面板上所有的按键制成一块,体积小,装配方便,适合批量生产。 但是时间长了,橡胶老化而使弹力下降,同时易侵入灰尘。 单片机电子琴课程设计 赵伟 6 柔性按键是近年来迅速发展的一种新型按键,可以分为凸球型和平面型两种。 柔性按键最大特点是防尘、防潮、耐蚀,外形美观,装嵌方便。 而且外形和面板的布局、色彩、键距可按照整机的要求来设计。 但是由于客观条件与经济能力有限,本系统采用机械触点式按键。 当测试表明有键被按下之后,紧接着就进行去抖动处理。 因为键是机械开 关结构,由于机械触点的弹性及电压突跳等原因,在触点闭合或断开的瞬间会出现电压抖动。 为保证键识别的准确,在电压信号抖动的情况下不能进行行状态输入。 为此需进行去抖动处理。 去抖动有硬件和软件两种方法。 硬件方法就是加去抖动电路,从根本上避免抖动的产生。 软件消抖,在第一次检测到有键按下时,执行一段延时程序之后,再检测此按键,如果第二次检测结果仍为按下状态, CPU便确认此按键己按下,消除了抖动。 图 键盘电路 利用所给键盘的 1, 2, 3, 4, 5, 6, 7, 8八个键,能够发出 7个不同的音调,而且有一个按键可以自动播放歌曲,要求按键按下时发声,松开延时一小段时间,中间再按别的键则发另外一音调的声音,当系统扫描到键盘按下,则快速检测出是哪一个按键被按下,然后单片机的定时器启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。 如果在前一个按下的键发声的同时有另一个按键被按下,则启动中断系统。 前面的发音停止,转到后按的键的发音程序。 发出后按的键的音调。 单片机电子琴课程设计 赵伟 7 显示电路设计 图 流水灯显示电路 本设计利用 8 个灯对应 8个按键的功能显示,当按下 17按键时对应 7个音调同时对应的小灯闪烁,当按下第 8 个按键时播放歌曲同时小灯轮闪,闪亮的时间等于音调的长短,小灯之间的切换时间为节拍时间,这样就实现了小灯随音乐而跳动闪烁的景象。 使小灯随音乐跳动起来,这就是小灯显示的优点。 串口电路设计 本设计采用 MAX232串口转换芯片其性能特点如下: 符合所有的 RS232C技术指标; 只需要单一 +5V电源供电 ; 片载 电荷泵具有升压、电压极性反转能力,能够产生 +10V和 10V电压 V+、 V; 功耗低,典型供电电流 5mA; 内部集成 2个 RS232C驱动器 ; 内部集成两个 RS232C接收器 ; 高集成度,片外最低只需 4个电容即可工作。 MAX232 芯片是美信公司专门为电脑的 RS232 标准串口设计的单电源电平转换芯片 ,使用+5v单电源供电。 内部基本上可以分为三部分 : 第一部分是电荷泵电路。 由 6脚和 4只电容构成。 功能是产生 +12v和 12v两个电源,提供给 RS232串口电平的需要。 单片机电子琴课程设计 赵伟 8 第二部分是数据转换通道。 由 1 1 1 14脚构成两个数据通道。 其中 13脚( R1IN)、 12脚( R1OUT)、 11脚( T1IN)、 14脚( T1OUT)为第一数据通道。 8脚( R2IN)、 9脚( R2OUT)、 10脚( T2IN)、 7脚( T2OUT)为第二数据通道。 TTL/CMOS数据从 11引脚( T1IN)、 10引脚( T2IN)输入转换成 RS232数据从 14脚( T1OUT)、7脚( T2OUT)送到电脑 DB9插头; DB9插头的 RS232数据从 13引脚( R1IN)、 8引脚( R2IN)输入转换成 TTL/CMOS数据后从 12 引脚( R1OUT)、 9引脚( R2OUT)输出。 第三部分是供电。 15脚 GND、 16脚 VCC( +5v)。 下图所示为 MAX232管脚封装图。 图 MAX232 封装引脚图 图 串口电路 电容器应选择 1μF 的电解电容。 单片机电子琴课程设计 赵伟 9 由于 RS232 电平较高,在接通时产生的瞬时电涌非常高,很有可能击毁 MAX232,所以在使用中应尽量避免热插拔。 如图。 发音电路设计 图 扬声器发声电路 本设计采用 9012PNP型三极管, 三极管 9012是一种常用的小功率 PNP型硅管, 在图中,三极管主要是做驱动用的,因为单片机的 IO 口驱动能力不够让蜂鸣器发出声音,所以我们通过三极管放大驱动电流,从而可以让蜂鸣器发出声音,当 三极 管导通,集电极电流通过蜂鸣器让 蜂鸣器发出声音,当输出低电平时,三极管截止,没有电流流过蜂鸣器,所以就不会发出声音,从而实现单片机控制发声。 4 电子琴软件设计 电子琴发声原理 一般说来,单片机演奏音乐基本都是单音频率,它不包含相应幅度的谐波 频率,也就是说不能象电子琴那样能奏出多种音色的声音。 因此单片机奏乐只需 弄清楚两个概念即可,也就是“音调”和“节拍”。 音调表示一个音符唱多高的 频率,节拍表示一个音符唱多长的时间。 在音乐中所谓“音调”,其实就是我们 常说的“音高”。 在音乐中常把中央 C 上方的 A 音定为标准音高,其频率 f=440Hz。 当两个声音信号的频率相差一倍时,也即 f2=2*f1时,则称 f2比 f1高一个倍频程 , 单片机电子琴课程设计 赵伟 10 在音乐中 1( do)与 .1, 2( re)与 .2„„正好相差一个倍频程,在音乐学中称它 相差一个八度音。 在一个八度音内,有 12个半音。 以 1— i 八音区为例, 12 个 半音是: 1— # # 1— 2— # # 2— 3— 4— # 4,# 4— 5 一# # 5— 6— # # 6— 7— i。 这 12 个音阶的分度基本上是以对数关系来划 分的。 如果我们只要知道了这十二个音符的音高,也就是其基本音调的频率,我 们就可根据倍频程的关系得到其他音符基本音调的频率。 知道了一个音符的频率后,我们就可以采用通过单片机的定时器定时中断 的方法,将单片机上对应蜂鸣器的 I/O 口来回取反,或者说来回清零,置位,从 而让蜂鸣器发出声音,为了让单片机发出不同频率的声音,我们只需将定时器予 置不同的定时值就可实现。 我们就以本次设计中标准音高 A为例进行演示。 A的频 率 f = 440 Hz,其对应的周期为: T = 1/ f = 1/440 =2272μ s 图 脉冲产生原理图 由图 ,单片机上对应蜂鸣器的 I/O 口来回取反的时间应为: t=T/2=2272/2=1136μ s 这个时间 t 也就是单片机上定时器应有的中断触发时间。 一般情况下,单片机奏乐时,其定时器为工作方式 1,它以振荡器的十二分 频信号为计数脉冲。 设振荡器频率为 f0,则定时器的予置初值由下式来确定: t=12*( TALL– THL) /f0 式中 TALL = 216 = 65536,THL为定时器待确定的计数初值。 因此定时器的高 低计数器的初值为: TH=THL/256=(TALL– t*f0/12)/256 TL=THL%256=(TALL– t*f0/12)%256 将 t=1136μ s 代入上面两式(注意:计算时应将时间和频率的单位换算一致), 单片机电子琴课程设计 赵伟 11 即可求出标准音高 A 在单片机晶振频率 f0=12Mhz,定时器在工作方式 1下的定时 器高低计数器的予置初值为: TH440Hz=(65536– 1136*12/12)/256=0XFB TL440Hz=(65536– 1136*12/12)%256=0X90 根据上面的求解方法,我们就可求出其他音 调相应的计数器的予置初值。 音符的节拍我们也可以举例来说明。 在一张乐谱中,我们经常会看到这样的 表达式,如 1=C、 1=G„„ 等等,这里 1=C,1=G表示乐谱的曲调,和我们前面所谈 的音调有很大的关联,、就是用来表示节拍的。 以为例加以说明,它表示乐谱中 以四分音符为节拍,每一小结有三拍。 比如: 图 部分乐谱图 在图 1 、 2 为一拍, 5 为一拍, 6为一拍共三拍。 1 、 2的时长为四分音符的一半,即为八分音符长, 4的时长为八分音符的一半,即为十六分音 符长, 5 的时长为四分音符的一半,即为八分音符长, 6的时长为四分音符长。 一般说来,如果乐曲没有特殊说明,一拍的时长大约为 400— 500ms。 我们以一 拍的时长为 400ms 为例,则当以四分音符为节拍时,四分音符的时长就为 400ms, 八分音符的时长就为 200ms,十六分音符的时长就为 100ms。 可见,在单片机上控制一个音符唱多长可采用循环延时的方法来实现。 首先,我们确定一个基本时长的延时程序,比如说以十六分音符的时长为基本延时时间,那么,对于一个音符,如果它为十六分音符,则只需调用一次延时程序,如果它为 八分音符,则只需调用二次延时程序,如果它为四分音符,则只需调用四次延时程序,依次类推。 通过上面关于一个音符音调和节拍的确。基于单片机的电子琴课程设计报告
相关推荐
合,产生新的品种和规格。 这种模块 化组合不但提高了产品的通用性和可靠性,而且也大大提高了生产效率,降低了成本。 智能化:与电子计算机组合或开发称重用计算机,利用计算机的智能来增加称重显示控制的功能,使其在原有功能的基础上增加推理、判断、自诊断、自适应、自组织等功能。 集成化:对于某些品种和结构的电子衡器,可以实现承载器与称重传感器一体化或承载器、称重传感器与称重显示控制器一体化。 综合性
线方式不同,必须在制作工程文件时设定好对应输出方式。 工作电压范围: 至 (VDD=~, VCC=~)。 PWM 可以直接驱动 8 欧姆 / 喇叭。 支持独立按键、 3*8 矩阵按键、并口控制、一线串口、三线串口等多种控制方式。 WT588D16 内嵌 DSP 高速音频处理器、 13位 DA 转换器和 12位 PWM。 PWM 输出可直接推动 ,可加载 WAV 音频格式。
,合并成一种 复位电路。 VCC( 40 脚)和 VSS( 20 脚) 作为系统的 供电端口 使用 , 需要相对应的接入 +5V电源的正负端。 P0~P3 是 可编程通用 I/O 脚,它的功能是通过软件来实现的。 在 本文的电子记分牌中,P0 端口( 32~39 脚)被用来作为 N1 功能控制端口,相对应的和 N1 的功能管脚相互连接。 13 脚用来作为 IR 输入端, 10 脚和 11
5P 0 534P 0 633P 0 732P 2 021P 2 122P 2 223P 2 324P 2 425P 2 526P 2 627P 2 728P S E N29A L E / P30T X D11R X D10U1A1B2Q03Q14Q25Q36Q410Q511Q612Q713C L K8MR9C I 1A1B2Q03Q14Q25Q36Q410Q511Q612Q713C L
单片机的选择 单片机是整个测控系统的核心部件 ,它直接影响到整个系统的软硬件设计 ,并对系统的功能、性价比以及研制周期起决定性作用。 本控制系统的单片机采用美国 ATMEL 公司生产的 8 位单片机 AT89C51,它是 80C51 微控制器系统的派生。 AT89C51 芯片 采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS51 指令集和输出管脚相兼容。 由于将多功能 8 位
C549 的内部框图如图 34 所示。 1 2 3 1 2 3 1 2 3 P0单 片 机 P3 图 34 TLC549 内部框图 TLC549 的工作原理 TLC549 带有片内系统时钟,该时钟与 I/O CLOCK 是独立工作的,无需特殊速度和相位匹配。 当 CS 为高时,数据 DATA OUT 端处于高阻态,此时 I/O CLOCK不起作用。 这种 CS 控制作用允许在同时使用