1、安阳工学院毕业论文 引 言 随着节约型社会的形成,单片机技术在社会的各个领域中越来越来显示出它的优越性。用单片机设计的产品有体积小、价格低、功能全、应用灵活等替特点,所以单片机技术得到了不断的向前发展。 用单片机技术设计一种电饭煲的定时预约工作系统,要求用键盘输入定时工作时间和实时时间对比达到长时间精确的定时功能。单片机采用AT89C51单片机,要求定时时间和实时时间相同时通过51单片机控制光耦驱动电路来控制电饭煲的工作。 电饭煲的智能控制 摘要: 随着节约型社会的形成,单片机技术在许多领域中越来越显示出它的优越性.由于用单片机设计的产品体积小、价格低、功能全、应用灵活等特点,所
2、以单片机得到了不断的向前发展。 用单片机技术设计一种电饭煲的定时控制,要求用键盘输入定时时间和实时时间对比达到长时间精确的定时功能。单片机采用AT89C51单片机,要求定是时时间和实时时间相同时通过光耦驱动电路控制电饭煲的工作。 关键词:单片机 智能 程序 光耦 驱动 Rice cookers Intelligent Control Abstract: With the formation of a conservation-oriented society, SCM technology in many areas demonstrated its superi
3、ority. As with the design of SCM products small size, low price, full-function, flexible application, the SCM has been continuously forward。 SCM technology to design a rice cooker control the timing, the timing requirements of typing time and long-time contrast to the precise timing function. SCM us
4、ed AT89C51 SCM, when asked for time and real-time with the same time Optocoupler driver circuit through the control of rice cookers work. Key words: SCM Intelligent procedures Optocoupler drivers 第一章 电饭煲智能控制的概述 1.1 电饭煲智能控制设计背景 早在20世纪早期,电子智能控制技术就已经发展起来了,并最先被应用于工业生产中,其后随着控制理论、微电子技术和传感技术的发
5、展,在操作复杂度、可控对象、稳定性、经济性等方面均得到了完善,目前电子智能控制技术在家用电器、汽车电子、智能电源保护、电力自动化和电动工具等领域得到很广泛应用,以促进产品智能化和信息化程度的提高。例如,在空调、电磁炉、微波炉、洗衣机、电冰箱、电视机等生活家电上,电控板的身影无处不在,而一台高档汽车采用的电子智能控制装置更高达20多处。而如今随着社会的发展和现在人们生活节奏的加快,越来越多的工薪层的人们更是忙碌,除了工作,剩余的时间也越来越少.谁都想越来越多的智能家电在我们身边应用.比如:清晨6:10,全家还在熟睡中,智能系统已让电饭煲把饭煮好、厨房里正在煮着咖啡….。. 本课题就是在这样的背景
6、下设计的。此系统支持24小时预约煮饭,可灵活方便地安排煮饭时间等,从而进一步实现智能家庭的梦想。 1.2 电饭煲智能控制设计思路 该设计是在单片机的基础上设计出来的,基于单片机的自动化控制理论原理和实时定时电路工作原理为基础上完成.在实时时钟工作下,当到达定时时间时该控制电路会完成电饭煲的自动给电功能和机械动作功能,从而在按照使用者预先设定的时间来完成规定的任务,从而达到智能实时控制的目的。 1.3 电饭煲智能控制工作原理 该设计为电饭煲智能控制,其工作原理为以AT89C51为控制核心,带有定时功能的实时时钟为基础,和光耦进行电气隔离来完成单片机对大功率高电压进行控制. 工作原理图
7、如图1: 显示电路 AT89C51 按键电路 上电复位电路 晶振电路 电源电路 220V控制电路 机械控制电路 光耦 光耦 图1系统工作原理图 第二章 电路设计 2。1 电源电路 2.1。1 电源电路工作原理 稳压电源的技术指标分为两种:一种是特性指标,包括允许的输入电压、输出电压、输出电流及输出电压调节范围等;另一种是质量指标,用来衡量输出直流电压的稳定程度,包括稳压系数、输出电阻、温度系数及纹波电压等.这些质量指标的含义,可简述如下: 1. 稳压器质量指标 (1)电压调整率SV
8、 电压调整率是表征稳压器稳压性能的优劣的重要指标,又称为稳压系数或稳定系数,它表征当输入电压VI变化时稳压器输出电压VO稳定的程度,通常以单位输出电压下的输入和输出电压的相对变化的百分比表示。 (2)电流调整率SI 电流调整率是反映稳压器负载能力的一项主要自指标,又称为电流稳定系数。它表征当输入电压不变时,稳压器对由于负载电流(输出电流)变化而引起的输出电压的波动的抑制能力,在规定的负载电流变化的条件下,通常以单位输出电压下的输出电压变化值的百分比来表示稳压器的电流调整率() (3)纹波抑制比SR 纹波抑制比反映了稳压器对输入端引入的市电电压的抑制能力,当稳压器输入和输
9、出条件保持不变时,稳压器的纹波抑制比常以输入纹波电压峰-峰值与输出纹波电压峰—峰值之比表示,一般用分贝数表示,但是有时也可以用百分数表示,或直接用两者的比值表示。 (4)温度稳定性 集成稳压器的温度稳定性是以在所规定的稳压器工作温度Ti最大变化范围内(Tmin≤Ti≤Tmax)稳压器输出电压的相对变化的百分比值()/ΔT. 2. 稳压器的工作指标 稳压器的工作指标是指稳压器能够正常工作的工作区域,以及保证正常工作所必须的工作条件,这些工作参数取决于构成稳压器的组件性能. (1)输出电压范围 符合稳压器工作条件情况下,稳压器能够正常工作的输出电压范围,该指标的上限是由最大输入
10、电压和最小输入-输出电压差所规定,而其下限由稳压器内部的基准电压值决定. (2)最大输入-输出电压差 该指标表征在保证稳压器正常工作条件下稳压器所允许的最大输入-输出之间的电压差值,其值主要取决于于稳压器内部调整晶体管的耐压指标. (3)最小输入-输出电压差 该指标表征在保证稳压器正常工作条件下,稳压器所需的最小输入-输出之间的电压差值。 (4)输出负载电流范围 输出负载电流范围又称为输出电流范围,在这一电流范围内,稳压器应能保证符合指标规范征所给出的指标。 3. 极限参数 (1)最大输入电压 该电压是保证稳压器安全工作的最大输入电压。 (2)最大输出电流是保证稳压
11、器安全工作所允许的最大输出电流 三端固定集成稳压电路的输出电压是固定的,常用的是CW7800/CW7900系列。W7800系列输出正电压,其输出电压有5、6、7、8、9、10、12、15、18、20和24V共11个档次。该系列的输出电流分5档,7800系列是1。5A,78M00是0。5A,78 L00和是0.1 A,78T00是3A,78H00是5A. W7900系列与W7800系列所不同的是输出电压为负值。 三端稳压器的工作原理与前述串联反馈式稳压电源的工作原理基本相同,由采样、基准、放大和调整等单元组成.集成稳压器只有三个引出端子: 输入、输出和公共端。输入端接整流滤波电路,输出端接负
12、载;公共端接输入、输出的公共连接点。为使它工作稳定,在输入和输出端与公共端之间并接一个电容。使用三端稳压器时注意一定要加散热器,否则是不能工作到额定电流。 如图2 为7805和7905工作电路图: 图2三端稳压电路的典型应用电路 V V + _ + _ i o C C 1 2 . . . . IN(TAB) 2 OUT 3 LM7812 V V + _ + _ i o C C 1 2 . . . . 1 IN 1 OUT 3 LM7805 2 2。1。2 电源电路硬件构成 该设计电源电路有78
13、05和7812俩个稳压管组成,系统电源如图3所示 图3系统工作电源电路 由该电源电路提供+5V和+12V电压。+5V为单片机,光耦器和74LS245等提供工作电压。交流和直流可直接输入,使用范围广泛。 2。2 显示电路 2.2。1 数码管显示电路工作原理 1. 7段LED数码显示器俗称“数码管”,其工作原理是将要显示的十进制数码分成7段,每段为一个发光二极管,利用不同发光段组合来显示不同的数字.图4(a)上图所示为数码管的外形结构。 图4 7段显示器LED的外形图及二极管的连接方式 数码管中的7个发光二极管有共阴
14、极和共阳极两种接法,分别如图4(a)、(b)所示,图中的发光二极管a~g用于显示十进制码的10个数字0~9,h用于显示小数点。从图中可以看出,对于共阴极的显示器,某一段接高电平时发光;对于共阳极的显示器,某一段接低电平时发光,使用时每个二极管要串联一个约100Ω的限流电阻. 前已述及,7段数码管是利用不同发光段组合来显示不同的数字。以共阴极显示器为例,若a、b、c、d、g各段接高电平,则对应的各段发光,显示出十进制数字3;若b、c、f、g各段接高电平,则显示十进制数字4。a~g组合成为7位代码,要显示的数字一般首先转换成为7段码,然后驱动7段数码管显示。 LED显示器的特点是:清晰悦目、工
15、作电压低(1。5~3V),BS202每段最大驱动电流约为10mA,体积小、寿命长(大于100KH)、响应速度快(1~100ns)、颜色丰富(有红、绿、黄等色)、工作可靠. Led工作显示数字码型如图5下表所示: 段码位 D7 D6 D5 D4 D6 D2 D1 D0 显示段 pd g f e d e b a 字型 共阳极段码 共阴极段码 字型 共阳极段码 0 C0H 3FH 9 90H 1 F9H 06H A 88H 2 A4H 5BM B 8
16、3H 3 B0H 4FH C C6H 4 99H 66H D A1H 5 92H 6DH E 86H 6 82H 7DH F 84H 7 F8H 07H 空白 FFH 8 80H 7FH P 8CH 图5 Led工作显示数字码型 2. LED数码显示器的接口方法与电路 (1)LED数码显示的接口方法。 单片机与LED数码显示器有以硬件为主和以软件为主的两种接口方法,以硬件为主的接口方法,这种接口方法的电路如图6所示: 单
17、片机 51 驱动电路 图 6 led数码管常用驱动电路 (2) LED数码显示器的接口电路. 实际使用的LED数码显示器位数较多。为降低成本,大部分以软件为主的接口方法对于多位LED数码管显示器,通常采用动态扫描显示方法,即逐个循环点亮各位显示器。这样虽然在任一时期只有一位显示器被点亮,但是由于人眼有视觉残留效应,看起来与全部显示持续点亮的效果基本一样(在亮度上要有差别). 3. 驱动器 LED显示是单片机控制产品中常见的应用。使用LED模块,这种模块中带有LED显示管和LED驱动电路,用起来较方便。 一般用户直接采用单片机+LED驱动器+LED显示管的方式, 现在我
18、们向大家推荐一种经常使用的LED驱动器74ls245,它作为共阴数码管的驱动器,用单片机口端直接进行片选,而共阳数码管的驱动器则是74ls245。它们都是集成电路组件. 2.2.2 该系统数码管显示电路硬件构成如图7所示 图7 数码管显示电路 该系统显示电路由四个数码管和驱动芯片74LS245构成,如图7所示。所要显示的数据有p0口送出,经74LS245提高驱动能力之后直接接在数码管的a到dp口线端,四个数码管的片选有p2口低电平进行片选,从而完成显示电路的工作,使系统更具有可视化操作。 2.3 功率控制电路 2.3.1 单片机控制
19、大功率电路工作原理 单片机控制输出电压和电流都很小,不能驱动高电压和大功率用电器,用机械性开关不便于集成和自动化智能控制。为了避免机械接触开关的缺点,本系统选用以可控硅为主体的完全光电隔离的中间驱动电路。可控硅是大功率开关型半导体器件。能在高电压、大电流条件下工作,具有无器械接触、体积小、便于安装等优点,广泛应用于电力电子设备中。光电隔离保证了系统的安全性和外界电压波动对系统的影响.系统工作电路如图8所示: 单片机 光耦驱动器 高电压大功率负载 图8 功率控制电路 2.3。2 单片机控制大功率电路硬件构成如图
20、9所示 图9 功率控制电路 该设计功率控制部分由如图9完成。P2.0和p2。1各控制一个光耦器,当单片机内部完成预定的时间时此两个端口会产生两个低电压使moc1和moc2两个光耦工作,moc1控制220V电压的导通,当光耦1工作时4、6脚成低阻状态,内部的过零检测电路使光耦输出一个高电压来触发双向可控硅使其导通,在一直保持高电平的同时双向可控硅一直工作来完成对电饭煲的电源打开。Rk3和ck为滤波电路,减少高压对双向可控硅影响。另一个光耦控制机械部分的工作,使电饭煲的工作开关打开。从而来控制电饭煲的实时控制。 2.4 电饭煲智能控制
21、及其附属电路 2.4.1 键盘电路工作原理及构成 1.键盘分类 按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气式按键,磁感应按键等。前者造价低,后者寿命长。目前,微机系统中最常见的是触点式开关按键。 2。 按键结构与特点 微机键盘通常使用机械触点式按键开关,其主要功能是把机械上的通断转换成为电气上的逻辑关系。也就是说,它能提供标准的TTL逻辑电平,以便与通用数字系统的逻辑电平相容。 机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来.其抖动过程如
22、下图所示,抖动时间的长短与开关的机械特性有关,一般为5~10ms。模拟状态如图 图10模拟开关状态 在触点抖动期间检测按键的通与断状态,可能导致判断出错,即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的.为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施.这一点可从硬件、软件两方面予以考虑。在键数较少时,可采用硬件去抖,而当键数较多时,采用软件去抖。 单片机工作时有外接键盘输入信号,当检到有哪一个键被按下时,单片机内部执
23、行相应的工作程序。该系统的键盘由5个独立键盘构成,包括一个中断键盘单元.来完成智能电饭煲的手动控制。键盘的一脚接在单片机的p1.1至p1。4脚上,另外一脚接在电源地上,当有键盘按下时对应的键盘就会有一低电平送进单片机内部,有单片机内部程序进行消抖处理然后确定那一个键盘被按下后来执行程序完成该系统的指定工作。该系统键盘接口电路如图11 图11 系统按键开关电路 2.4.2 讯响电路工作原理及构成 正常情况下单片机p1。7脚是低电平,蜂鸣器不工作,当单片机开始工作时会由于p1.7脚为高电平而发声。则输出端p1.7处于低电平,无电流通过蜂鸣器,蜂鸣器不发声;预定时间到时获需要蜂鸣器响时,p1.
24、7端口电压变高为高电平,蜂鸣器通电,从而发出报警声,R0的阻值为限流电阻. 其工作电路为如图12所示: 图12 系统讯响电路 2.4.3 工作指示电路工作原理及构成 电路正常工作时,单片机内部程序会执行,所以我用内部程序执行与否来判断电路是否工作,弥补了在电源处加指示灯亮而程序不工作的错误弊端。 该电路指示为每当程序执行一秒时灯就会闪动一下.来指示电源电路和程序执行工作。电路图为图13所示: 每当p1。0的高低电平变化一次,指示灯就会闪动一下. 图13 工作指示电路 第三章 电饭煲
25、智能控制电路主要器件性能 3。1 AT89C51内部结构及管脚说明 3。1.1 AT89C51内部结构如图14所示. 图14 AT89C51内部结构 AT89C51是标准的40引脚双列直插式集成电路芯片,引脚排列请参见图15所示 AT89C51 图 15 at89c51管脚图 P0.0 ~ P0。7: P0口8位双向口线。 P1。0 ~ P1。7 :P1口8位双向口线。 P2。0 ~ P2。7 :P2口8位双向口线。 P3.0 ~ P3.7 :P
26、3口8位双向口线. ALE:地址锁存控制信号。在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。此外,由于ALE是以晶振1/6的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用. PSEN:外部程序存储器读选通信号。在读外部ROM时,PSEN有效(低电平),以实现外部ROM单元的读操作. EA:访问程序存储控制信号.当信号为低电平时,对ROM的读操作限定在外部程序存储器;当信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。 RST:复位信号.当输入的复位信号延续两个机器周期
27、以上的高电平时即为有效,用以完成单片机的复位初始化操作。 XTAL1和XTAL2:外接晶体引线端.当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。 VSS:地线。 VCC:+5 V电源. 以上是AT89C51单片机芯片40条引脚的定义及简单功能说明,读者可以对照实训电路找到相应引脚,在电路中查看每个引脚的连接使用。 P3口线的第二功能.P3的8条口线都定义有第二功能 3。1.2 AT89C51单片机的芯片内部有RAM和ROM两类存储器,即所谓的内部RAM和内部ROM AT89C51的程
28、序存储器用于存放编好的程序和表格常数。AT89C51片内有4 KB的ROM,8751片内有4 KB的EPROM,8031片内无程序存储器。AT89C51的片外最多能扩展64 KB程序存储器,片内外的ROM是统一编址的.如端保持高电平,AT89C51的程序计数器PC在0000H~0FFFH地址范围内 (即前4 KB地址) 是执行片内ROM中的程序,当PC在1000H~FFFFH地址范围时,自动执行片外程序存储器中的程序;当保持低电平时,只能寻址外部程序存储器,片外存储器可以从0000H开始编址。 AT89C51的程序存储器中有些单元具有特殊功能,使用时应予以注意。 其中一组特殊单元是
29、0000H~0002H。系统复位后,(PC)=0000H,单片机从0000H单元开始取指令执行程序。如果程序不从0000H单元开始,应在这三个单元中存放一条无条件转移指令,以便直接转去执行指定的程序。 还有一组特殊单元是0003H~002AH,共40个单元。这40个单元被均匀地分为5段,作为5个中断源的中断地址区。其中: 0003H~000AH 外部中断0中断地址区 000BH~0012H 定时/计数器0中断地址区 0013H~001AH 外部中断1中断地址区 001BH~0022H 定时/计数器1中断地址区 0023H~002AH 串行中断地址区 中断响应后,
30、按中断种类,自动转到各中断区的首地址去执行程序,因此在中断地址区中理应存放中断服务程序。但通常情况下,8个单元难以存下一个完整的中断服务程序,因此通常也是从中断地址区首地址开始存放一条无条件转移指令,以便中断响应后,通过中断地址区,再转到中断服务程序的实际入口地址. 3。1.3 AT89C51内部数据存储器 内部数据存储器低128单元,AT89C51的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址00H~7FH)和高128单元(单元地址80H~FFH).如图所示为低128单元的配置图如图16所示 特 殊 功 能 寄 存 器 通
31、用 RAM区 位寻址区 00H 1FH 20H 2FH 30H 7FH 80H FFH 80H 88H 90H 98H A0H A8H B0H B8H D0H E0H F0H 特殊功能寄存器中位寻址 外部 ROM 内部 ROM (EA=1) 外部 ROM (EA=0) 0000H 0000H 0FFFH 0FFFH 1000H FFFFH 外 部 RAM (I/O口 地址) 0000H FFFFH 内部数据存储器 (a) 外部数据存储器 (b) 程序存储器 (c) 工作寄存
32、器区 图16 at89c51内部存储器分布图 寄存器区 AT89C51共有4组寄存器,每组8个寄存单元(各为8),各组都以R0~R7作寄存单元编号。寄存器常用于存放操作数中间结果等。由于它们的功能及使用不作预先规定,因此称之为通用寄存器,有时也叫工作寄存器。4组通用寄存器占据内部RAM的00H~1FH单元地址。 在任一时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称之为当前寄存器组。到底是哪一组,由程序状态字寄存器PSW中RS1、RS0位的状态组合来决定。 通用寄存器为CPU提供了就近存储数据的便利,有利于提高单片机的运算速度。此外,
33、使用通用寄存器还能提高程序编制的灵活性,因此,在单片机的应用编程中应充分利用这些寄存器,以简化程序设计,提高程序运行速度。 位寻址区 内部RAM的20H~2FH单元,既可作为一般RAM单元使用,进行字节操作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。位寻址区共有16个RAM单元,计128位,地址为00H~7FH AT89C51具有布尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。这种位寻址能力是AT89C51的一个重要特点。 用户RAM区 在内部RAM低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩下80个单元,这
34、就是供用户使用的一般RAM区,其单元地址为30H~7FH。对用户RAM区的使用没有任何规定或限制,但在一般应用中常把堆栈开辟在此区中。 内部数据存储器高128单元 内部RAM的高128单元是供给专用寄存器使用的,其单元地址为80H~FFH。因这些寄存器的功能已作专门规定,故称之为专用寄存器(Special Function Register),也可称为特殊功能寄存器。内存分布地址如图16所示 3.1.4 AT89C51共有21个专用寄存器,现把其中部分寄存器简单介绍如下: 程序计数器(PC—Program Counter) 在实训中,我们已经知道PC是一个16位的计数器,它的作用是
35、控制程序的执行顺序。其内容为将要执行指令的地址,寻址范围达64 KB。PC有自动加1功能,从而实现程序的顺序执行。PC没有地址,是不可寻址的,因此用户无法对它进行读写,但可以通过转移、调用、返回等指令改变其内容,以实现程序的转移.因地址不在SFR(专用寄存器)之内,一般不计作专用寄存器. 累加器(ACC-Accumulator) 累加器为8位寄存器,是最常用的专用寄存器,功能较多,地位重要。它既可用于存放操作数,也可用来存放运算的中间结果。AT89C51单片机中大部分单操作数指令的操作数就取自累加器,许多双操作数指令中的一个操作数也取自累加器。 B寄存器 B寄存器是一个8位寄存器,
36、主要用于乘除运算。乘法运算时,B存乘数。乘法操作后,乘积的高8位存于B中,除法运算时,B存除数.除法操作后,余数存于B中。此外,B寄存器也可作为一般数据寄存器使用。 程序状态字(PSW—Program Status Word) 程序状态字是一个8位寄存器,用于存放程序运行中的各种状态信息.其中有些位的状态是根据程序执行结果,由硬件自动设置的,而有些位的状态则使用软件方法设定。PSW的位状态可以用专门指令进行测试,也可以用指令读出。一些条件转移指令将根据PSW有些位的状态,进行程序转移。PSW的各位定义如图17所示: PSW位地址 D7H D6H D5H D4H
37、 D3H D2H D1H D0H 字节地址 CY AC F0 RS1 RS0 OV F1 P 图17 psw的各位定义 除PSW。1位保留未用外,其余各位的定义及使用如下: CY(PSW.7)——进位标志位。CY是PSW中最常用的标志位.其功能有二:一是存放算术运算的进位标志,在进行加或减运算时,如果操作结果的最高位有进位或借位时,CY由硬件置“1”,否则清“0”;二是在位操作中,作累加位使用.位传送、位与位或等位操作,操作位之一固定是进位标志位
38、 AC(PSW.6)——辅助进位标志位。在进行加减运算中,当低4位向高4位进位或借位时,AC由硬件置“1”,否则AC位被清“0”.在BCD码调整中也要用到AC位状态. F0(PSW。5)-—用户标志位 这是一个供用户定义的标志位,需要利用软件方法置位或复位,用以控制程序的转向。 RS1和RS0(PSW.4,PSW.3)——寄存器组选择位 它们被用于选择CPU当前使用的通用寄存器组.通用寄存器共有4组,其对应关系如下: 00:0组 01:1组 10:2组 11:3组 这两个选择位的状态是由软件设置的,被选中的寄存器组即为当前通用寄存器组。但当单片机上电或复位后,RS1 R
39、S0=00。 OV(PSW.2)-—溢出标志位 在带符号数加减运算中,OV=1表示加减运算超出了累加器A所能表示的符号数有效范围(-128 ~ +127),即产生了溢出,因此运算结果是错误的,否则,OV=0表示运算正确,即无溢出产生. P(PSW.0)——奇偶标志位 表明累加器A中内容的奇偶性。如果A中有奇数个“1”,则P置“1",否则置“0"。凡是改变累加器A中内容的指令均会影响P标志位.此标志位对串行通信中的数据传输有重要的意义.在串行通信中常采用奇偶校验的办法来校验数据传输的可靠性。 数据指针(DPTR) 数据指针为16位寄存器。编程时,DPTR既可以按16位寄存
40、器使用,也可以按两个8位寄存器分开使用,即:DPH DPTR高位字节,DPL DPTR低位字节.DPTR通常在访问外部数据存储器时作地址指针使用。由于外部数据存储器的寻址范围为64 KB,故把DPTR设计为16位。 堆栈指针(SP-Stack Pointer) 堆栈是一个特殊的存储区,用来暂存数据和地址,它是按“先进后出”的原则存取数据的。堆栈共有两种操作:进栈和出栈。由于AT89C51单片机的堆栈设在内部RAM中,因此SP是一个8位寄存器.系统复位后,SP的内容为07H,从而复位后堆栈实际上是从08H单元开始的。但08H~1FH单元分别属于工作寄存器1~3区,如程序要用到这些区,最
41、好把SP值改为1FH或更大的值. 对专用寄存器的字节寻址问题作如下几点说明: (1) 21个可字节寻址的专用寄存器是不连续地分散在内部RAM高128单元之中,尽管还余有许多空闲地址,但用户并不能使用。 (2) 程序计数器PC不占据RAM单元,它在物理上是独立的,因此是不可寻址的寄存器。 (3) 对专用寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器. 3。1。5 单片机芯片内还有一项主要内容就是并行I/O口.AT89C51共有4个8位的并行I/O口,分别记作P0、P1、P2、P3。每个口都包含一个锁存器、一个输出驱动器和输入缓冲器。实际上
42、它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。 在访问片外扩展存储器时,低8位地址和数据由P0口分时传送,高8位地址由P2口传送。在无片外扩展存储器的系统中,这4个口的每一位均可作为双向的I/O端口使用。P1口的内部结构如图18所示 图18 p1口内部结构图 3。1.6 时钟电路 在AT89C51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2 .而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。电路结构如图19所示 XTAL2 XTAL1 AT89
43、C51 C1 C2 CYS XTAL2 XTAL1 AT89C51 +5V VSS TTL 外部时钟源 图19 时钟电路 1.振荡周期:为单片机提供时钟信号的振荡源的周期. 2.时钟周期:是振荡源信号经二分频后形成的时钟脉冲信号. 3.机器周期:通常将完成一个基本操作所需的时间称为机器周期。 4.指令周期:是指CPU执行一条指令所需要的时间.一个指令周期通常含有1~4个机器周期。他们的周期对比图如图20所示 P1 P2 S1 P2 振荡周期 时钟周期 机器周期 机
44、器周期 指令周期 XTAL2 (OSC) S2 S3 S4 S5 S6 S1 S2 S4 S5 S3 S6 P1 P1 P1 P1 P1 P1 P1 P1 P1 P1 P1 P2 P2 、、、、 P2 P2 P2 P2 P2 P2 P2 P2 图20 周期对比图 3。2 74LS245芯片 74LS245是一种三态输出的8总线收发
45、器,74LS245 通常用于数据的双向传送、缓冲和驱动。其逻辑电路图和引脚图如图21所示: 图21 74ls245 内部结构图 从图可见,该收发器有16个双向传送的数据端,即A1-A8,B1-B8,另有两个控制端-使能端口,方向控制端DIR,该芯片的功能见表图22 。 74ls245 真值表 使能端 方向控制 数据传递方向 L L B 到 A L H
46、 A 到 B H Ⅹ 隔开 使能端 图22 74LS245真值表 3.3 MOC3020芯片 光电耦合器是以光为媒介传输电信号的一种电一光一电转换器件.它由发光源和受光器两部分组成。把发光源和受光器组装在同一密闭的壳体内,彼此间用透明绝缘体隔离.发光源的引脚为输入端,受光器的引脚为输出端,常见的发光源为发光二极管,受光器为光敏二极管、光敏三极管等等。光电耦合器的种类较多,常见有光电二极管型、光电三极
47、管型、光敏电阻型、光控晶闸管型、光电达林顿型、集成电路型等。在光电耦合器输入端加电信号使发光源发光,光的强度取决于激励电流的大小,此光照射到封装在一起的受光器上后,因光电效应而产生了光电流,由受光器输出端引出,这样就实现了电一光一电的转换 Moc3020为光电耦合器,通过对其引脚控制可以实现对大电压和大功率功率管进行触发控制。Moc3020为dip6脚封装。1、2为单片机控制端,当有电流时内部发光管导通发光而受控管导通来触发外部双向可控硅进行工作。其内部结构图如图23所示 图 23 Moc3020内部结构图 3.4 双向可控硅BTA12 600B BTA12 600B 为双向
48、可控硅,双向可控硅又称为双向晶闸管, 普通晶闸管(VS)实质上属于直流控制器件.要控制交流负载,必须将两只晶闸管反极性并联,让每只SCR控制一个半波,为此需两套独立的触发电路,使用不够方便。 双向晶闸管是在普通晶闸管的基础上发展而成的,它不仅能代替两只反极性并联的晶闸管,而且仅需一个触发电路,是目前比较理想的交流开关器件。其英文名称TRIAC即三端双向交流开关之意。 BTA12 600B最大控制电流为12A控制电压为600V到800V,触发电流为10到15mA左右,其参数如图24所示: 封装为to—220型封装。 Bta12 600B参数表 名称 电压 单位
49、控制电流 12 A 控制电压 600 V 触发电流 10到15 mA 图24 BTA12 600B参数表 第四章 程序设计 4.1程序设计流程图 程序开始 相关变量初始化 是否有中断 中断服务程序 检查闹铃时间 闹铃执行程序 显示程序 K1是否按下 K1键处理程序 K2是否按下 K2键处理程序 K3是否按下 K4是否按下 K4键处理程序 4.2程序源代码 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;文件名称
50、电饭煲智能控制核心程序 ;该系统能完成24小时电饭煲预约工作 ;及其可视化操作且进行电气隔离控制 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;~~~~~~~~ 程序初始化 ~~~~~~ ;定义存放计时单元的地址 ;~~~~~~~~ ALB EQU 20H。0;定时设置标志 BUF EQU 30H ;30~34H存放连续4个字节显示器数据 HOUR EQU 34H ;存放小时变量 MIN EQU 35H ;分钟变量 SEC EQU 36H ;秒钟变量 DEDA EQU 37H ;存放5m






