毕业设计说明书
设计题目 音乐彩灯控制器
学 号
姓 名
班 级
专 业
系 部
指导老师
完成时间 2009 年 7 月 20 日至 2009 年 10 月 11日
目 录
引言„„„„„„„„„„„„„„„„„„„„„„„„„ 3
第1章 单片机的概述„„„„„„„„„„„„„„„„„„4
1.1 单片机的产生„„„„„„„„„„„„„„„„„„ 4
1.1.1 单片机的定义„„„„„„„„„„„„„„„„„„ 4
1.1.2 单片机的介绍„„„„„„„„„„„„„„„„„„ 5
1.1.3 单片机的历史„„„„„„„„„„„„„„„„„„ 8
1.2 单片机的发展特点„„„„„„„„„„„„„„„„ 8
1.3 单片机的应用领域„„„„„„„„„„„„„„„„ 10
第2章 音乐彩灯的硬件设计及工作原理„„„„„„„„„ 13
2.1 同步控制器总电路的设计„„„„„„„„„„„„„ 13
2.1.1 控制器的原理图„„„„„„„„„„„„„„„„„ 13
2.1.2 控制器的的工作原理„„„„„„„„„„„„„„„ 13
2.2 分电路的设计„„„„„„„„„„„„„„„„„„ 14
2.2.1 电源的设计„„„„„„„„„„„„„„„„„„„ 14
(1)电源的原理图„„„„„„„„„„„„„„„„ 14
(2)电源的工作原理„„„„„„„„„„„„„„„ 15
(3) 元气件的选择„„„„„„„„„„„„„„„„15
2.2.2 放大电路的设计„„„„„„„„„„„„„„„„„16
(1) 放大电路的原理„„„„„„„„„„„„„„„16
(2) 放大电路的工作原理„„„„„„„„„„„„„16
1) 三极管的放大原理„„„„„„„„„„„„16
2) 多级放大电路原理„„„„„„„„„„„ 17
(3) 元气件的选择„„„„„„„„„„„„„„ 17
2.2.3 振荡电路的设计„„„„„„„„„„„„„„„„ 17
(1) 振荡电路的原理图„„„„„„„„„„„„„17
(2) 振荡电路的工作原理„„„„„„„„„„„„17
(3) 元气件的选择„„„„„„„„„„„„„„„19
2.2.4 整流、滤波电路设计„„„„„„„„„„„„„„ 20
(1) 整流、滤波电路的原理图„„„„„„„„„ 20
(2) 整流、滤波电路的原理„„„„„„„„„„ 20
第3章 软件设计„„„„„„„„„„„„„„„„„„„ 21
3.1 音乐彩灯功能模块„„„„„„„„„„„„„„„ 21
3.2 设计思想及工作原理„„„„„„„„„„„„„„ 21
3.3 流程图„„„„„„„„„„„„„„„„„„„„ 22
3.4 程序清单„„„„„„„„„„„„„„„„„„„ 24
第四章系统调试与分析„„„„„„„„„„„„„„„„ 27
第5章 结束语„„„„„„„„„„„„„„„„„„„„ 28
第6 章 参考文献„„„„„„„„„„„„„„„„„„„ 29
引 言
现代都市夜晚的金碧辉煌、雄伟壮观是和各式各样的彩灯及其规则有序的显示花案分不开的,彩灯不但给人类带来了光明,更带来了温馨和美好。传统的彩灯控制系统实现方法是采用中小规模集成电路和计算机控制等,其主要缺点是体积大、功耗大、成本高、实现起来较麻烦且花案、功能不齐全。
单片机具有集成度高、系统结构简单、控制功能强,使用灵活方便及成本低等优点。在智能仪表、工业控制及语音处理技术等方面取得了令人瞩目的成果,展现出良好的应用前景。
本文以8032单片机为核心,外扩一片8279及辅助电路,构成音乐彩灯同步控制电路。通过软件设计成功地实现了音乐与彩灯同步控制。此外,系统还模拟了录音机各种功能(如暂停、幽左、倒带等) 以实现自动选曲。系统带有一个多功能电子钟显示时间或正在播放的歌曲号并可以校正所显示的时间。比较详细地论述了音乐乐谱数字化编码的方法,如何通过软件设计,用音乐乐谱编码数据控制扬声器. 使其发出与乐谱一致的音乐声。该方案的优点是系统体积小、功耗小、可靠性高、调节灵活、多功能、多花案、使用灵活方便。
第1章 单片机的概述
1.1单片机的产生
1.1.1单片机的定义
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU 、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
单片机也被称为微控制器(Microcontroller ),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU 的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU 集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL 的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。
早期的单片机都是8位或4位的。其中最成功的是INTEL 的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960系列特别是后来的ARM 系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz ,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows 和Linux 操作系统。
单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般
配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC 机和其他计算的综合,甚至比人类的数量还要多。
1.1.2单片机的介绍
单片机又称单片微控制器, 它不是完成某一个逻辑功能的芯片, 而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机内部也用和电脑功能类似的模块,比如CPU ,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可...... 用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、VCD 等等的家电里面都可以看到它的身影!...... 它主要是作为控制部分的核心部件。
它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC )的主要区别。
单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB 板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!
以8051单片机为例讲解单片机的引脚及相关功能;
《单片机引脚图》
40个引脚按引脚功能大致可分为4个种类:电源、时钟、控制和I/O引脚。 ⒈ 电源:
⑴ VCC - 芯片电源,接+5V;
⑵ VSS - 接地端;
注:用万用表测试单片机引脚电压一般为0v 或者5v ,这是标准的TTL 电平。但有时候在单片机程序正在工作时候测试结果并不是这个值而是介于0v-5v 之间,其实这是万用表的响应速度没这么快而已,在某一个瞬间单片机引脚电压仍保持在0v 或者5v 。
⒉ 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊ 控制线:控制线共有4根,
⑴ ALE/PROG:地址锁存允许/片内EPROM 编程脉冲
① ALE功能:用来锁存P0口送出的低8位地址
② PROG功能:片内有EPROM 的芯片,在EPROM 编程期间,此引脚输入编程
脉冲。
⑵ PSEN:外ROM 读选通信号。
⑶ RST/VPD:复位/备用电源。
① RST(Reset )功能:复位信号输入端。
② VPD功能:在Vcc 掉电情况下,接备用电源。
⑷ EA/Vpp:内外ROM 选择/片内EPROM 编程电源。
① EA功能:内外ROM 选择端。
② Vpp功能:片内有EPROM 的芯片,在EPROM 编程期间,施加编程电源Vpp 。
⒋ I/O线
80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)
5. P3口第二功能
P30 RXD 串行输入口
P31 TXD 串行输出口
P32 INT0 外部中断0(低电平有效)
P33 INT1 外部中断1(低电平有效)
P34 T0 定时计数器0
P35 T1 定时计数器1
P36 WR 外部数据存储器写选通(低电平有效)
P37 RD 外部数据存储器读选通(低电平有效)
[编辑本段]常用单片机芯片简介
PIC 单片机:是MICROCHIP 公司的产品, 其突出的特点是体积小, 功耗低, 精简指令
集, 抗干扰性好, 可靠性高, 有较强的模拟接口, 代码保密性好, 大部分芯片有其兼容的FLASH 程序存储器的芯片.
EMC 单片机:是台湾义隆公司的产品, 有很大一部分与PIC 8位单片机兼容, 且相
兼容产品的资源相对比PIC 的多, 价格便宜, 有很多系列可选, 但抗干扰较差.
ATMEL 单片机(51单片机) :ATMEl 公司的8位单片机有AT89、AT90两个系列,AT89系列是8位Flash 单片机, 与8051系列单片机相兼容, 静态时钟模式;AT90系列单片机是增强RISC 结构、全静态工作方式、内载在线可编程Flash 的单片机, 也叫AVR 单片机.
PHLIPIS 51PLC系列单片机(51单片机) :PHILIPS 公司的单片机是基于80C51内核的单片机, 嵌入了掉电检测、模拟以及片内RC 振荡器等功能, 这使51LPC 在高集成度、低成本、低功耗的应用设计中可以满足多方面的性能要求.
HOLTEK 单片机:台湾盛扬半导体的单片机, 价格便宜, 种类较多, 但抗干扰较差, 适用于消费类产品.
TI 公司单片机(51单片机) :德州仪器提供了TMS370和MSP430两大系列通用单片
机.TMS370系列单片机是8位CMOS 单片机, 具有多种存储模式、多种外围接口模式, 适用于复杂的实时控制场合;MSP430系列单片机是一种超低功耗、功能集成度较高的16位低功耗单片机, 特别适用于要求功耗低的场合
由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU ,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K 的尺寸!对于家用PC 的硬盘来讲没什么,可是对于单片机来讲是不能接受的。 单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC 上来运行,家用PC 的也是承受不了的。
可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC 机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在
产品未使用单片机或其它可编程逻辑器件上。
1.1.3单片机的历史
单片机诞生于20世纪70年代末,经历了SCM 、MCU 、SOC 三大阶段。
1.SCM即单片微型计算机(Single Chip Microcomputer )阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。“创新模式”获得成功,奠定了SCM 与通用计算机完全不同的发展道路。在开创嵌入式系统独立发展道路上,Intel 公司功不可没。
2.MCU即微控制器(Micro Controller Unit )阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU 的重任不可避免地落在电气、电子技术厂家。从这一角度来看,Intel 逐渐淡出MCU 的发展也有其客观因素。在发展MCU 方面,最著名的厂家当数Philips 公司。
Philips公司以其在嵌入式应用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel 和Philips 的历史功绩。
3. 单片机是嵌入式系统的独立发展之路,向MCU 阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC 化趋势。随着微电子技术、IC 设计、EDA 工具的发展,基于SoC 的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。
1.2单片机的发展特点
自单片机出现至今,单片机技术已走过了近20年的发展路程。纵观20年来单片机发展历程可以看出,单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出较微处理器更具个性的发展趋势。单片机长寿命 这里所说的长寿命,一方面指用单片机开发的产品可以稳定可靠地工作十年、二十年,另一方面是指与微处理器相比的长寿命。随着半导体技术的飞速发展, MPU更新换代的速度越来越快,以386、486、586为代表的MPU ,很短的时间内就被淘汰出局,而传统的单片机如68HC05、8051等年龄已有15岁,产量仍是上升的。这一方面是由于其对相应应用领域的适应性,另一方面是由于以该类CPU 为核心,集成以更多I/O功能模块的新单片机系列层出不穷。可以预见,一些成功上市的相对年轻的CPU 核心,也会随着I/O功能模块的不断丰富,有着相当长的生存周期。新的CPU 类型的加盟, 使单片机队伍不断壮大, 给用
户带来了更多的选择余地。
8位、16位、32位单片机共同发展 这是当前单片机技术发展的另一动向。长期以来,单片机技术的发展是以8位机为主的。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足发展。以Motorola 68K为CPU 的32位单片机97年的销售量达8千万枚。过去认为由于8位单片机功能越来越强,32位机越来越便宜,使16位单片机生存空间有限,而16位单片机的发展无论从品种和产量方面,近年来都有较大幅度的增长。
单片机速度越来越快 MPU发展中表现出来的速度越来越快是以时钟频率越来越高为标志的。而单片机则有所不同,为提高单片机抗干扰能力,降低噪声,降低时钟频率而不牺牲运算速度是单片机技术发展之追求。一些8051单片机兼容厂商改善了单片机的内部时序,在不提高时钟频率的条件下,使运算速度提高了很多,Motorola 单片机则使用了琐相环技术或内部倍频技术使内部总线速度大大高于时钟产生器的频率。68HC08单片机使用
4.9M 外部振荡器而内部时钟达32M ,而M68K 系列32位单片机使用32K 的外部振荡器频率内部时钟可达16MHz 以上。
低电压与低功耗 自80年代中期以来,NMOS 工艺单片机逐渐被CMOS 工艺代替,功耗得以大幅度下降,随着超大规模集成电路技术由3μm 工艺发展到1.5、1.2、0.8、0.5、0.35近而实现0.2μm 工艺,全静态设计使时钟频率从直流到数十兆任选,都使功耗不断下降。Motorola 最近推出任选的M.CORE 可在1.8V 电压下以50M/48MIPS全速工作,功率约为20mW 。几乎所有的单片机都有Wait 、Stop 等省电运行方式。允许使用的电源电压范围也越来越宽。一般单片机都能在3到6V 范围内工作,对电池供电的单片机不再需要对电源采取稳压措施。低电压供电的单片机电源下限已由2.7V 降至2.2V 、1.8V 。0.9V 供电的单片机已经问世。低噪声与高可靠性技术 为提高单片机系统的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片机商家在单片机内部电路中采取了一些新的技术措施。如美国国家半导体NS 的COP8单片机内部增加了抗EMI 电路,增强了 “看门狗”的性能。Motorola 也推出了低噪声的LN 系列单片机。
OTP与掩膜 OTP是一次性写入的单片机。过去认为一个单片机产品的成熟是以投产掩膜型单片机为标志的。由于掩膜需要一定的生产周期,而OTP 型单片机价格不断下降,使得近年来直接使用OTP 完成最终产品制造更为流行。它较之掩膜具有生产周期短、风险小的特点。近年来,OTP 型单片机需量大幅度上扬,为适应这种需求许多单片机都采用了在片编程技术(In System Programming)。未编程的OTP 芯片可采用裸片Bonding 技术或
表面贴技术,先焊在印刷板上,然后通过单片机上引出的编程线、串行数据、时钟线等对单片机编程。解决了批量写OTP 芯片时容易出现的芯片与写入器接触不好的问题。使OTP 的裸片得以广泛使用,降低了产品的成本。编程线与I/O线共用,不增加单片机的额外引脚。而一些生产厂商推出的单片机不再有掩膜型,全部为有ISP 功能的OTP 。MTP 向OTP 挑战 MTP是可多次编程的意思。一些单片机厂商以MTP 的性能、OTP 的价位推出他们的单片机,如ATMEL AVR 单片机,片内采用FLASH ,可多次编程。华邦公司生产的与8051兼容的单片机也采用了MTP 性能,OTP 的价位。这些单片机都使用了ISP 技术,等安装到印刷线路板上以后再下载程序。
8051类单片机 最早由Intel 公司推出的8051/31类单片机也是世界上用量最大的几种单片机之一。由于Intel 公司在嵌入式应用方面将重点放在186、386、奔腾等与PC 类兼容的、高档芯片的开发上,8051类单片机主要由Philips 、三星、华邦等公司接产。这些公司都在保持与8051单片机兼容的基础上改善了8051许多特性(如时序特性) 。提高了速度、降低了时钟频率,放宽了电源电压的动态范围,降低了产品价格。 1.3单片机的应用领域
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC 卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1. 在智能仪器仪表上的应用
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。 2. 在工业控制中的应用
用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3. 在家用电器中的应用
可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4. 在计算机网络和通信领域中的应用
现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5. 单片机在医用设备领域中的应用
单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 6. 在各种大型电器中的模块化应用
某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应用,而不要求使用人员了解其内部结构。如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。如:音乐信号以数字的形式存于存储器中(类似于ROM ),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。 在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。
7. 单片机在汽车设备领域中的应用
单片机在汽车电子中的应用非常广泛,例如汽车中的发动机控制器,基于CAN 总线的汽车发动机智能电子控制器,RGPS 导航系统,abs 防抱死系统,制动系统等等。
此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。
第2章硬件设计及工作原理
2.1同步控制器的总电路设计 2.1.1控制器的原理图
音乐彩灯同步控制电路如图2.1所示。大致可分为3部分:音频输出接C-I 电路、键盘、显示器。
图2.1音乐彩灯控制器电路图
2.1.2控制器的工作原理
音频输出接口电路由D 触发器、LM386音频功率放大器及扬声器组成。通过8032单片机内部定时器2控制8032的Pi. o r1线卜高低电平的翻转,从而控制D 触发器翻转,使之向功率放大器发送在音频范围内变化的电平信号,经放大后由电容藕合到扬声器,推动扬声器发音。这样,通过控制8032单片机内部定时器2的中断快慢,便可控制D 触发器的翻转频率,从而实现扬声器发音高低的控制。
系统中各种彩灯(包括乐谱灯和节拍灯) 、功能键及数码管显示器都用同一芯片8279
管理。8279是可编程的专用键盘/显示管理芯片,功能很强,与8032接日十分方便,数据线及控制线直接相连,只有8279中断请求输出线IRQ 为高电平有效,需经反相后再接到8032的INTO 脚。本系统中的反相器由与非门7}1LS00构成。
系统中扩展了8个功能键,用以实现系统功能(如正常放音、暂停、快进、快倒、时钟或歌曲号显示等) 。8279的SLo-SLa 为键盘/显示的扫描线,经9^16线译码器79LS15}译码后作键盘的扫描列线(系统中只选用译码输出1'0,用8279的回复线RLo - RL:作键盘的输人Ct 线 (行线) 。8个功能键的键号分别为OOH-r 07H。
系统中的显示部分包括彩灯显示和数码管显示。彩灯显示和数码管显示的工作原理相似,只是在电路的具体连接上略有不同,彩灯显示电路相当于把8段数码管的8个段分开使用,重新排列其位置(如图l 所示) 。电路中用8279扫描线SLo-SL:经译码、驱动后作数码管显示器的扫描日线(位选线) ,同时也作彩灯的行扫描线(接彩灯负极) 。8279的两组数据输出线B 。一Ba}Ao-Aa经驱动后作数码显示器的段选线C 字型控制日线) ,同时也作彩灯的列线(接彩灯正极) 。
本系统巧妙地使用了8279显示RAM 中的3个单元(即0号、! 号、2号单元) ,分别控制低音、中音、高音各音符对应的彩灯。即以每个显示RAM 单元的8位二进制数的第0位至第6位分别控制音符1 ^- 7对应的彩灯((0号单元控制1^}7的彩灯,1号单元控制L}-7的彩灯,2号单元控制1^}7的彩灯。) ,第7位不用。这样,通过控制8279显示RAM 的0号、1号、2号单元中的数据变化,便可达到控制彩灯的目的。 2.2分电路的设计 2.2.1电源设计 (1)电源的原理图
这是一种输出电压连续可调的集成稳压电源,输出电压在1.25-37V 之间连续可调,输出最大电流可达1.5A ,如图2.2, 电路简单,可用于各种小电器供电。
图2.2电源原理图
(2)电源的工作原理
如图1-2,LM317输出电流为1.5A ,输出电压可在1.25-37V 之间连续调节,其输出电压由两只外接电阻R1、RP1决定,输出端和调整端之间的电压差为1.25V ,这个电压将产生几毫安的电流,经R1、RP1到地,在RP1上分得的电压加到调整端,通过改变RP1就能改变输出电压。注意,为了得到稳定的输出电压,流经 R1的电流小于3.5mA 。LM317在不加散热器时最大功耗为2W ,加上200×200×4mm 散热板时其最大功耗可达15W 。VD1为保护二极管,防止稳压器输出端短路而损坏IC ,VD2用于防止输入短路而损坏集成电路。 (3)元气件的选择 元气件如表2-2-1:
表2-2-1 元器件的选择
2.2.2放大电路的设计
(1)放大电路的原理图
图2.3 阻容耦合两级放大电路图
(2)放大电路的工作原理
1) 三极管的放大原理
如图2.4所示,图中为NPN 型三极管共基接法。因为基区很薄,在发射区的电子,少部分与基区的空穴复合多数载流子电子扩散到基区形成正向发射极电流的同时,到达基区的大部分电子迅速扩散到集电结边缘,在反偏集电结的强电场吸引下,漂移过集电结形成集电极电流。显然,流过正偏发射结的电流越大,则流过反偏集电结的电流也越大。如果改变发射结的正偏电压,使发射结电流作相应变化,则集电结的电流也将随之变化。从而实现了电流的控制和放大作用。
图2.4三极管单级放大电路
2)多级放大电路原理
多级放大电路是将单机放大电路连接起来,将前缀的输出信号通过耦合不失真地传到后级的输入端,实现放大作用。
(3)元气件的选择
电阻 20KΩ两个、3K Ω一个、130K Ω一个、620K Ω一个、三极管两个、稳压电源。 2.2.4振荡电路设计
在工程应用中,例如在实验用的低频及高频振荡电路信号产生电路中,往往要求正弦波振荡电路的振荡频率有一定的稳定度,有时要求振荡频率十分稳定,如通讯系统中的射频振荡电路、数字系统的时钟产生电路等。石英晶体振荡电路,就是用石英晶体取代LC 振荡电路中的L 、C 元件所组成的正弦波振荡电路。它的频率稳定度可高达10-9甚至10-11。
(1)振荡电路的原理图
图2.5 石英晶体振荡电路原理图
(2)振荡电路的工作原理
图2.6为图2.5的交流等效电路,其中C16、C17、L05组成的支路相对于三次泛音晶体的基频开路,在晶体的标称频率振荡时可以不考虑。由于振荡器的输出负载和振荡器之间是弱耦合,故也可以忽略不计。晶振工作在串联谐振频率上,且晶振发生串联谐振时,该振荡器电路的正反馈最强,只有这时才能满足振幅条件而使电路起振。一旦晶振工作点偏离串联谐振点,由于晶体的动态电感很大,而R09较小,则等效并联在电 感和晶振两端的电阻较小,大大影响了谐振网络的Q 值,使电路无法工作。
图2.6 交流等效电路
在此电路中,电路进入集电结的饱和区而发生饱和限幅失真,集电极电流因此包含丰富的谐波分量,输出负载网络调谐在振荡回路的二次谐波上(L06和晶振支路相对于二次谐波开路),而有效抑制基波及其余各次谐波。
此种类型的振荡器可以用如图2.7所示的模型描述,即一个线性时不变网络(LTIN )将振荡器电路分成三部分:一个非线性有源器件、一个基波谐振网络和一个二次谐波网络。
图2.7石英晶体振荡器等效电路模型
其中,有源器件的电流-电压转移关系可描述为:
由于除了基波和二次谐波外,其他各次谐波没有可以流通的谐振回路,故为简化起见,分析时仅列出这两项(如上式所示)。在本电路中,二倍频选频回路与基波振荡回路之间属弱耦合,且二次谐波分量对振荡回路电流I 的影响甚小,故U ≈U1。因此, 在分析此电路时,可先忽略二倍频选频回路,仅分析基波谐振回路与有源器件形成的网络回路,求出各
点的基波电压幅度。由于该电路也会出现集电极饱和,因此集电极-基极电压被限幅,然 后由图中基极-发射极电压与集电极各次谐波电流的关系得到集电极二次谐波电流 由此电流与二倍频选频网络组成的回路得出其二次谐波输出电压幅度
图2.8为由交流等效电路图简化后得到的振荡回路中基波回路的交流等效电路图。振荡器的环路增益可近似表示为AL=gmZL(C2/C1),其中ZL 是L 、C1、Y1和C2的并联阻抗,
而Y1为晶体的等效阻抗,则频率稳定度为:
图2.8 振荡器的交流简化图
环路增益的极点有两对共轭解,频率为(式中C 为C1与C2的并联电容),其中频率为ω01的极点位于右半平面,ω02的极点位于左半平面,故频率稳定度为
其中,Q2为晶体的品质因数,Q1为回路的品质因数,Q2 Q1,所以Sf ≈2Q2。由式(2)可知,采用上述振荡电路的频率稳定度极高,即振荡电路的振荡频率很稳定,有利于保证振荡频率的一致性。
调整L 、C1、C2或由于温度等的变化使L 、C1、C2值发生变化时,振荡频率的相对变化率为
式(3)表明:晶体振荡器的频率在由晶振和外部调整网络共同构成的回路中,外部LC 网络的Q 值应该选择得比较低,才有益于晶体振荡器的频率稳定。 (3)元气件的选择
电容C15 1.5pF 、 C201000pF 其他1~000pF 电阻R07 330Ω 、R09 820Ω
三极管一个 、电感线圈三个、石英晶体一个
2.2.5整流、滤波电路的设计 (1)整流、滤波电路原理图
图2.9 整流、滤波电路原理图
(2)整流、滤波电路原理
为了克服半波整流电路电源利用率低,整流电压脉动程度大的缺点,常采用全波整流电路,最常用形式是桥式整流电路,如图2.9。它由四个二极管接成电桥形式,当电压器次级电压为上正下负时,V1、V2二极管导通,V3、V4截止,这时负载RL 上得到一个正弦半波电压,当次级变压器电压为上负下正时,二极管V1和V3反向截止,V2和V4导通,同样,在负载电阻上得到一个正弦半波电压。电压一方面给电容充电,一方面产生负载电流,电容C2上的电压U 同步增长,当U 达到峰值后,开始下降,Uc2>U,二极管截止, 之后电容C2以指数规律经RL 放电,Uc2下降. 当放电都某个值时,U 经负半周后又开始上升, 当U>Uc2电容再次被充电到峰值。Uc2降到某值时,电容C2再次经RL 放电,通过这些周期性的重放电,以达到滤波效果。
第3章软件设计
3.1音乐彩灯功能模块
音乐彩灯同步控制的软件设计采用模块化设计方法,具有可维护性及 可扩充性。
本系统由近20个子程序构成,其总的功能模块如图3.1
所示。
图3.1音乐彩灯功能模块图
3. 2设计思想及工作原理
要将音乐乐谱转换成对应的音乐声,并使彩灯显示与音乐同步,必须先将乐谱进行
数字化编码。根据音阶与频率的关系,音调与频率的关系及音符节拍数计算出音乐乐谱编
码数据,存在内存贮器中供放音时取用。
为便于程序判别,本系统按下列方法将乐谱数字化。每个音符用2个8位二进制数
表示,其中1个8位二进制数用来表示音符本身及其音调的高低,如D7 Ds Ds Da Ds Dz
Di Do 高4位D}-rD;的取值为OOOOB,OOOlB,0010B 分别表示该音符为低音、中音、高音。低4位
的取值OOOLB-rO11 1B,表示音符1 ^} 7之一。另一个8位二进制数表示该音符对应的节拍数。以1/4拍为基准,1/9拍的编码为O1H,1/2拍的编码为02H, 1拍的编码为O}IH, 2拍的编码为08H ,依此类推,可以求出任意节拍的编码。除对音符,节拍进行数字化编码外,还需将乐谱的音调数字化,音调C}D}E}F}G }A}B分别用数字OOH-- 06H表示。音调编码数据存放在音符编码数据之前。另外,用FFH 表示乐谱的开始,存放在音调编码数据前,用OOH 表示乐谱的结束,存放在整篇乐谱的编码数据之后。这样,用起始和结束码括起来的就是整个乐曲完整的编码数据。将这些数据存放在存贮器中供调用。
放音时,首先取出音符的第}个8位二进制编码数据,截取低4位得到音符编码数据,截取高9位得到表示该音符音调高低的编码数据,通过计算可求出该音符对应的时间常数在时间常数表中(时间常数表由21个时间常数组成,其排列顺序为低音1的时间常数一高音7的时间常数。) 的位置,从该位置取出时间常数送8032定时器2的装载寄存器,可以控制定时器2的中断频率,从而间接控制D 触发器翻转频率,使扬声器发音的高低与音符音调的高低一致。接着取出第2个8位二进制编码数据(节拍编码) ,用来控制调用基准延时程序(其延时时间为1/4拍) 的次数,从而控制音符发音的长短,这样使扬声器发出与乐谱一致的音乐声。
要实现彩灯和音乐的同步控制,必须在控制发音后,立即控制彩灯。即在分离出音符
码和表示该音符音调高低的数码后,经过适当处理(见彩灯模块流程图及其说明部分) ,得到1个8位二进制数据,该数据中代表该音符的位为“1" ,其余各位为“0" ,根据表示该音符音调高低的数据码OOOOB 或OOOIB 或OOIOB ,把这个8位二进制数送到8279显示RAM 的“0”号单元或uln 号单元或“2”号单元,而显示RAM 的另外两个单元送“0" ,这样便点亮了与音符对应的彩灯,熄灭其它彩灯,实现彩灯与音乐同步控制,即彩灯亮与音符同步进行。
3. 3流程图
图3.2为彩灯控制模块程序的流程图。其执行过程是:取出音符的第}个8位二进制编码数据,分离出高4位和低4位,分别送Rs 和R4暂存,然后将数据OlH 左移,移位次数为R, 内
3.2彩灯控制模块程序流程图
容减1, 得到1个新的二进制数据. 该数据中与所取音符对应的位为“l ”,其余各位为
“0" ,将该数据送回R4暂存。在熄灭所有彩灯(8279显示RAM 的“0”号、ul ”号、u2”号单元都清u } rf)后,用数80H 加_)"_ Rs的内容得到写8279显示RAM 的“0”号或"1”号或“2”号单元的命令,将该命令送8279命令日,再将R ‘的内容送827,数据口,这样便点亮对应彩灯。
图3.3为音乐控制模块程序流程图。其执行过程是:取音符的第1个8位二进制编码
数据暂存于R; 中,截取其高4位暂存于Rs ,数据OOH 加上若干个(由Rs 的内容决定) 立即数07H ,再加上音符码(R‘低4位) ,再加上乐谱音调编码数据便得到该音符所对应的时间常数在时间常数表中的序号,将该序号乘以2可得到所取音符的时间常数在时间常数表中的位置。
使指针DPTR 指向时间常数表首地,用查表指令可得到相应的时间常数并送人定时器
2,这样扬声器便可以发出对应的音乐声。
图3.3音乐控制器模块程序流程图
本系统经调试效果良好,全部功能均已实现。如果系统选用性能优良的可编程固化
语音集成电路MSSI061,由单片机控制提取MSSI061中固化语言内容,将进一步拓宽单片机的应用范围,为实际应用开辟新的途径。
3.4程序清单
程序如下:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY CDKZ IS
PORT(CLK,CLR:IN STD_LOGIC; --时钟和复位--
COUT:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); --输出--
END;
ARCHITECTURE BVE OF CDKZ IS
TYPE STATE_DDRAM IS --定义状态机--
(READY, ONE, TWO, THREE, FOUR, FIVE, SIX);
SIGNAL STATE,NEXT_STATE:STATE_DDRAM;
SIGNAL CNT8:STD_LOGIC_VECTOR(5 DOWNTO 0); --计数信号---
SIGNAL C_T:STD_LOGIC_VECTOR(7 DOWNTO 0);
BEGIN
P1:PROCESS(CLR,CLK)
BEGIN
IF CLR='1' THEN STATE
ELSIF CLK'EVENT AND CLK='1' THEN
STATE
上升沿加1---
END IF;
END PROCESS P1;
STATE_COM:PROCESS(STATE,NEXT_STATE,CNT8)---状态机的转向---
BEGIN
CASE STATE IS
WHEN READY=>NEXT_STATE
WHEN ONE=>NEXT_STATE
IF CNT8
WHEN TWO=>NEXT_STATE
IF (CNT8>"000111")AND(CNT8
全灭--
WHEN THREE=>NEXT_STATE
IF CNT8="010000" THEN C_T
IF CNT8="010001" THEN C_T
IF CNT8="010010" THEN C_T
IF CNT8="010011" THEN C_T
IF CNT8="010100" THEN C_T
IF CNT8="010101" THEN C_T
IF CNT8="010110" THEN C_T
IF CNT8="010111" THEN C_T
亮---
WHEN FOUR=>NEXT_STATE
IF CNT8="011000" THEN C_T
IF CNT8="011001" THEN C_T
IF CNT8="011010" THEN C_T
IF CNT8="011011" THEN C_T
IF CNT8="011100" THEN C_T
IF CNT8="011101" THEN C_T
IF CNT8="011110" THEN C_T
IF CNT8="011111" THEN C_T
灭--
WHEN FIVE=>NEXT_STATE
IF(CNT8>"011111")AND(CNT8
灭,右四个亮--
WHEN SIX=>NEXT_STATE
IF(CNT8>"100111")AND(CNT8
亮,右四个灭--
WHEN OTHERS=>NEXT_STATE
END CASE;
END PROCESS STATE_COM;
COUT
END;
第4章系统调试与分析
音乐彩灯的彩灯部分的设计可以用单片机控制电路,也也可以用PLC 。在想到利用8032单片机的同时,也想到利用PLC 可编程控制器,三菱FX2N-48MR 可编程控制器进行彩灯循环点亮的PLC 控制的编程。
PLC 是可编程逻辑控制器的英文缩写,价格高,体积相对较大,但功能丰富,可实现各种复杂的控制,运行可靠,可以适应各种恶劣的环境,目前广泛代替了传统的继电器控制方式,在工业生产上应用广泛。
单片机是单芯片电子计算机的简称,也可以实现自动控制,与PLC 相比,它的特点是体积小、价格低(只要十几块甚至几块钱就能买到一片,而PLC 动辄上千甚至更贵),但对运行环境的要求较高。
最后从价格方面考虑还是使用8032。
在电路组装过程中,遇到的最大问题是,起初考虑不周全,芯片分布不够合理,出现了许多" 特长线" 。不但影响布线速度,而且也会给后来的调试带来不必要的麻烦。当时已经布线不少,不可能重新开始,再三权衡,最后只移动了一个芯片,问题就得到了很大改善。其次就是布线,因为要求不准交叉,且横平竖直,所以在保证连通的情况下,在布线上也下了不少工夫。
调试过程中,第一轮用万用表欧姆档测试,就遇了实验板上有插孔不通的情况,导致
芯片不能正常工作。相对于别的办法,我选择了导线显式连通,因为其更明晰,更易实现。对于高阻导线则只能换掉。第二轮接电后,用万用表的电压档测试单元电路的状态。如:时钟信号电路的信号是否正常产生,控制信号电路中的计数器能否正常计数,„„最后在整体上测试一遍。
在整个调试完成后,却遇到的新问题:彩灯演示时有时正常有时混乱。在排除其它可
能的情况下,我仔细检查各端子的连接情况,发现清"0" 端在清"0" 后悬空了。将其插到电源正极后,发现问题解决了。
第5章结束语
踉踉跄跄地忙碌了几个月,我的毕业设计课题也终将告一段落。通过这一阶段的毕业设计,我受益匪浅,不仅锻炼了良好的逻辑思维能力,而且培养了弃而不舍的求学精神和严谨作风。回顾此次毕业设计,是大学两年所学知识很好的总结。点击运行,也基本达到预期的效果,虚荣的成就感在没人的时候也总会冒上心头。但由于能力和时间的关系,总是觉得有很多不尽人意的地方,譬如功能不全、外观粗糙„„可是,我又会有点自恋式地安慰自己:做一件事情,不必过于在乎最终的结果,可贵的是过程中的收获。
毕业设计,也许是我大学生涯交上的最后一个作业了。想籍次机会感谢两年以来给我帮助的所有老师、同学,你们的友谊是我人生的财富,是我生命中不可或缺的一部分。我的毕业指导老师李景魁老师,他严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;他循循善诱的教导和不拘一格的思路给予我无尽的启迪。感谢李老师,这篇毕业设计的每个实验细节和每个数据,都离不开你的细心指导。同样我也要衷心的感谢教育过和指导过我的各位老师,感谢给予我帮助的朋友们,谨献上我最真挚的祝福。
大学生活即将匆匆忙忙地过去,但我却能无悔地说:“我曾经来过。”大学两三年,但
它给我的影响却不能用时间来衡量,这两年以来,经历过的所有事,所有人,都将是我以后生活回味的一部分,是我为人处事的指南针。就要离开学校,走上工作的岗位了,这是我人生历程的又一个起点,在这里祝福大学里跟我风雨同舟的朋友们,一路走好,未来总会是绚烂缤纷。
第6 章参考文献
1 何立民.MCS- 51系列应用系统设计. 北京:航空航天大学出版社,1990. 199---1602
2 陈建铎,黄秀成,耿德根.DVCC-51单片单板机实验与开发应用指导. 西安:陕西科学出版 社,1990. 8}-v86
3 Ferking M E著. 晶体振荡器设计与温度补尝. 杜丽冰,詹汉强译. 北京:人民邮电出版社,1985
毕业设计说明书
设计题目 音乐彩灯控制器
学 号
姓 名
班 级
专 业
系 部
指导老师
完成时间 2009 年 7 月 20 日至 2009 年 10 月 11日
目 录
引言„„„„„„„„„„„„„„„„„„„„„„„„„ 3
第1章 单片机的概述„„„„„„„„„„„„„„„„„„4
1.1 单片机的产生„„„„„„„„„„„„„„„„„„ 4
1.1.1 单片机的定义„„„„„„„„„„„„„„„„„„ 4
1.1.2 单片机的介绍„„„„„„„„„„„„„„„„„„ 5
1.1.3 单片机的历史„„„„„„„„„„„„„„„„„„ 8
1.2 单片机的发展特点„„„„„„„„„„„„„„„„ 8
1.3 单片机的应用领域„„„„„„„„„„„„„„„„ 10
第2章 音乐彩灯的硬件设计及工作原理„„„„„„„„„ 13
2.1 同步控制器总电路的设计„„„„„„„„„„„„„ 13
2.1.1 控制器的原理图„„„„„„„„„„„„„„„„„ 13
2.1.2 控制器的的工作原理„„„„„„„„„„„„„„„ 13
2.2 分电路的设计„„„„„„„„„„„„„„„„„„ 14
2.2.1 电源的设计„„„„„„„„„„„„„„„„„„„ 14
(1)电源的原理图„„„„„„„„„„„„„„„„ 14
(2)电源的工作原理„„„„„„„„„„„„„„„ 15
(3) 元气件的选择„„„„„„„„„„„„„„„„15
2.2.2 放大电路的设计„„„„„„„„„„„„„„„„„16
(1) 放大电路的原理„„„„„„„„„„„„„„„16
(2) 放大电路的工作原理„„„„„„„„„„„„„16
1) 三极管的放大原理„„„„„„„„„„„„16
2) 多级放大电路原理„„„„„„„„„„„ 17
(3) 元气件的选择„„„„„„„„„„„„„„ 17
2.2.3 振荡电路的设计„„„„„„„„„„„„„„„„ 17
(1) 振荡电路的原理图„„„„„„„„„„„„„17
(2) 振荡电路的工作原理„„„„„„„„„„„„17
(3) 元气件的选择„„„„„„„„„„„„„„„19
2.2.4 整流、滤波电路设计„„„„„„„„„„„„„„ 20
(1) 整流、滤波电路的原理图„„„„„„„„„ 20
(2) 整流、滤波电路的原理„„„„„„„„„„ 20
第3章 软件设计„„„„„„„„„„„„„„„„„„„ 21
3.1 音乐彩灯功能模块„„„„„„„„„„„„„„„ 21
3.2 设计思想及工作原理„„„„„„„„„„„„„„ 21
3.3 流程图„„„„„„„„„„„„„„„„„„„„ 22
3.4 程序清单„„„„„„„„„„„„„„„„„„„ 24
第四章系统调试与分析„„„„„„„„„„„„„„„„ 27
第5章 结束语„„„„„„„„„„„„„„„„„„„„ 28
第6 章 参考文献„„„„„„„„„„„„„„„„„„„ 29
引 言
现代都市夜晚的金碧辉煌、雄伟壮观是和各式各样的彩灯及其规则有序的显示花案分不开的,彩灯不但给人类带来了光明,更带来了温馨和美好。传统的彩灯控制系统实现方法是采用中小规模集成电路和计算机控制等,其主要缺点是体积大、功耗大、成本高、实现起来较麻烦且花案、功能不齐全。
单片机具有集成度高、系统结构简单、控制功能强,使用灵活方便及成本低等优点。在智能仪表、工业控制及语音处理技术等方面取得了令人瞩目的成果,展现出良好的应用前景。
本文以8032单片机为核心,外扩一片8279及辅助电路,构成音乐彩灯同步控制电路。通过软件设计成功地实现了音乐与彩灯同步控制。此外,系统还模拟了录音机各种功能(如暂停、幽左、倒带等) 以实现自动选曲。系统带有一个多功能电子钟显示时间或正在播放的歌曲号并可以校正所显示的时间。比较详细地论述了音乐乐谱数字化编码的方法,如何通过软件设计,用音乐乐谱编码数据控制扬声器. 使其发出与乐谱一致的音乐声。该方案的优点是系统体积小、功耗小、可靠性高、调节灵活、多功能、多花案、使用灵活方便。
第1章 单片机的概述
1.1单片机的产生
1.1.1单片机的定义
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU 、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
单片机也被称为微控制器(Microcontroller ),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU 的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU 集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL 的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。
早期的单片机都是8位或4位的。其中最成功的是INTEL 的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960系列特别是后来的ARM 系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz ,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows 和Linux 操作系统。
单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般
配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC 机和其他计算的综合,甚至比人类的数量还要多。
1.1.2单片机的介绍
单片机又称单片微控制器, 它不是完成某一个逻辑功能的芯片, 而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机内部也用和电脑功能类似的模块,比如CPU ,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可...... 用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、VCD 等等的家电里面都可以看到它的身影!...... 它主要是作为控制部分的核心部件。
它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC )的主要区别。
单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB 板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!
以8051单片机为例讲解单片机的引脚及相关功能;
《单片机引脚图》
40个引脚按引脚功能大致可分为4个种类:电源、时钟、控制和I/O引脚。 ⒈ 电源:
⑴ VCC - 芯片电源,接+5V;
⑵ VSS - 接地端;
注:用万用表测试单片机引脚电压一般为0v 或者5v ,这是标准的TTL 电平。但有时候在单片机程序正在工作时候测试结果并不是这个值而是介于0v-5v 之间,其实这是万用表的响应速度没这么快而已,在某一个瞬间单片机引脚电压仍保持在0v 或者5v 。
⒉ 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊ 控制线:控制线共有4根,
⑴ ALE/PROG:地址锁存允许/片内EPROM 编程脉冲
① ALE功能:用来锁存P0口送出的低8位地址
② PROG功能:片内有EPROM 的芯片,在EPROM 编程期间,此引脚输入编程
脉冲。
⑵ PSEN:外ROM 读选通信号。
⑶ RST/VPD:复位/备用电源。
① RST(Reset )功能:复位信号输入端。
② VPD功能:在Vcc 掉电情况下,接备用电源。
⑷ EA/Vpp:内外ROM 选择/片内EPROM 编程电源。
① EA功能:内外ROM 选择端。
② Vpp功能:片内有EPROM 的芯片,在EPROM 编程期间,施加编程电源Vpp 。
⒋ I/O线
80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)
5. P3口第二功能
P30 RXD 串行输入口
P31 TXD 串行输出口
P32 INT0 外部中断0(低电平有效)
P33 INT1 外部中断1(低电平有效)
P34 T0 定时计数器0
P35 T1 定时计数器1
P36 WR 外部数据存储器写选通(低电平有效)
P37 RD 外部数据存储器读选通(低电平有效)
[编辑本段]常用单片机芯片简介
PIC 单片机:是MICROCHIP 公司的产品, 其突出的特点是体积小, 功耗低, 精简指令
集, 抗干扰性好, 可靠性高, 有较强的模拟接口, 代码保密性好, 大部分芯片有其兼容的FLASH 程序存储器的芯片.
EMC 单片机:是台湾义隆公司的产品, 有很大一部分与PIC 8位单片机兼容, 且相
兼容产品的资源相对比PIC 的多, 价格便宜, 有很多系列可选, 但抗干扰较差.
ATMEL 单片机(51单片机) :ATMEl 公司的8位单片机有AT89、AT90两个系列,AT89系列是8位Flash 单片机, 与8051系列单片机相兼容, 静态时钟模式;AT90系列单片机是增强RISC 结构、全静态工作方式、内载在线可编程Flash 的单片机, 也叫AVR 单片机.
PHLIPIS 51PLC系列单片机(51单片机) :PHILIPS 公司的单片机是基于80C51内核的单片机, 嵌入了掉电检测、模拟以及片内RC 振荡器等功能, 这使51LPC 在高集成度、低成本、低功耗的应用设计中可以满足多方面的性能要求.
HOLTEK 单片机:台湾盛扬半导体的单片机, 价格便宜, 种类较多, 但抗干扰较差, 适用于消费类产品.
TI 公司单片机(51单片机) :德州仪器提供了TMS370和MSP430两大系列通用单片
机.TMS370系列单片机是8位CMOS 单片机, 具有多种存储模式、多种外围接口模式, 适用于复杂的实时控制场合;MSP430系列单片机是一种超低功耗、功能集成度较高的16位低功耗单片机, 特别适用于要求功耗低的场合
由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU ,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K 的尺寸!对于家用PC 的硬盘来讲没什么,可是对于单片机来讲是不能接受的。 单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC 上来运行,家用PC 的也是承受不了的。
可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC 机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在
产品未使用单片机或其它可编程逻辑器件上。
1.1.3单片机的历史
单片机诞生于20世纪70年代末,经历了SCM 、MCU 、SOC 三大阶段。
1.SCM即单片微型计算机(Single Chip Microcomputer )阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。“创新模式”获得成功,奠定了SCM 与通用计算机完全不同的发展道路。在开创嵌入式系统独立发展道路上,Intel 公司功不可没。
2.MCU即微控制器(Micro Controller Unit )阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU 的重任不可避免地落在电气、电子技术厂家。从这一角度来看,Intel 逐渐淡出MCU 的发展也有其客观因素。在发展MCU 方面,最著名的厂家当数Philips 公司。
Philips公司以其在嵌入式应用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel 和Philips 的历史功绩。
3. 单片机是嵌入式系统的独立发展之路,向MCU 阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC 化趋势。随着微电子技术、IC 设计、EDA 工具的发展,基于SoC 的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。
1.2单片机的发展特点
自单片机出现至今,单片机技术已走过了近20年的发展路程。纵观20年来单片机发展历程可以看出,单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出较微处理器更具个性的发展趋势。单片机长寿命 这里所说的长寿命,一方面指用单片机开发的产品可以稳定可靠地工作十年、二十年,另一方面是指与微处理器相比的长寿命。随着半导体技术的飞速发展, MPU更新换代的速度越来越快,以386、486、586为代表的MPU ,很短的时间内就被淘汰出局,而传统的单片机如68HC05、8051等年龄已有15岁,产量仍是上升的。这一方面是由于其对相应应用领域的适应性,另一方面是由于以该类CPU 为核心,集成以更多I/O功能模块的新单片机系列层出不穷。可以预见,一些成功上市的相对年轻的CPU 核心,也会随着I/O功能模块的不断丰富,有着相当长的生存周期。新的CPU 类型的加盟, 使单片机队伍不断壮大, 给用
户带来了更多的选择余地。
8位、16位、32位单片机共同发展 这是当前单片机技术发展的另一动向。长期以来,单片机技术的发展是以8位机为主的。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足发展。以Motorola 68K为CPU 的32位单片机97年的销售量达8千万枚。过去认为由于8位单片机功能越来越强,32位机越来越便宜,使16位单片机生存空间有限,而16位单片机的发展无论从品种和产量方面,近年来都有较大幅度的增长。
单片机速度越来越快 MPU发展中表现出来的速度越来越快是以时钟频率越来越高为标志的。而单片机则有所不同,为提高单片机抗干扰能力,降低噪声,降低时钟频率而不牺牲运算速度是单片机技术发展之追求。一些8051单片机兼容厂商改善了单片机的内部时序,在不提高时钟频率的条件下,使运算速度提高了很多,Motorola 单片机则使用了琐相环技术或内部倍频技术使内部总线速度大大高于时钟产生器的频率。68HC08单片机使用
4.9M 外部振荡器而内部时钟达32M ,而M68K 系列32位单片机使用32K 的外部振荡器频率内部时钟可达16MHz 以上。
低电压与低功耗 自80年代中期以来,NMOS 工艺单片机逐渐被CMOS 工艺代替,功耗得以大幅度下降,随着超大规模集成电路技术由3μm 工艺发展到1.5、1.2、0.8、0.5、0.35近而实现0.2μm 工艺,全静态设计使时钟频率从直流到数十兆任选,都使功耗不断下降。Motorola 最近推出任选的M.CORE 可在1.8V 电压下以50M/48MIPS全速工作,功率约为20mW 。几乎所有的单片机都有Wait 、Stop 等省电运行方式。允许使用的电源电压范围也越来越宽。一般单片机都能在3到6V 范围内工作,对电池供电的单片机不再需要对电源采取稳压措施。低电压供电的单片机电源下限已由2.7V 降至2.2V 、1.8V 。0.9V 供电的单片机已经问世。低噪声与高可靠性技术 为提高单片机系统的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片机商家在单片机内部电路中采取了一些新的技术措施。如美国国家半导体NS 的COP8单片机内部增加了抗EMI 电路,增强了 “看门狗”的性能。Motorola 也推出了低噪声的LN 系列单片机。
OTP与掩膜 OTP是一次性写入的单片机。过去认为一个单片机产品的成熟是以投产掩膜型单片机为标志的。由于掩膜需要一定的生产周期,而OTP 型单片机价格不断下降,使得近年来直接使用OTP 完成最终产品制造更为流行。它较之掩膜具有生产周期短、风险小的特点。近年来,OTP 型单片机需量大幅度上扬,为适应这种需求许多单片机都采用了在片编程技术(In System Programming)。未编程的OTP 芯片可采用裸片Bonding 技术或
表面贴技术,先焊在印刷板上,然后通过单片机上引出的编程线、串行数据、时钟线等对单片机编程。解决了批量写OTP 芯片时容易出现的芯片与写入器接触不好的问题。使OTP 的裸片得以广泛使用,降低了产品的成本。编程线与I/O线共用,不增加单片机的额外引脚。而一些生产厂商推出的单片机不再有掩膜型,全部为有ISP 功能的OTP 。MTP 向OTP 挑战 MTP是可多次编程的意思。一些单片机厂商以MTP 的性能、OTP 的价位推出他们的单片机,如ATMEL AVR 单片机,片内采用FLASH ,可多次编程。华邦公司生产的与8051兼容的单片机也采用了MTP 性能,OTP 的价位。这些单片机都使用了ISP 技术,等安装到印刷线路板上以后再下载程序。
8051类单片机 最早由Intel 公司推出的8051/31类单片机也是世界上用量最大的几种单片机之一。由于Intel 公司在嵌入式应用方面将重点放在186、386、奔腾等与PC 类兼容的、高档芯片的开发上,8051类单片机主要由Philips 、三星、华邦等公司接产。这些公司都在保持与8051单片机兼容的基础上改善了8051许多特性(如时序特性) 。提高了速度、降低了时钟频率,放宽了电源电压的动态范围,降低了产品价格。 1.3单片机的应用领域
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC 卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1. 在智能仪器仪表上的应用
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。 2. 在工业控制中的应用
用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3. 在家用电器中的应用
可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4. 在计算机网络和通信领域中的应用
现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5. 单片机在医用设备领域中的应用
单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 6. 在各种大型电器中的模块化应用
某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应用,而不要求使用人员了解其内部结构。如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。如:音乐信号以数字的形式存于存储器中(类似于ROM ),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。 在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。
7. 单片机在汽车设备领域中的应用
单片机在汽车电子中的应用非常广泛,例如汽车中的发动机控制器,基于CAN 总线的汽车发动机智能电子控制器,RGPS 导航系统,abs 防抱死系统,制动系统等等。
此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。
第2章硬件设计及工作原理
2.1同步控制器的总电路设计 2.1.1控制器的原理图
音乐彩灯同步控制电路如图2.1所示。大致可分为3部分:音频输出接C-I 电路、键盘、显示器。
图2.1音乐彩灯控制器电路图
2.1.2控制器的工作原理
音频输出接口电路由D 触发器、LM386音频功率放大器及扬声器组成。通过8032单片机内部定时器2控制8032的Pi. o r1线卜高低电平的翻转,从而控制D 触发器翻转,使之向功率放大器发送在音频范围内变化的电平信号,经放大后由电容藕合到扬声器,推动扬声器发音。这样,通过控制8032单片机内部定时器2的中断快慢,便可控制D 触发器的翻转频率,从而实现扬声器发音高低的控制。
系统中各种彩灯(包括乐谱灯和节拍灯) 、功能键及数码管显示器都用同一芯片8279
管理。8279是可编程的专用键盘/显示管理芯片,功能很强,与8032接日十分方便,数据线及控制线直接相连,只有8279中断请求输出线IRQ 为高电平有效,需经反相后再接到8032的INTO 脚。本系统中的反相器由与非门7}1LS00构成。
系统中扩展了8个功能键,用以实现系统功能(如正常放音、暂停、快进、快倒、时钟或歌曲号显示等) 。8279的SLo-SLa 为键盘/显示的扫描线,经9^16线译码器79LS15}译码后作键盘的扫描列线(系统中只选用译码输出1'0,用8279的回复线RLo - RL:作键盘的输人Ct 线 (行线) 。8个功能键的键号分别为OOH-r 07H。
系统中的显示部分包括彩灯显示和数码管显示。彩灯显示和数码管显示的工作原理相似,只是在电路的具体连接上略有不同,彩灯显示电路相当于把8段数码管的8个段分开使用,重新排列其位置(如图l 所示) 。电路中用8279扫描线SLo-SL:经译码、驱动后作数码管显示器的扫描日线(位选线) ,同时也作彩灯的行扫描线(接彩灯负极) 。8279的两组数据输出线B 。一Ba}Ao-Aa经驱动后作数码显示器的段选线C 字型控制日线) ,同时也作彩灯的列线(接彩灯正极) 。
本系统巧妙地使用了8279显示RAM 中的3个单元(即0号、! 号、2号单元) ,分别控制低音、中音、高音各音符对应的彩灯。即以每个显示RAM 单元的8位二进制数的第0位至第6位分别控制音符1 ^- 7对应的彩灯((0号单元控制1^}7的彩灯,1号单元控制L}-7的彩灯,2号单元控制1^}7的彩灯。) ,第7位不用。这样,通过控制8279显示RAM 的0号、1号、2号单元中的数据变化,便可达到控制彩灯的目的。 2.2分电路的设计 2.2.1电源设计 (1)电源的原理图
这是一种输出电压连续可调的集成稳压电源,输出电压在1.25-37V 之间连续可调,输出最大电流可达1.5A ,如图2.2, 电路简单,可用于各种小电器供电。
图2.2电源原理图
(2)电源的工作原理
如图1-2,LM317输出电流为1.5A ,输出电压可在1.25-37V 之间连续调节,其输出电压由两只外接电阻R1、RP1决定,输出端和调整端之间的电压差为1.25V ,这个电压将产生几毫安的电流,经R1、RP1到地,在RP1上分得的电压加到调整端,通过改变RP1就能改变输出电压。注意,为了得到稳定的输出电压,流经 R1的电流小于3.5mA 。LM317在不加散热器时最大功耗为2W ,加上200×200×4mm 散热板时其最大功耗可达15W 。VD1为保护二极管,防止稳压器输出端短路而损坏IC ,VD2用于防止输入短路而损坏集成电路。 (3)元气件的选择 元气件如表2-2-1:
表2-2-1 元器件的选择
2.2.2放大电路的设计
(1)放大电路的原理图
图2.3 阻容耦合两级放大电路图
(2)放大电路的工作原理
1) 三极管的放大原理
如图2.4所示,图中为NPN 型三极管共基接法。因为基区很薄,在发射区的电子,少部分与基区的空穴复合多数载流子电子扩散到基区形成正向发射极电流的同时,到达基区的大部分电子迅速扩散到集电结边缘,在反偏集电结的强电场吸引下,漂移过集电结形成集电极电流。显然,流过正偏发射结的电流越大,则流过反偏集电结的电流也越大。如果改变发射结的正偏电压,使发射结电流作相应变化,则集电结的电流也将随之变化。从而实现了电流的控制和放大作用。
图2.4三极管单级放大电路
2)多级放大电路原理
多级放大电路是将单机放大电路连接起来,将前缀的输出信号通过耦合不失真地传到后级的输入端,实现放大作用。
(3)元气件的选择
电阻 20KΩ两个、3K Ω一个、130K Ω一个、620K Ω一个、三极管两个、稳压电源。 2.2.4振荡电路设计
在工程应用中,例如在实验用的低频及高频振荡电路信号产生电路中,往往要求正弦波振荡电路的振荡频率有一定的稳定度,有时要求振荡频率十分稳定,如通讯系统中的射频振荡电路、数字系统的时钟产生电路等。石英晶体振荡电路,就是用石英晶体取代LC 振荡电路中的L 、C 元件所组成的正弦波振荡电路。它的频率稳定度可高达10-9甚至10-11。
(1)振荡电路的原理图
图2.5 石英晶体振荡电路原理图
(2)振荡电路的工作原理
图2.6为图2.5的交流等效电路,其中C16、C17、L05组成的支路相对于三次泛音晶体的基频开路,在晶体的标称频率振荡时可以不考虑。由于振荡器的输出负载和振荡器之间是弱耦合,故也可以忽略不计。晶振工作在串联谐振频率上,且晶振发生串联谐振时,该振荡器电路的正反馈最强,只有这时才能满足振幅条件而使电路起振。一旦晶振工作点偏离串联谐振点,由于晶体的动态电感很大,而R09较小,则等效并联在电 感和晶振两端的电阻较小,大大影响了谐振网络的Q 值,使电路无法工作。
图2.6 交流等效电路
在此电路中,电路进入集电结的饱和区而发生饱和限幅失真,集电极电流因此包含丰富的谐波分量,输出负载网络调谐在振荡回路的二次谐波上(L06和晶振支路相对于二次谐波开路),而有效抑制基波及其余各次谐波。
此种类型的振荡器可以用如图2.7所示的模型描述,即一个线性时不变网络(LTIN )将振荡器电路分成三部分:一个非线性有源器件、一个基波谐振网络和一个二次谐波网络。
图2.7石英晶体振荡器等效电路模型
其中,有源器件的电流-电压转移关系可描述为:
由于除了基波和二次谐波外,其他各次谐波没有可以流通的谐振回路,故为简化起见,分析时仅列出这两项(如上式所示)。在本电路中,二倍频选频回路与基波振荡回路之间属弱耦合,且二次谐波分量对振荡回路电流I 的影响甚小,故U ≈U1。因此, 在分析此电路时,可先忽略二倍频选频回路,仅分析基波谐振回路与有源器件形成的网络回路,求出各
点的基波电压幅度。由于该电路也会出现集电极饱和,因此集电极-基极电压被限幅,然 后由图中基极-发射极电压与集电极各次谐波电流的关系得到集电极二次谐波电流 由此电流与二倍频选频网络组成的回路得出其二次谐波输出电压幅度
图2.8为由交流等效电路图简化后得到的振荡回路中基波回路的交流等效电路图。振荡器的环路增益可近似表示为AL=gmZL(C2/C1),其中ZL 是L 、C1、Y1和C2的并联阻抗,
而Y1为晶体的等效阻抗,则频率稳定度为:
图2.8 振荡器的交流简化图
环路增益的极点有两对共轭解,频率为(式中C 为C1与C2的并联电容),其中频率为ω01的极点位于右半平面,ω02的极点位于左半平面,故频率稳定度为
其中,Q2为晶体的品质因数,Q1为回路的品质因数,Q2 Q1,所以Sf ≈2Q2。由式(2)可知,采用上述振荡电路的频率稳定度极高,即振荡电路的振荡频率很稳定,有利于保证振荡频率的一致性。
调整L 、C1、C2或由于温度等的变化使L 、C1、C2值发生变化时,振荡频率的相对变化率为
式(3)表明:晶体振荡器的频率在由晶振和外部调整网络共同构成的回路中,外部LC 网络的Q 值应该选择得比较低,才有益于晶体振荡器的频率稳定。 (3)元气件的选择
电容C15 1.5pF 、 C201000pF 其他1~000pF 电阻R07 330Ω 、R09 820Ω
三极管一个 、电感线圈三个、石英晶体一个
2.2.5整流、滤波电路的设计 (1)整流、滤波电路原理图
图2.9 整流、滤波电路原理图
(2)整流、滤波电路原理
为了克服半波整流电路电源利用率低,整流电压脉动程度大的缺点,常采用全波整流电路,最常用形式是桥式整流电路,如图2.9。它由四个二极管接成电桥形式,当电压器次级电压为上正下负时,V1、V2二极管导通,V3、V4截止,这时负载RL 上得到一个正弦半波电压,当次级变压器电压为上负下正时,二极管V1和V3反向截止,V2和V4导通,同样,在负载电阻上得到一个正弦半波电压。电压一方面给电容充电,一方面产生负载电流,电容C2上的电压U 同步增长,当U 达到峰值后,开始下降,Uc2>U,二极管截止, 之后电容C2以指数规律经RL 放电,Uc2下降. 当放电都某个值时,U 经负半周后又开始上升, 当U>Uc2电容再次被充电到峰值。Uc2降到某值时,电容C2再次经RL 放电,通过这些周期性的重放电,以达到滤波效果。
第3章软件设计
3.1音乐彩灯功能模块
音乐彩灯同步控制的软件设计采用模块化设计方法,具有可维护性及 可扩充性。
本系统由近20个子程序构成,其总的功能模块如图3.1
所示。
图3.1音乐彩灯功能模块图
3. 2设计思想及工作原理
要将音乐乐谱转换成对应的音乐声,并使彩灯显示与音乐同步,必须先将乐谱进行
数字化编码。根据音阶与频率的关系,音调与频率的关系及音符节拍数计算出音乐乐谱编
码数据,存在内存贮器中供放音时取用。
为便于程序判别,本系统按下列方法将乐谱数字化。每个音符用2个8位二进制数
表示,其中1个8位二进制数用来表示音符本身及其音调的高低,如D7 Ds Ds Da Ds Dz
Di Do 高4位D}-rD;的取值为OOOOB,OOOlB,0010B 分别表示该音符为低音、中音、高音。低4位
的取值OOOLB-rO11 1B,表示音符1 ^} 7之一。另一个8位二进制数表示该音符对应的节拍数。以1/4拍为基准,1/9拍的编码为O1H,1/2拍的编码为02H, 1拍的编码为O}IH, 2拍的编码为08H ,依此类推,可以求出任意节拍的编码。除对音符,节拍进行数字化编码外,还需将乐谱的音调数字化,音调C}D}E}F}G }A}B分别用数字OOH-- 06H表示。音调编码数据存放在音符编码数据之前。另外,用FFH 表示乐谱的开始,存放在音调编码数据前,用OOH 表示乐谱的结束,存放在整篇乐谱的编码数据之后。这样,用起始和结束码括起来的就是整个乐曲完整的编码数据。将这些数据存放在存贮器中供调用。
放音时,首先取出音符的第}个8位二进制编码数据,截取低4位得到音符编码数据,截取高9位得到表示该音符音调高低的编码数据,通过计算可求出该音符对应的时间常数在时间常数表中(时间常数表由21个时间常数组成,其排列顺序为低音1的时间常数一高音7的时间常数。) 的位置,从该位置取出时间常数送8032定时器2的装载寄存器,可以控制定时器2的中断频率,从而间接控制D 触发器翻转频率,使扬声器发音的高低与音符音调的高低一致。接着取出第2个8位二进制编码数据(节拍编码) ,用来控制调用基准延时程序(其延时时间为1/4拍) 的次数,从而控制音符发音的长短,这样使扬声器发出与乐谱一致的音乐声。
要实现彩灯和音乐的同步控制,必须在控制发音后,立即控制彩灯。即在分离出音符
码和表示该音符音调高低的数码后,经过适当处理(见彩灯模块流程图及其说明部分) ,得到1个8位二进制数据,该数据中代表该音符的位为“1" ,其余各位为“0" ,根据表示该音符音调高低的数据码OOOOB 或OOOIB 或OOIOB ,把这个8位二进制数送到8279显示RAM 的“0”号单元或uln 号单元或“2”号单元,而显示RAM 的另外两个单元送“0" ,这样便点亮了与音符对应的彩灯,熄灭其它彩灯,实现彩灯与音乐同步控制,即彩灯亮与音符同步进行。
3. 3流程图
图3.2为彩灯控制模块程序的流程图。其执行过程是:取出音符的第}个8位二进制编码数据,分离出高4位和低4位,分别送Rs 和R4暂存,然后将数据OlH 左移,移位次数为R, 内
3.2彩灯控制模块程序流程图
容减1, 得到1个新的二进制数据. 该数据中与所取音符对应的位为“l ”,其余各位为
“0" ,将该数据送回R4暂存。在熄灭所有彩灯(8279显示RAM 的“0”号、ul ”号、u2”号单元都清u } rf)后,用数80H 加_)"_ Rs的内容得到写8279显示RAM 的“0”号或"1”号或“2”号单元的命令,将该命令送8279命令日,再将R ‘的内容送827,数据口,这样便点亮对应彩灯。
图3.3为音乐控制模块程序流程图。其执行过程是:取音符的第1个8位二进制编码
数据暂存于R; 中,截取其高4位暂存于Rs ,数据OOH 加上若干个(由Rs 的内容决定) 立即数07H ,再加上音符码(R‘低4位) ,再加上乐谱音调编码数据便得到该音符所对应的时间常数在时间常数表中的序号,将该序号乘以2可得到所取音符的时间常数在时间常数表中的位置。
使指针DPTR 指向时间常数表首地,用查表指令可得到相应的时间常数并送人定时器
2,这样扬声器便可以发出对应的音乐声。
图3.3音乐控制器模块程序流程图
本系统经调试效果良好,全部功能均已实现。如果系统选用性能优良的可编程固化
语音集成电路MSSI061,由单片机控制提取MSSI061中固化语言内容,将进一步拓宽单片机的应用范围,为实际应用开辟新的途径。
3.4程序清单
程序如下:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY CDKZ IS
PORT(CLK,CLR:IN STD_LOGIC; --时钟和复位--
COUT:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); --输出--
END;
ARCHITECTURE BVE OF CDKZ IS
TYPE STATE_DDRAM IS --定义状态机--
(READY, ONE, TWO, THREE, FOUR, FIVE, SIX);
SIGNAL STATE,NEXT_STATE:STATE_DDRAM;
SIGNAL CNT8:STD_LOGIC_VECTOR(5 DOWNTO 0); --计数信号---
SIGNAL C_T:STD_LOGIC_VECTOR(7 DOWNTO 0);
BEGIN
P1:PROCESS(CLR,CLK)
BEGIN
IF CLR='1' THEN STATE
ELSIF CLK'EVENT AND CLK='1' THEN
STATE
上升沿加1---
END IF;
END PROCESS P1;
STATE_COM:PROCESS(STATE,NEXT_STATE,CNT8)---状态机的转向---
BEGIN
CASE STATE IS
WHEN READY=>NEXT_STATE
WHEN ONE=>NEXT_STATE
IF CNT8
WHEN TWO=>NEXT_STATE
IF (CNT8>"000111")AND(CNT8
全灭--
WHEN THREE=>NEXT_STATE
IF CNT8="010000" THEN C_T
IF CNT8="010001" THEN C_T
IF CNT8="010010" THEN C_T
IF CNT8="010011" THEN C_T
IF CNT8="010100" THEN C_T
IF CNT8="010101" THEN C_T
IF CNT8="010110" THEN C_T
IF CNT8="010111" THEN C_T
亮---
WHEN FOUR=>NEXT_STATE
IF CNT8="011000" THEN C_T
IF CNT8="011001" THEN C_T
IF CNT8="011010" THEN C_T
IF CNT8="011011" THEN C_T
IF CNT8="011100" THEN C_T
IF CNT8="011101" THEN C_T
IF CNT8="011110" THEN C_T
IF CNT8="011111" THEN C_T
灭--
WHEN FIVE=>NEXT_STATE
IF(CNT8>"011111")AND(CNT8
灭,右四个亮--
WHEN SIX=>NEXT_STATE
IF(CNT8>"100111")AND(CNT8
亮,右四个灭--
WHEN OTHERS=>NEXT_STATE
END CASE;
END PROCESS STATE_COM;
COUT
END;
第4章系统调试与分析
音乐彩灯的彩灯部分的设计可以用单片机控制电路,也也可以用PLC 。在想到利用8032单片机的同时,也想到利用PLC 可编程控制器,三菱FX2N-48MR 可编程控制器进行彩灯循环点亮的PLC 控制的编程。
PLC 是可编程逻辑控制器的英文缩写,价格高,体积相对较大,但功能丰富,可实现各种复杂的控制,运行可靠,可以适应各种恶劣的环境,目前广泛代替了传统的继电器控制方式,在工业生产上应用广泛。
单片机是单芯片电子计算机的简称,也可以实现自动控制,与PLC 相比,它的特点是体积小、价格低(只要十几块甚至几块钱就能买到一片,而PLC 动辄上千甚至更贵),但对运行环境的要求较高。
最后从价格方面考虑还是使用8032。
在电路组装过程中,遇到的最大问题是,起初考虑不周全,芯片分布不够合理,出现了许多" 特长线" 。不但影响布线速度,而且也会给后来的调试带来不必要的麻烦。当时已经布线不少,不可能重新开始,再三权衡,最后只移动了一个芯片,问题就得到了很大改善。其次就是布线,因为要求不准交叉,且横平竖直,所以在保证连通的情况下,在布线上也下了不少工夫。
调试过程中,第一轮用万用表欧姆档测试,就遇了实验板上有插孔不通的情况,导致
芯片不能正常工作。相对于别的办法,我选择了导线显式连通,因为其更明晰,更易实现。对于高阻导线则只能换掉。第二轮接电后,用万用表的电压档测试单元电路的状态。如:时钟信号电路的信号是否正常产生,控制信号电路中的计数器能否正常计数,„„最后在整体上测试一遍。
在整个调试完成后,却遇到的新问题:彩灯演示时有时正常有时混乱。在排除其它可
能的情况下,我仔细检查各端子的连接情况,发现清"0" 端在清"0" 后悬空了。将其插到电源正极后,发现问题解决了。
第5章结束语
踉踉跄跄地忙碌了几个月,我的毕业设计课题也终将告一段落。通过这一阶段的毕业设计,我受益匪浅,不仅锻炼了良好的逻辑思维能力,而且培养了弃而不舍的求学精神和严谨作风。回顾此次毕业设计,是大学两年所学知识很好的总结。点击运行,也基本达到预期的效果,虚荣的成就感在没人的时候也总会冒上心头。但由于能力和时间的关系,总是觉得有很多不尽人意的地方,譬如功能不全、外观粗糙„„可是,我又会有点自恋式地安慰自己:做一件事情,不必过于在乎最终的结果,可贵的是过程中的收获。
毕业设计,也许是我大学生涯交上的最后一个作业了。想籍次机会感谢两年以来给我帮助的所有老师、同学,你们的友谊是我人生的财富,是我生命中不可或缺的一部分。我的毕业指导老师李景魁老师,他严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;他循循善诱的教导和不拘一格的思路给予我无尽的启迪。感谢李老师,这篇毕业设计的每个实验细节和每个数据,都离不开你的细心指导。同样我也要衷心的感谢教育过和指导过我的各位老师,感谢给予我帮助的朋友们,谨献上我最真挚的祝福。
大学生活即将匆匆忙忙地过去,但我却能无悔地说:“我曾经来过。”大学两三年,但
它给我的影响却不能用时间来衡量,这两年以来,经历过的所有事,所有人,都将是我以后生活回味的一部分,是我为人处事的指南针。就要离开学校,走上工作的岗位了,这是我人生历程的又一个起点,在这里祝福大学里跟我风雨同舟的朋友们,一路走好,未来总会是绚烂缤纷。
第6 章参考文献
1 何立民.MCS- 51系列应用系统设计. 北京:航空航天大学出版社,1990. 199---1602
2 陈建铎,黄秀成,耿德根.DVCC-51单片单板机实验与开发应用指导. 西安:陕西科学出版 社,1990. 8}-v86
3 Ferking M E著. 晶体振荡器设计与温度补尝. 杜丽冰,詹汉强译. 北京:人民邮电出版社,1985