可编程音乐彩灯系统设计Word文档格式.docx
《可编程音乐彩灯系统设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《可编程音乐彩灯系统设计Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
这个时代生产的单片机已能在单块芯片内集成CPU,并行口,定时器,RAM和ROM等功能部件,但性能低,品种少,应用范围也不是很广。
第三代单片机(1979-1982):
这是八位单片机成熟的阶段。
这一代单片机和前两代相比,不仅存储容量和寻址范围大,而且中断源,并行I/O口和定时器/计数器个数都有了不同程度的增加,更有甚者是新集成了全双工穿行通信接口电路。
在指令系统方面,普遍增设了乘除法和比较指令。
这一时期生产的单片机品种齐全,可以满足各种不同领域的需要。
第四代单片机(1983年以后):
这是十六位单片机和八位高性能单片机并行发展的时代,十六位机的特点是,工艺先进,集成度高和内部功能强,加法运算速度可达到1us以上,而且允许用户采用面向工业控制的专用语言,如PL/MPLUSC和Forth语言等。
纵观单片机的发展过程,可以预示单片机的发展趋势,大致有:
低功耗CMOS化,微型单片化,主流与多品种共存。
2硬件设计及工作原理
该系统主要包括一个由麦克风、F007放大电路和A/D转换器构成的音乐数据采集系统和一个8051单片机彩灯控制系统。
其原理方框图如下:
图1原理方框图
其工作原理为:
首先由麦克风收集音乐信号,通过F007放大电路将信号放大。
因收集来的音乐信号为模拟信号,而8051控制系统是通过高低电平,即数字信号,来控制彩灯的。
所以放大后的模拟音乐信号需通过A/D转换器转换成数字音乐信号,然后通过8051单片机P0口送入彩灯控制系统。
8051输出的控制信号通过8055A并行接口控制彩灯。
由于系统内部是低电压,彩灯是照明电压,所以系统低电压就是通过外围电路来控制彩灯的。
2.1音乐数据采集系统
2.1.1F007放大电路
这里的音乐数据采集系统是由一个麦克风、一个F007放大器和一个A/D转换器组成。
麦克风将音乐信号采集下来,放大器将音乐信号放大,再交由A/D转换器MAX1166把模拟音乐信号转换成数字音乐信号。
F007放大电路图如图2所示。
F007属第二代集成运放,它的电路特点是:
采用了有源集电极负载、电压放大倍数高、输入电阻高、共模电压范围大、校正简便、输出有过流保护等。
它分为偏置电路,输入级,中间级和输出级。
(1)偏置电路
偏置电路的作用是向各级放大电路提供合适的偏置电流,决定各级的静态工作点。
F007的偏置电路由T8~T13组成。
基准电流由T12、R5、T11,和电源EC(15V)、EE(-15V)决定:
(1)
T10、T11和R4组成微电流源电路,提供输入级所要求的微小而又十分稳定的偏置电流,并提供T9所需的集电极电流,即IC10=IC9+2IB3;
T8与T9组成镜像恒流源电路,提供T1、T2的集电极电流,即IC1+IC2=IC9,T12与T13组成镜像恒流源电路,提供中间级T16、T17的静态工作电流,并充当其有源负载。
输入级偏置电路中间级输出级
图2F007放大电路图
(2)输入级
输入级对集成运放的多项技术指标起着决定性的作用。
它的电路形式几乎都采用各种各样的差动放大电路,以发挥集成电路制造工艺上的优势。
F007的输入级电路是由T1~T7组成的带有恒流源及有源负载的差动放大电路。
有源负载是由T5,T6、T7及R1、R2、R3组成的改进型镜象恒流源电路。
用它作差动放大电路的有源负载,不仅可以提高电压放大倍数,还能在保持电压放大倍数不变的条件下,将双端输出转化为单端输出。
T1~T4组成共集一共基型差动放大电路。
其中,T1、T2接成共集电极形式,可以提高电路的输入阻抗,同时由于UC1=UC2=EC-UBE8,,因而共模信号正向界限接近EC,即提高了共模信号的输入范围;
T3、T4,组成共基极电路,具有较好的频率特性,同时还能完成电位移动功能,使输入级输出的直流电位低于输入直流电位,这样后级就可直接接NPN型管;
由于PNP型管的发射结击穿电压很高,这种差动放大电路的差模输入电压也很高,可达30V以上,此外,共基极电路输入电阻较小,而输出电阻较大,有利于接有源负载,并起到将负载与NPN管隔离开的作用。
(3)中间级
中间级电路的主要任务是提供足够大的电压放大倍数,并向输出级提供较大的推动电流,有时还要完成双端输出变单端输出,电位移动等功能。
F007的中间级是由复合管T16、T17和电阻R6组成的共发射极放大电路,T12、T13组成的镜象恒流源作为它的有源负载,因而可以获得很高的电压放大倍数。
R6起电流负反馈作用可以改善放大特性。
(4)输出级
输出级的作用是向负载输出足够大的电流,要求它的输出电阻要小,并应有过载保护措施。
输出级大都采用互补对称输出级,两管轮流工作,且每个管于导电时均使电路工作在射极输出状态,故带负载能力较强。
F007输出级采用的就是由T14和复合管T18、T19组成的互补对称电路。
R7、R8和T15组成电压并联负反馈偏置电路,使T15的c、e两端具有恒压特性,为互补管提供合适而稳定的偏压,以消除文越失真。
D1、D2和R9、R10组成过载保护电路,正常工作时,R9、R10上的压降较小,D1、D2均处于截止状态,即保护电路处于断开状态,一旦因某种原因而过载,T14及复合管的电流超过了额定值,则R9、R10上的压降明显增大,D1、D2将导通,从而对T14和T15的基极电流进行分流,限制了输出电流的增加,保护了输出管。
2.1.2A/D转换器
(1)内部结构
该系统所用的A/D转换器是美国MAXIM公司生产的逐次逼近型16位模数转换器MAX1166。
该芯片片内除集成了逐次逼近型ADC所必须的逐次逼近寄存器SAR、高精度比较器和控制逻辑外,还集成了时钟、4.096V精密参考源和接口电路。
MAX1166的数据总线为8位,因此与目前广泛使用的8位微处理器连接非常方便。
其内部结构框图如下:
RESET
AGND
图3MAX1166内部结构框图
MAX1166的典型参数如下:
●并行数据输出接口:
8位
●采样频率:
165ksps
●精度:
最大线性误差±
2LSB,16位无误码
●内部参考源电压:
4.096V
●外部参考源电压输入范围:
+3.8~5.25V
●模拟电压输入范围:
+4.75~+5.25V
●数字电压输入范围:
+2.7~+5.25V
●小电流外部参考电源流为1.8mA内部参考电源流为2.7mA采样率在10ksps时的外部参考电源电流为0.1uA;
●采用20管脚TSSOP封装。
(2)引脚排列图
MAX1166共有20个引脚,这些引脚大体可分为三类。
第一类是电源类其中,模拟电源AVDD和数字电源DVDD应分别通过0.1uF的钽电容与模拟地和数字地相连接。
而数字地DGND和模拟地AGND1、AGND2通常共地。
第二类为模数信号类其中,AIN为模拟信号输入端;
D0/D7~D8/D15为数字量并行输出口。
第三类是控制信号类其中CS(输入)为转换启动端;
R/C(输入)为读取结果/模数转换控制端;
EOC(输出)用于指示转换结束;
HBEN(输入)用来控制从总线读出的数据是转换结果的高字节还是低字节;
REFADJ为参考电源选择端,该端通过0.1uF钽电容与模拟地相接时,选择内部参考电源模式,而当其直接与模拟电源相接时选择外部参考电源模式;
REF为参考电源输入/输出端,选择内部参考电源时,该脚应通过4.7uF钽电容接模拟地,而选择外部参考电源时,该脚为外部参考电源输入端。
其引脚排列图如下:
图4MAX1166引脚排列图
(3)MAX1166的转换控制时序
MAX1166的一次转换过程可分为三个阶段,即转换准备阶段、模数转换阶段和转换结果输出阶段。
具体工作过程如下:
首先将R/C管脚置低电平,然后在CS脚输入脉冲信号,MAX1166会在CS的第一个脉冲信号的下降沿进入工作状态;
并在CS的第二个脉冲信号下降沿启动A/D转换。
此脉冲信号的宽度最小应为40ns。
转换过程中,EOC脚为高电平,并在经过约5us转换完成后,EOC脚电平变低以指示转换完成。
当EOC脚输出为低电平时,若将R/C脚置为高电平,系统将在CS的第三个脉冲的下降沿把转换结果输出到数据总线上。
在数据转换过程中,通过检测EOC脚的输出电平即可判断数据的转换状态。
当EOC输出为高电平时,表示数据转换仍在进行,此时不能读取数据;
而当EOC输出为低电平时,表明数据转换已经结束,此时可以读取数据。
设置并行数据输出选择位HBEN为高电平可读取数据高8位;
而设置HBEN为低电平则可读取数据低8位。
MAX1166有两种工作模式,即稳定工作模式和低功耗工作模式。
可由管脚R/C在CS第二个脉冲下降沿的状态来决定选择哪种工作模式,R/C为低电平时,选择正常工作模式,为高电平时选择低功耗工作模式。
2.28051彩灯控制系统
Intel公司20世纪80年代初推出MCS-51系列单片机后,世界上许多著名的半导体厂商相继生产这个系列兼容的单片机,使产品型号不断地增加、品种不断丰富、功能不断加强。
从系统结构上看,所有的51系列单片机都是以Intel公司最早的典型产品8051为核心,增加了一定的功能部件后构成的。
2.2.18051片上硬件资源
8051为典型的ROM型单片机,内部硬件资源有:
●面向控制的8位CPU;
●4K字节掩膜ROM程序存贮器;
●128字节内部RAM数据存贮器;
●2个别16位定时器/计数器;
●1个全双工的异步串行口;
●5个中断源、2个中断优先级的中断控制器;
●时钟电路,时钟频率在1.2MHz~12MHz。
2.2.2结构框图
8051采用模块式的结构,有多个存贮空间,每一个存贮空间都留有一定的余量,这种结构为MCS-51系列单片机的发展留有充分的余地。
其结构框图如图5所示。
图58051结构框图
2.2.3引脚图和逻辑符号图
8051一般为DIP40双列直插封装形式的器件,其引脚图和逻辑符号如图6所示。
8051的引脚P00~P07、P10~P17、P20~P27、P30~P37为四个8位并行输入/输出口,其中P3口、P0口和P2口为双功能口,可以作为普通输入/输出口(第一功能),也可以作为特殊输入/输出口。
RST为复位输入线,ALE、PSEN、EA为系统扩展控制线,XTAL1和XTAL2为时钟电路输入/输出线,Vcc、Vss为电源输入线,一般接+5V和地。
I/O
EA
PSEN
ALE
P2
Vss
XTAL2
XTAL1
RST
P3
8051/8052
P0
P1
Vcc
图68051引脚图和8051逻辑符号
2.38255A并行接口
8255A的方框图如图7所示。
WR
图78255A的方框图
当CPU要从外设输入信号或输出信息给外设,可以采用程序查询方式、中断方式和DMA方式。
但不论哪一种方式CPU总是通过接口电路(Interface)才能与外设连接。
Intel8255A-5是一个为8080、8085、8088微型机系统设计的通用I/O接口片子。
它可用程序来改变功能,通用性强,使用灵活,通过它还可直接将CPU总线接向外设。
它由以下几部分组成:
(1)数据端口A、B、C
它有三个输入输出端口:
PortA,portB和PortC。
每一个端口都是8位,都可以选择作为输入或输出,但功能上有着不同的特点。
端口A:
一个8位数据输出锁存和缓冲器;
一个8位数据输入锁存器。
端口B:
一个8位数据输入/输出、锁存/缓冲器;
一个8位数据输入缓冲器。
端口C:
一个8位数据输出锁存/缓冲器;
一个8位数据输入缓冲器(输入没有锁存)。
通常端口A或B作为输入输出的数据端口,而端口C作为控制或状态信息的端口,它在“方式”字的控制下,可以分成两个四位的端口。
每个端口包含一个四位锁存器。
它们分别与端口A和B配合使用,可用以作为控制信号输出,或作为状态信号输入。
(2)A组和B组控制电器
这是两组根椐CPU的命令字控制8255A工作方式的电路。
它们有控制寄存器,接受CPU输出的命令字,然后分别决定两组的工作方式,也可根椐CPU的命令字对端口C的每一位实现按位“复位”或“置位”。
A组控制电路控制端口A和端口C的上半部(PC7~PC4)。
B组控制电路控制端口B和端口C的下半部(PC3~PC0)。
(3)数据总线缓冲器
这是一个三态双向8位缓冲器,它是8255A与系统数据总线的接口。
输入输出的数据,输出指令以及CPU发出的控制字和外设的状态信息,也都是通过这个缓冲器传送的。
(4)读/写和控制逻辑
它与CPU的地址总线中的A1、A0以及有关的控制信号(RD,WR,RESET,IO/M)相连,由它控制把CPU的控制命令或输出数据送至相应的端口;
也由它控制把外设的状态信息或输入数据通过相应的端口,送至CPU。
(5)一些控制命令
●
CS(ChipSelect)------选片信号,低电平有效,由它启动CPU与8255A之间的通信(Communication)。
RD------读信号,低电平有效。
它控制8255A送数据或状态信息至CPU。
WR------写信息,低电平有效。
它控制把CPU输出的数据或命令信号写到8255A。
●RESET------复位信号,高电平有效,它清除控制寄存器和置所有端口(A、B、C)到输入方式。
(6)端口地址
8255A中有三个输入输出端口,另外,内部还有一个控制字寄存器,共有四个端口,要有两个输入端来加以选择,这两个输入端通常接到地址总线的最低两位A1和A0。
A1,A0和RD、WR及CS组合所实现的各种功能,如表1所示。
表1端口地址
A1
A0
RD
CS
输入操作(读)
1
端口A数据总线
端口B数据总线
端口C数据总线
输出操作(写)
数据总线端口A
数据总线端口B
数据总线端口C
数据总线控制字寄存器
X
断开功能
数据总线三态
非法状态
2.4外围电路
该系统外围电路主要是指继电器或双向可控硅电路。
由于系统内部电压是几伏的低电压,而外电路彩灯是220伏的照明电压。
所以系统低电压需通过该外围电路来控制外电路的照明电压。
在这个系统里用的是双向可控硅,其电路结构框图如下
VD2IN4004
C10.58u
图8双向可控硅电路图
电源电路由C1、C2和二极管VD1、VD2等组成,接通电源后,电容C2两端可获得12V左右直流电压。
当输入为低电平时,三极管VT基极为低电平,所以三极管VT与可控硅都处于截止状态,灯H不亮。
当输入为高电平时,,VT导通,12V电源就通过VT加至可控硅VS的控制极G上,使VS迅速导通,电灯H就通电发亮
元件选择与制作
VT用9013;
VD1选用12V,1/2W稳压管,如2CW60等;
VD2可用1N4007;
VS如选用BCR3AM耐压600V的双向可控硅,负载能力可达600W。
如果电灯H总功率超过600W,可换用更大电流的可控硅,但此时应将电容C1的容量加大到1μF,以获取较大驱动电流,同时还需将稳压管VD1的功率增大到1W。
RP选用WSW型有机实芯微调电位器;
R1、R2均用RJ-1/4W行金属膜电阻;
C1要求采用CBB-400V型聚丙稀电容器,C2可用普通的25V的电解电容。
使用时可控硅需加装面积足够大的铝制散热板。
3程序设计
3.1程序设计思想3.1.1花样程序的设计
本电路采用A8-A10作为节拍花样种类的选择地址,因此可选择8种花样。
EPROM的工作原理如下:
首先将EPROM的存储区分为8个区域,每个区域都包含连续的16个字节的存储单元。
区域地址可在写入花样程序段时,事先确定。
节拍花样内容的编排,要根据每种花样规律的特点,编排出不同时刻触发不同彩灯的触发规律,并将这些触发规律变成对应的二进制码存入EPROM中。
编排时在考虑根据花样特点的同时,也要考虑整个存储区的分配方法和对每一区域内容的地址安排等因素。
本电路中选择8种不同的花样,在写入EPROM中,编码方法为高电平有效,既读出某字节时,如果需要触发某种彩灯,对应该位的编码为1,否则为0。
如在第一时刻只安排第6、7排灯亮,对应D6、D7编码为“1”,该字节单元编码为11000000。
第二时刻只安排第4、5排灯亮,对应D4、D5编码为“1”,该字节单元编码为00110000。
其余编码方法可依次类推。
然后再根据每种花样所对应种类选择位置来确定其编码内容在E2PROM中的地址分配情况。
2K存储器的地址范围为0000~07FF(十六进制),每种花样占其1/8的存储空间,依此就可推断出每种花样的地址种类范围。
例如选定波浪翻滚图案,它是第四种,故占用地址范围为0300~030F。
例如选定某种花样时A8~A10所加地址码为001,则花样内容所占区域的地址范围为100~10F,区域地址范围确定后,该区域中各字节单元的地址就很容易地由主程序来确定。
3.1.2主程序的设计
该程序设计需要考虑两个问题:
一是音乐节奏信号的采集问题。
音乐的节奏作为音乐的概念是人类对音乐的一种感觉,但是它却难于用文字来定义。
在《基础乐理》中则把节奏概括成音值的长短与强弱拍位所构成的组织形态。
近年来国际上对音乐节奏信号的采集也提出了MasatakaGotoh的模型和YoichiMuraoko等其他模型。
参考这些模型,本文设计的节奏采集模型为:
在一定频率范围内进行探测,并将其中较大峰值能量的拍位作为我们提取的节奏信号。
这就牵涉到8051P0口从ADC0804的DB0-DB7读取数据的频率问题,即采样频率。
在本文中采样频率可以由彩灯执行一种花样的所需时间来确定。
至于较大峰值能量的拍位,本文中则采用将输入模拟电压与一参考电压比较的方式,如:
64H(2V)。
如果比此参考电压大或相等则保留采集的数据,否则重新采样。
电压为0则表明无信号输入,程序结束。
第二个问题是花样程序地址的选择和花样的显示问题。
当节奏信号采集完被转换成8位二进制数据后,可依次选择花样1-8,当八种全选完以后,就重新回到主程序,又从第一个花样开始,如此往返循环,直到音乐的停止。
3.2主程序设计流程图
图9主程序流程图
4结束语
本文通过对音乐信号采集系统、8051单片机控制系统、8255A并行接口以及外围电路的介绍,完整展现了一个可编程音乐彩灯系统的设计。
该系统可以根据用户的要求编程,使彩灯按照用户的意愿而变化。
所以该系统最大的特点就是实用、方便,但不足之处在所难免。
随着科学技术的不断发展,单片机技术的不断提高,相信这类产品将不断完善,满足人们日益增长的物质文化需求。
致谢
在这里我衷心感谢黄国盛老师对我的悉心指导及对本文的细心修改,感谢各位任课老师的精心教导,感谢所有在我的毕业设计过程中帮助过我的同学和朋友。
感谢大家对我的关怀和教导。
参考文献:
[1]童诗白,华成英.模拟电子技术基础[M].第三版,北京:
高等教育出版社,2001.
[2]祁雪梅,季广中.国外电子元器件[J].电子工程周刊,2004-12-11.
[3]周明德.微型计算机系统原理及应用[M].第三版上册,北京:
清华大学出版社,1998.
[4]张友德,赵志英,涂时亮.单片微型机原理、应用与实验[M].第四版,上海:
复旦大学出版社,2003.
[5]翟社平.汇编语言程序设计教程[M].西安:
电子科技大学出版社,2000.