《微机原理课程设计论文.doc》由会员分享,可在线阅读,更多相关《微机原理课程设计论文.doc(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、七段数码管郑州科技学院微机原理与接口技术课程设计 题 目 _ 七段数码管_ _ 学生姓名 李惠峰 专业班级 10计算机科学与技术2班学 号 201015051 所 在 系 信息工程学院 指导教师 曾毅 完成时间 2012 年 1 月 3 日 目 录引言 4第一章 绪论 51.1单片机的介绍 51.1.1 单片机概论 5 1.1.2 单片机的特点及应用 51.2 数码管 6 1.2.1数码管的分类及应用 6 1.2.2数码管显示原理 71.2.3数码管的驱动 8第二章 系统分析 92.1 功能要求 92.2方案论证 9第三章 总体硬件设计 103.1 硬件的选择 10 3.1.1 AT89S51
2、 10 3.1.2主要特征 103.1.3 AT89S51 特殊功能寄存器 123.1.4AT89S51 单片机的内部结构 133.2 硬件设计 143.3 复位电路 16 3.3.1 复位电路的作用 163.3.2 复位电路的可靠性设计 163.4 时钟频率电路的设计 173.5 硬件的抗干扰技术 183.5.1抑制干扰源 183.5.2 切断干扰传播途径 19第四章 软件设计 194.1软件分析 194.2编写程序 214.3软件抗干扰措施 22总结 24致谢 25参考文献 25附录 26引言纵观当今,随着科技的发展,各种制动化设备的发展突飞猛进,单片机担任着不可缺的重任。而单片机的特殊结
3、构形式,在某些领域中,它承担了大中型计算机和通用的微型计算机无法完成的一些工作。使其具有显著的优点和特点,因此在各个领域中得到了迅猛的发展。它是控制中心和设备之间的桥梁,它对光、热、电、力、速度等各种物理量进行采集,处理合成各种电信号送到各种控制中心进行处理,从而实现了制动化控制。单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹导航装置,飞机上各种仪表的控制,计算机的网络通信与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,影碟机、摄像机、全制动洗衣机的控制,以及程控玩具、电子宠物等,这些都离不开单片机。更不用说制动
4、控制领域的机器人、智能用表、医疗器械了。如今单片机C语言程序设计及其应用设计已经成为工科院校电子信息类,自动控制类、电力电子类和智能仪表类专业的主要专业课程。我们不仅要掌握单片机的原理和应用技术,还应具备“开发”的能力。为了顺应社会的发展,提高我们自身的专业水平和实际动手能力,所以我们在毕业设计中制作了一套七段数码管设计系统。整个系统中的大型数码管、晶振电路和复位电路、印刷电路板、编程器以及外壳均有我们自己制作,此数码管设计主要选用AT89S51单片机控制,采用数字显示,外形美观、大方,显示醒目、直观:从0到9数字的循环显示,一个数码管循环完,另一个紧接着循环,循环交替进行,也可使用复位键,非
5、常方便。第一章绪论1.1单片机的介绍1.1.1单片机的概述单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人
6、类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。 它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。 单片机芯片单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器
7、件需要费很大力气才能做到的,有些则是花大力气也很难做到的。 1.1.2单片机的特点及应用(1) 体积小、成本低。可广泛用于仪表、自动控制、通信和家用电器等领域。(2) 稳定可靠。在设计芯片时,均按照工业控制的要求进行,因此抗工业噪声干扰优于一般的CPU。且因为程序存储器集成在芯片内部,许多信号通道也集成在芯片内部,所以可靠性高。(3) 高性能、高速度。为了满足工业发展的需求,单片机增强了控制功能、接口功能,丰富了指令系统,可用于各种语言开发系统。单片机的总路线速度已达到32MHZ。(4) 寿命长、适应性强。一方面是指用单片机开发的产品可以稳定可靠地工作10年、20年;另一方面是指与微处理器相比
8、,它的生存周期长。(5) 控制功能强。为了满足工业控制的要求,单片机提供了丰富的指令。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,单片机的发展趋势是向着大容量、高性能化,小容量、低价格化和外围电路内装化等几个方面发展。随着集成工业的不断发展,单片机的集成速度将更高、体积将更小、功能将更强,其应用的前景是令人向往。1.2 数码管1.2.1 数码管的分类及使用数码管是一种半导体发光器件,其基本单元是发光二极管。如图11 实物参照图数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“
9、8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。数码管是一类显示屏,通过对其不同的管脚输入相对的电流会使其发
10、亮,从而显示出数字。能够显示、时间、日期、温度等所有可用数字表示的参数。由于它的价格便宜,使用简单,在电器,特别是家电领域应用极为广泛,其他家电也用液晶屏与荧光屏。1.2.2 数码管显示原理前面已经介绍过,7段数码管是由7个独立的二极管采用共阴或共阳的方法连接而成。通常将这7个独立的二极管做成a、b、c、d、e、f、g这7个笔划,如图3.1所示。图1.4 数码管的管脚定义由图1.4可见,通过一个7位的二进制电平信号就可以显示出想要的结果。例如,点亮二极管b、c,数码管将会显示数字1,点亮a、b、c、d、e、f、g,数码管将会显示数字0。所以,数码管的显示需要有7根连线。每个数字对应的二进制码如
11、表1.5所示。表1.5显示数字对应的二进制电平信号显 示 数 字abcdefg01111110101100002110110131111001401100115101101160011111711100008111111190001101然而,在实际的电路设计中,由处理器完成译码功能再输出一个7位的二进制信号是非常浪费空间和影响效率的。因此,电子工程师一般采取用7段数码管与译码器相结合的方法来解决这个问题。1.2.3数码管的驱动数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。1. 静态显示驱动:静态驱动
12、也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5840根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。2. 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自
13、独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。第二章
14、 系统分析2.1功能要求(1)数码管自动从数码0到9进行显示(2)数码管显示到9自动切换(3) 数码管之间自动切换2.2 方案论证按照系统设计功能的要求,初步确定系统由主控模块、时钟模块、复位模块和显示模块共四个模块组成,电路系统构成框图如图2-1所示。主控芯片使用51系列单片机时钟电路为单片机工作提供基本时钟,外接5V电源。复位电路用于将单片机内部各电路的状态恢复到初始值,显示电路使用共阳LED数码管来显示数字,接到单片机的P2端口,由P2端口来控制显示。主控模块(AT89S51)复位电路时钟电路LED显示电路5V源2第三章 总体硬件设计3.1硬件的选择3.1.1 AT89S51AT89S5
15、1是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中
16、断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。 3.1.2 主要特性: 8031 CPU与MCS-51 兼容 4K字节可编程FLASH存储器(寿命:1000写/擦循环) 全静态工作:0Hz-33MHz 三级程序存储
17、器保密锁定 128*8位内部RAM 32条可编程I/O线 两个16位定时器/计数器 6个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 2管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口
18、管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在
19、FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收
20、一些控制信号。 I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真正地把外部的数据读入到内部总线。上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作。这是由硬件自动完成的,不需要我们操心,1然后再实行读引脚操作,否则就可能读入出错,为什么看上面的图,如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q为1加到场效应管栅极的信号为1,该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1,也会因端
21、口的低阻抗而使信号变低使得外加的1信号读入后不一定是1。若先执行置1操作,则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入,由于在输入操作时还必须附加一个准备动作,所以这类I/O口被称为准双向口。89S51的P0/P1/P2/P3口作为输入时都是准双向口。接下来让我们再看另一个问题,从图中可以看出这四个端口还有一个差别,除了P1口外P0P2P3口都还有其他的功能。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,
22、ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-
23、FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 AT89S51:系列单片机实现了ISP下载功能,故而取代了89CXX系列的下载方式,也是因为这样,ATMEL公司已经停止生产89CXX系列的单片机,现在市面上的AT89CXX多是停产前的库存产品。 3.1.3 AT89S51特殊功能寄存器能寄存器也称专用寄存器,是具有特殊功能的所有寄存器的集合,简称SFR
24、(Special Function Register)。特殊功能寄存器共含有22个不同寄存器。它们的地址分配在80HFFH中,即在RAM地址中。这些寄存器的名称和地址见表3-1。表3-1器件选型方案的详细清单器件名称 规格型号 数量微处理器 AT89S51 1电阻 3WTT10K 8电容 30PF 3晶振 12MHZ 1按钮 - 11反相器 - 37段数码管 7SEG-MPX4CC 4 扬声器 - 1 虽然特殊功能寄存器地址在80HFFH之中,但在80HFFH的地址单元中,不是所有的单元都被特殊功能寄存器占用,未被占用的单元,其内容是不确定的,如果对这些单元进行操作,得到的是一些随机数,而写入
25、则无效。所以,用户编程时不应该将数据写入这些未确定的地址单元,它们是公司留待将来开发新产品时使用的如图3-2所示:3-2 AT89S51特殊功能寄存器列表符号地址注释*ACCE0H累加器*BF0H乘法寄存器*PSWD0H程序状态字SP81H堆栈指针DPL82H数据存储器指针低8位DPH83H数据存储器指针高8位*IEA8H中断允许控制器*IPD8H中断优先控制器80H端口0*P190H端口1*P2A0H端口2*P3B0H端口3PCON87H电源控制及波特率选择*SCON98H串行口控制器SBUF99H串行数据缓冲器*TCON88H定时器控制TMOD89H定时器方式选择TL08AH定时器0低8位
26、TL18BH定时器1低8位TH08CH定时器0低8位TH18DH定时器1高8位注:带*号的特殊功能寄存器都是可以位寻址的寄存器3.1.4 AT89S51单片机的内部结构AT89S51单片机内部由CPU、4KB的FPEROM ,128B的RAM,两个16位的定时/计数器T0和T1,4个8位的I/O端P0、P1、P2、P3等组成。单片微机内部最核心的部分是CPU。CPU主要功能是产生各种控制信号,控制存储器、输入/输出端口的数据传输、数据的算术运算、逻辑运算以及位操作处理等,CPU按其功能可分为运算器和控制器两部分。控制器由程序计数器PC、指令储存器、指令译码器、实时控制与条件转移逻辑电路等组成。
27、它的功能是对来自存储器中的指令进行译码,通过实时控制电路,在规定的时刻发出各种操作所需的内部和外部的控制信号,使各部分协调工作,完成指令所规定的操作。运算器由算术逻辑器部件ALU、累加器ACC、暂存器、程序状态字寄存器PSW,BCD码运算调整电路等组成。如图3-3所示:外部定时元件复位中断电源系统时钟ROMCPU定时/计数器串行I/O口并行I/O口RAM图3-3 AT89S51单片机的内部结构图为了提高数据处理和位操作功能,片内增加了一个通用寄存器B和一些专用寄存器,还增加了位处理逻辑电路的功能。其内部结构如图3-3所示。在总体方案设计过程中,对软件和硬件进行分工是一个重要的环节。原则上,能够
28、有软件来完成的任务就尽可能用软件来实现,以降低成本,简化硬件结构。同时,还要求大只规定的各接口电路的地址、软件的结构和功能、上下位机的通信协议 、程序的驻留区域及工作缓冲区等。总体方案一旦确定,系统的大致规模及软件的基本框架就确定了。硬件和软件是单片机控制系统的两个重要方面,硬件是基础、软件是关键,在系统设计时应先设计硬件再设计软件。在设计硬件时保证系统功能的前提下,力求简单可靠。在软件设计过程中,用软件工程思想指导开发过程,采用结构化设计方法进行系统开发,以团队方式,共同完成任务。3.2硬件设计总电路原理为使硬件电路设计尽可能合理,应注意以下几方面:(1) 尽可能采用功能强的芯片,以简化电路
29、,功能强的芯片可以代替若干普通芯片,随着生产工艺的提高,新型芯片的的价格不断下降,并不一定比若干普通芯片价格的总和高。(2) 留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全面返工。(3) 程序空间,选用片内程序空间足够大的单片机,本设计采用AT89S51单片机。(4) RAM空间,AT89S51内部RAM不多,当要增强软件数据处理功能时,往往觉得不足。如果系统配置了外部RAM,则建议多留一些空间。如选用8155作I/O接口,就可以增强256字节RAM.如果有大批数据需要处理,则应配置足够的
30、RAM,如6264,62256等。随着软件设计水平的提高,往往只要改变或增加软件中的数据处理算法,就可以使系统功能提高很多,而系统的硬件不必做任何更换就使系统升级换代。只要在硬件电路设计初期考虑到这一点,就应该为系统将来升级留足够的RAM空间,哪怕多设计一个RAM的插座,暂不插芯片也好。(5) I/O端口:在样机研制出来后进行现场试用时,往往会发现一些被忽视的问题,而这些问题不是靠单纯的软件措施来解决的。硬件电路设计其中包括复位电路的设计、时钟频率电路的设计,总电路的实现需要各个分电路的配合完成,所以分支电路的设计也显得尤为重要。该设计选AT89S51作为控制电路,P2口接两个共阳数码管,P2
31、.7P2.1分别连接数码管的af引脚,P2.0连接小数点dp端。七段数码管设计的原理图如下图3-4所示:3-4 七段数码管显示的原理电路分析 要使LED数码管显示数字,则P2口对应输出七段数码管数字显示对应的编码即可。由于流过LED的电流较小,为了让数字显示的更高一些,所以还要在回路中接入合适的限流电阻。VCC端接5V电压,再根据驱动LED的电流、电压计算,在这里取限流电阻为560。当P2.x输出为低电平时,对应的LED亮,输出高点平时,对应的LED不亮。3.3复位电路3.3.1复位电路的作用在上电或复位过程中,控制CPU的复位状态:这段时间内让CPU保持复位状态,而不是一上电或刚复位完毕就工
32、作,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。无论用户使用哪种类型的单片机,总要涉及到单片机复位电路的设计。而单片机复位电路设计的好坏,直接影响到整个系统工作的可靠性。许多用户在设计完单片机系统,并在实验室调试成功后,在现场却出现了“死机”、“程序走飞”等现象,这主要是单片机的复位电路设计不可靠引起的。3.3.2复位电路的可靠性设计计算机在启动运行是都需要复位,使中央处理器CPU和系统中的其它部件都处于一个确定的初始状态,并从这个状态开始工作。MCS-51的复位输入引脚RST为MCS-51提供了初始化的手段,可以使程序从指定处开始执行,在MCS-51的时钟电路工作后,只要
33、RST引脚上出现超过两个机器周期以上的高电平时,即可产生复位的操作。只要 RST保持高电平,则MCS-51循环复位。只有当RST由高电平变低电平以后,MCS-51才从0000H地址开始执行程序。本系统采用按键复位方式的复位电路。MCS-51单片机有一个复位引脚RST,它是施密特触发输入,当振荡器起振后,该引脚上出现2个机器周期(即24个时钟周期)以上的高电平。使器件复位,只要RST保持高电平,MCS-51保持复位状态。此时ALE、/PSEN、P0、P1、P2、P3口都输出高电平。RST变为低电平后,退出复位,CPU从初始状态开始工作。复位以后内部寄存器的初始状态为(SP=07,P0、P1、P2
34、、P3为0FFH外,其它寄存器都为0。在RST复位端接一个电容至VCCHE 一个电阻至VSS,就能实现上电自动复位,对于CMOS单片机只要接一个电容至VCCC即可。如图,在加电瞬间,电容通过电阻充电,就在RST端出现一定时间的高电平,只要高电平时间足够长,就可以使MCS-51有效地复位。RST端在加电时应保持的高电平时间包括VCC的上升时间和振荡器起振时间,VCC上升时间若为10ms,振荡器起振时间和频率有关。10MHz时间约为1ms,1MHz时约为10ms,所以一般为了可靠地复位,RST在上电时应保持20ms以上的高电平。图3-5中,RC时间常数越大,上电时RST端保持高电平的时间越长。当振
35、荡频率为12MHZ时,典型值为C=10uF,R=8.2k. 图3-5上电复位电路. 人工复位除上电自动复位以外,常常需要人工复位,将一个按钮开关并联于上电自动复位电路,按一下开关就RST端出现一段时间的高电平,即使器件复位。如图所示图3-6上电和开关复位而我们在这次的毕业设计中运用的人工复位电路. 其中电平复位是通过RST端经电阻和电源VC接通而实现的,按键手动电平复位电路如图。当时钟频率选用12MHz时,C选取10uF,R选择1000欧。3.4时钟频率电路的设计时钟电路是计算机的心脏,它控制着计算机的工作节奏。MCS-51单片机允许的时钟频率是因型号而异的。晶振的选择:6MHz的晶振,其机器
36、周期是2us。12MHz的晶振,其机器周期是1us, 也就是说在执行同一条指令时用6MHz的晶振所用的时间是12MHz晶振的两倍。为了提高整个系统的性能我选择了12MHz的晶振。振荡方式的选择:内部振荡方式,MCS-51内部都有一个反相放大器,XTAL1、XTAL2分别为反相放大器输入和输出端,外接定时反馈元件以后就组成振荡器,产生时钟送至单片机内部的各个部件。这样就构成了内部振荡方式外部振荡方式是把已有的时钟信号引入单片机内。这种方式适合用来使单片机的时钟与外部信号一致。在我的这个设计中没有也无需与外部时钟信号一致,所以我选择了内部振荡方式,由于单片机内部有一个高增益反相放大器,当外接晶振后
37、,就构成了自激振荡器并产生振荡时钟脉冲。晶振我选择了12MHz,相对于6MHz的晶振,整个系统的运行速度更快了。电容器C1、C2起稳定振荡频率、快速起振的作用,电容值我选择了30pF。内部振荡方式所得的时钟信号稳定性高。 图3-7时钟电路的设计单片机必须在时钟的驱动下才能工作.在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容 C1,C2的作用有两个:一是帮
38、助振荡器起振;二是对振荡器的频率进行微调。C1,C2的典型值为30PF。单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用fox表示。如时钟频率为12MHz,即fox=12MHz,则时钟周期为1/12s。3.5硬件的抗干扰技术常用硬件的抗干扰技术有:抑制干扰源、切断传播途径、提高敏感器件的抗干扰性能。3.5.1抑制干扰源:抑制干扰源就是尽可能减少干扰源的du/dt,di/dt。这是抗干扰设计最优先考虑和最重要的原则,常常会起到事倍功半的效果。减少干扰源的du/dt主要是通过在干扰源两端并联电容来实现。减少干扰源的d
39、i/dt则是在干扰源贿赂串联电感或电阻以及增加续流二极管来实现。抑制干扰源的常用措施如下:(1) 继电器线圈增加续流二极管,消除断开线圈时产生的反电势干扰。仅加续流二极管会使继电器的断开时间滞后,增加稳压二极管后继电器在单位时间会动作更多的次数。(2) 在继电器接点两端并接火花抑制电路(一般是RC串联电路,电阻一般选几K到几十K,电容选0.01UF),减少电火花影响。(3) 给电机加滤波电路,注意电容、电感引线要尽量短。(4) 电路板上每个IC要并接一个0.01UF0.1UF高频电容,以减少对IC电源的影响。注意高频电容的布线,连线应靠近点远端并尽量粗短,否则,等于增大了电容的等效串联电阻,会
40、影响滤波效果。(5) 布线时应避免90度折线,减少高频噪声发射。(6) 可控硅两端并接RC抑制电路,减少可控硅产生的噪声(这个噪声严重时可能会把可控硅击穿的)。3.5.2切断干扰传播途径按干扰传播路径可分为传导干扰和辐射干扰两类。所谓传导干扰是指通过导线传播到敏感器件的干扰。高频干扰噪声和有用信号的频带不同,可以通过在导线上增加滤波器的方法切断高频干扰噪声的传播,有时也可加隔离光耦来解决。电源噪声的危害最大,要特别注意处理。所谓辐射干扰是指通过空间辐射传播到敏感器件的干扰。一般的解决方法是增加干扰源于敏感器件的距离,用地线把它们隔离和在敏感期间商家屏蔽罩。切断干扰传播路径的常用措施如下:(1)
41、 充分考虑电源对单片机的影响。电源做得好,整个电路的抗干扰就解决了一大半。许多单片机对电源噪声很敏感,要给单片机电源加滤波电路或稳压器,以减少电源噪声对单片机的干扰。如果单片机的I/O口用来控制电机等噪声器件,在I/O口与噪声源之间应加隔离。(2) 注意晶振布线。晶振与单片机引脚尽量靠近,用地线把时钟区隔离起来,晶振外壳接地并固定。(3) 电路板合理区,如强、弱信号,数字、模拟信号。尽可能把干扰源(如电机、继电器)与敏感元件(如单片机)远离。(4) 单片机和大功率器件的地线要单独接地,以减小相互干扰。大功率器件尽可能放在电路板边缘。(5) 在单片机I/O口、电源线、电路板连接线等关键地方使用抗干扰元件如磁珠、磁环、电源滤波器、屏蔽罩,可显著提高电路的抗干扰性能。第四章 软件设计4.1软件分析软件部分也是单片机应用技术中的一个重要环节,软件部分无外乎就是编程,该数码管显示系统使用的是C语言编程。1、软件设计思路根据数码管静态显示原理,程序设计可以使用赋值法,将要现实的数字编码依次直接赋值给单片机的P2口,程序设计时,在一个无限循环语句内,延时1ms即可实现本设计的目的。这样的程序简单直接,但是语句基本上是重复。已知LED数码管是由8只发光二极管组成的,其数字显示就如同发光二极管组成的图像,即要计数显示的09所对应的P2口输出十六进制编码,数