基于单片机的电热水壶控制系统 毕业设计(论文) (2).doc_第1页
基于单片机的电热水壶控制系统 毕业设计(论文) (2).doc_第2页
基于单片机的电热水壶控制系统 毕业设计(论文) (2).doc_第3页
基于单片机的电热水壶控制系统 毕业设计(论文) (2).doc_第4页
基于单片机的电热水壶控制系统 毕业设计(论文) (2).doc_第5页
免费预览已结束,剩余25页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

i- 基于 mcs-51 系列单片机的热水壶控制系统 目录 1前 言 1 2 热水壶控制系统总体概述 .2 2.1热水壶的工作情况 2 2.2 系统总体设计框图 .2 3 电热水壶控制系统的硬件设计 .4 3.1 电源转换电路 .4 3.2 单片机最小系统 .4 3.3 a/d转换电路 2 3.4 温度检测电路 .4 3.5 键盘及显示电路 .6 3.5.1 键盘输入特点 .6 3.5.2 led显示电路的原理 7 3.5.3 键盘及显示电路 .8 3.6 加热电路和报警装置 .9 3.6.1 加热电路 .9 3.6.2 报警装置 10 4 单片机的软件设计 11 4.1 总的程序设计框图 11 4.2 8255的程序设计 12 4.3 键盘和显示接口电路程序设计 13 5结论 .18 参 考 文 献 .19 致 谢 20 附录 a 系统电路总图 22 附录 b pcb版电路图 23 ii- 摘 要 经过几十年的发展,中国电热壶市场已经进入成熟时期。行业内预测认为,2011 年 国内电热水壶预计销售量在 1400 万台左右,市场规模将达到 20 亿元。市场迅猛的增长 使电热水壶这个本无太多看点的小家电产品开始变的很引人注目。目前国内比较智能热 水壶通过温度传感器测温,将温度信号传送到单片机中进行处理,单片机根据温度传感 器送来的温度信号,做出相应命令,控制热水壶的开关、功率等,但缺乏水温显示以及 报警系统。 本论文研究一个以 mcs-51 系列单片机为控制芯片,对热水壶工作进行控制的系统。 通过电加热电路加热水并实时采样水温,将采样信号进行模数转换后送入单片机系统, 经过单片机系统处理后,结合键盘控制实现水温的 led 显示以及超过水温的报警提示。 整个系统的硬件电路由单片机控制电路、温度检测电路、a/d 转换电路、键盘及显示电 路和温度加热电路五个部分组成,结合软件编程实现单片机对整个硬件系统的控制。 关键字:单片机;温度控制;控制器。 iii- abstract after decades of development, china electric pot of market has entered into the mature period. within the industry as projections, 2011 domestic electric kettle of expected sales in 14 million taiwan or so, the size of the market will reach 2 billion yuan. the rapid growth of the market that electric kettle this this have no too many small home appliance product read became very conspicuous. the current domestic hot water is intelligence through the temperature sensor measuring temperature, temperature signals to the microcontroller treatment, scm according to deliver of temperature, the temperature sensor signal, and makes the corresponding command, control the switch of hot water, power and so on, but the lack of hydrological display and alarm system. this paper studies a mcs-51 series microcontroller as control chip, the hot water control system of the work. through the electrical heating water and real-time sampling circuit heating water temperature, will sampling signal after conversion module into scm system, after single-chip microcomputer system processing, the combination of the keyboard control realization of water temperature and water temperature of led display more than alarm prompt. the whole system hardware circuit of microcomputer control circuit, temperature detection circuit, a/d circuit, keyboard and display circuit and temperature heating circuit five parts, combined with the programming software with the chip the hardware of control. key words: one-chip computer; temperature control; controller. 1 1 前 言 经过几十年的发展,中国电热壶市场已经进入成熟期。前些日,在网上了解到,电 热水壶产量的复合增长率为 26.36%,产值的复合增长率为 35.00%,产量、出口量和内 销量同步迅速增加。行业内预测认为,2011 年国内电热水壶预计销售量在 1400万台左 右,市场规模将达到 20亿元。市场迅猛的增长使电热水壶这个本无太多看点的小家电 产品开始变的很引人注目。 国内智能热水壶市场中大概有比较智能化热水壶和比较不智能化热水壶两种。比较 智能化热水壶一类,通过温度传感器测温,将温度信号传送到单片机中进行处理,单片 机根据温度传感器送来的温度信号,做出相应命令,控制热水壶的开关、功率等。并具 备智能化的声光报警系统等功能;而比较不智能化的智能热水壶一类,通过利用水沸腾 时会产生蒸汽这一现象,用蒸汽压力控制开关的闭合来实现智能热水壶的控制,智能化 程度较低。 目前,单片机在工业控制、智能仪表、自动化设置、通信系统、信号处理等领域以 及家用电器、高级玩具、办公自动化设备等方面均得到广泛的应用。本文设计了一种以 mcs-51系列单片机为控制芯片,对电热水壶工作进行控制的方法。 单片机具有体积小, 成本低,应用灵活的特点,能方便地组成各种智能化的设备和仪器。以 mcs-51系列单 片机为控制芯片制作的智能电热水壶可靠性高,抗干扰性强,适用温度范围广,在各种 恶劣的环境下都能可靠的工作。实时控制功能强:能对电热水壶温度传感器采样来的数 据快速做出响应及处理,将实时水温送到 led上显示并控制加热电路和报警。 2 2 热水壶控制系统总体概述 2.1 热水壶的工作情况 对于常规的电热水壶,只要接通电源,就开始加热,直到水沸腾后通过蒸汽来产生 声音报警。这种设计有下面几个方面的不足: (1)如水壶中没水,电源误接通时也会一直加热,容易引起事故。 (2)当只需要加热到沸点以下某一温度时,不能及时给出声音报警信号。 (3)当水加热沸腾后不能自动停止工作。 针对以上不足,在本设计方案中,用 mc-51 单片机作为控制芯片,管理整个电热 水壶的工作情况,构成了一个闭环控制系统,而且增加了三个按键和六位数码管显示。 它的工作情况和常规的热水壶相比,有下面几个方面的特点: (1)有三个按键,可用来设置希望加热到的温度即报警的温度。上电复位后,设 置温度初值为 20 度,每按一下按键,温度设置值就会增加 1 度,整个温度设置值在 20100 度之间循环。 (2)这个按键还具有启动电热水壶开始工作的作用。当每次电源接通后,只有按 键按下过之后,电热水壶才开始加热,这样,可以防止电源误接通时电热水壶一直加热, 引发事故。 (3)当加热到设置温度时,单片机会控制停止加热,并通过蜂鸣器给出声音提示。 (4)三位数码管在设置温度操作时显示当前设置的温度,另三位数码管其余时间 实时显示电热水壶中水的实际温度。 2.2 系统总体设计框图 单片机控制热水壶的硬件构成包括 8051 芯片、8255 芯片、地址锁存器等组成的单 片机控制电路、温度检测电路、a/d 转换电路、键盘及显示电路和温度加热电路。整个 系统的关键电路是单片机控制电路,是整个控制的核心,完成信号的输入和输出的转换, 3 即可将温度检测电路采样的输入的信号通过 a/d 转换器 adc0809 进行处理加工后输出 到显示器进行显示,并可以通过键盘对温度进行控制,与此同时当水加热超过指定的温 度以后,蜂鸣器工作报警。硬件设计的总电路连接框图如下图: 加热电路 adc0809 报警电路 8255单片机 8051 温度检测电路 键盘和显示电路 图 1 硬件设计的总电路连接框图 4 3 电热水壶控制系统的硬件设计 通过 2.2 节对电热水壶控制系统框图的总体设计分析,可以把硬件电路分成六个子 模块,即给芯片供电的+5v 的电源转换电路、单片机最小系统、 a/d 转换电路、温度检 测电路、键盘显示电路以及加热和报警电路。 3.1 电源转换电路 vin1 gnd 2 +5v 3 u12mc7805t c30.1uf c70.1uf c20.1uf c50.1uf t1 trans1 d4 d1 d2 d5 vcc 12 j1con2 c43300uf c63300uf 图 2 电源转换电路 t1 为电为源变压器,它将交流电网电压 220v 变成整流电路要求的交流电压,电压 经过四个二极管两两导通整流滤波后,再经过三端稳压芯片 7805 就可以将原来交流 220v 的电压转换成直流电压为+5v,即可以得到报警电路和温度检测电路所需要的电压 值。 3.2 单片机最小系统 (1)单片机时钟电路 单片机内部有一个用于构成振荡器的高增益反相放大器,引脚 xtal1 和 xtal2 分别是此放大器的输入和输出端。在 xtal1 和 xtal2 两端跨接晶体就构成了稳定的 自激振荡器,其发出的脉冲直接送入内部的时钟电路。 5 xtal1 和 xtal2 两端将晶振、电容 c1 和 c2 与内部的反相放大器连接起来组成 并联谐振电路,图中 c1、c2 区 30pf,对频率有微调作用,振荡频率范围在 212mhz。 此设计单片机时钟电路如图 3 所示 c2 30pf y1 11.0596mhzc3 30pf 单单单单单单单 9850_d09850_d1 9850_d29850_d3 9850_d49850_d5 9850_d69850_d7 sw_1 w_clk lcd_0lcd_1 lcd_2lcd_3 lcd_4lcd_5 lcd_6lcd_7 d/ir/w ecs a cs b17 fqreset ea/vp31 x119 x218 reset9 rd17 wr16 int012 int1 13 t014 t1 15 p10/t1 p11/t2 p123 p134 p145 p156 p167 p178 p00 39p01 38 p02 37p03 36 p04 35p05 34 p06 33p07 32 p20 21p21 22 p22 23p23 24 p24 25p25 26 p26 27p27 28 psen 29ale/p 30txd 11 rxd 10 u1 89c52 图 3 单片机的时钟电路 (2)单片机的复位电路 系统开始运行和重新启动靠复位电路来实现,复位使 cpu 和其它部件处于一个确 定的初始状态,从这个状态开始工作。 此设计单片机的复位电路如图 4 所示 s1 r1 10k vcc vcc 9850_d09850_d1 9850_d29850_d3 9850_d49850_d5 9850_d69850_d7 sw_1 w_clk sw_3sw_2 lcd_0lcd_1 lcd_2lcd_3 lcd_4lcd_5 lcd_6lcd_7 d/ir/w ecs a cs b17 fqreset ea/vp31 x119 x218 reset9 rd17 wr16 int012 int1 13 t014 t1 15 p10/t1 p11/t2 p123 p134 p145 p156 p167 p178 p00 39p01 38 p02 37p03 36 p04 35p05 34 p06 33p07 32 p20 21p21 22 p22 23p23 24 p24 25p25 26 p26 27p27 28 psen 29ale/p 30txd 11 rxd 10 u1 89c52 c1 10uf/16v 图 4 单片机的复位电路 2 在单片机运行期间,利用按键也可以完成复位操作。单片机复位操作使单片机进入 初始化状态。复位后,程序计数器 pc=0000h,因此,程序从 0000h 地址单元开始执行。 运行中的复位操作不会改变片内 ram 的内容。复位是靠外部电路实现的。 (3) 单片机的最小系统 所谓最小系统,是指一个真正可用的单片机最小配置系统,其作用主要是为了保证单 片机系统能正常工作。对于单片机内部资源已能满足系统需要的,可直接采用最小系统。 51 型片内有 4k 的 rom/eprom,因此,只需要外接晶体振荡器和复位电路就可构成最 小系统。 本设计的单片机最小系统如图 2-4 所示。 s1 c2 30pf r1 10k y111.0596mhz c3 30pf vcc vcc 9850_d09850_d1 9850_d29850_d3 9850_d49850_d5 9850_d69850_d7 sw_1 w_clk sw_3sw_2 lcd_0lcd_1 lcd_2lcd_3 lcd_4lcd_5 lcd_6lcd_7 d/ir/w ecs a cs b17 fqreset ea/vp31 x119 x218 reset9 rd17 wr16 int012 int1 13 t014 t1 15 p10/t1 p11/t2 p123 p134 p145 p156 p167 p178 p00 39p01 38 p02 37p03 36 p04 35p05 34 p06 33p07 32 p20 21p21 22 p22 23p23 24 p24 25p25 26 p26 27p27 28 psen 29ale/p 30txd 11 rxd 10 u1 89c52 c1 10uf/16v 图 5 单片机最小系统 在外部振荡电路中,单片机的 xtal1 和 xtal2 管脚分别接至由 11.0596mhz 晶 振和两个 30pf 电容构成的振荡电路两侧,为电路提供正常的时钟脉冲。在复位电路中, 单片机 reset 管脚一方面经 10uf 的电容接至电源正极,实现上电自动复位,另一方面 经开关 s 接电源。其主要功能是把 pc 初始化为 0000h,是单片机从 0000h 单元开始执 行程序,除了进入系统的初始化之外,当由于程序出错或者操作错误使系统处于死锁状 态时,为了摆脱困境,也需要按复位键重新启动,因此,复位电路是单片机系统中不可 缺少的一部分。 3 3.3 a/d 转换电路 a/d 转换一般都设置在前向通道中,它将外界输入的模拟信号转换成计算机数据 总线能接受的数字量。在前向通道必须配置 a/d 转换电路时,首先考虑的是能否选用带 有 a/d 的单片机,本论文中无法选择单片机片内有 a/d 部件,则必须在前向通道中配 置 a/d 接口。本论文中采用逐次逼近法 a/d 转换器电路原理。其主要原理为:将一待 转换的模拟输入信号 u1n 与一个推测信号 ur 相比较,根据推测信号大于还是小于输入 信号来决定增大还是减少该推测信号相等时,向 d/a 转换器输入的数字就是对应模拟输 入量的数字量。 其“推测”值的算法如下:使二位进制计数器中(输出锁存器)的每一位从最高位 起依次置 1,每接一位时,都要进行测试。若模拟输入信号 u1n 小于推测信号 u1,则 比较器输出为零,并使该位清零;若模拟输入信号 u1n 大于推测信号 u1,比较器输出 为 1,并使该位保持位 1。无论哪种情况,均应继续比较下一位,直到最末位为止。此 时,d/a 转换器的数字输入即为对应模拟输入信号的数字量,将此数字输入就完成了 a/d 转换过程。 c10.1uf in-026 msb2-1 212-2 20 in-127 2-3 192-4 18 in-228 2-5 82-6 15 in-31 2-7 14lsb2-8 17 in-42 eoc 7 in-53 add-a 25 in-64 add-b 24add-c 23 in-75 oe 9 ref(-)16 ale 22start 6 ref(+)12 clock 10 u1 adc0809 u4 or u11 or u2 not u10 not vcc int0 p1 rest p20int ea/vp31 x1 19 x2 18 reset9 rd17 wr16 int012 int113 t014 t115 p101 p112 p123 p134 p145 p156 p167 p178 p00 39p01 38 p02 37p03 36 p04 35p05 34 p06 33p07 32 p20 1p21 22 p22 23p23 24 p24 25p25 26 p26 27p27 28 psen 29ale/p 30 txd 11rxd 10 vcc 40 gnd 20 u5 8051 vcc ea vcc int u2 not c10.ufin-26msb739485leoadbre()lstr+kuvp/xwg图 6 a/d转换的连接电路 由图 5 可以看出 adc0809 时钟 clk 由 8051ale 信号提供,ale 信号频率为 f/6。 用地址线低 8 位 a0、a1、a2(p0.0p0.2)接 0809 的 a、b、c 三端用来对 8 路模拟通 道进行选择。eoc 经非门与 8051 相接,0809 与 8051 采用中断方式联络,外部中断 1 服务子程序读 a/d 转换结果,并启动下一次转换。 4 0809 启动条件为 start=wr+p2.6 因此启动时,应用写指令(使 wr=1),并且要保证地址线 p2.6=0,其端口地址为 dfffh。adc0809 转换器将信号进行模数转换,再将数字信号传入 8051 进行微处理, 通过 led 显示温度。在由于 a/d0809 具有锁存的 ttl 三态输出,它的八条数据线和 8051 的八条数据线相连,采用线性选址法,其口地址为 dfffh。通道地址 a,b,c 由 数据总线 db0,db2,db2 提供。 a,b,c 地址线上的信息由 ale 上升沿打入地址 锁存器 74ls373。 3.4 温度检测电路 ad590 是一种二端式的集成温度传感器。 图 7 ad590引脚图 其主要技术参数有: 测温范围为-55+150 。工作电压为+4+30v,由于 ad590 是一种恒流源形式的 温度传感器,只需在其二端加上一定工作电压则其输出电流随温度变化而变化,其线性 电流输出为 1a/k。即温度每变化 1,其输出电流变化 1a;它以热力学温标零点作 为零输出点,因此在 25时,其输出电流为 298.2a。精度:经过激光平衡调整, ad590 的校准精度可达 。由于co5.0 5 ad590 是一种电流型的温度传感器,因此具有较强的抗干扰能力,适用于计算机进行远 距离温度测量和控制。 温度检测电路由温度传感器 ad590 等组成,直接输出电流 1a/k,输出电压为 100mv/,经运算放大器 lm358 进行 i/v 转化后,再经 a/d 转换通道送到微处理器中, r6、r5、r2 用于相互配合调节温度测量的满刻度值。 1 2 ds7 dpy_7-seg_dp 3 2 1 8 4 u17a lm358 r6 100k r13 100kr9100k r11100k r10res4 r12 res4 r14res4 vcc int0 图 8 温度检测电路 当传感器 ad590所处温区发生 1的温度变化时,流过其所在回路的电流即产生 1a 的变化,则其输出电压的变化为: cmvcuavoo1010 ad590 的输出电流值说明如下: 其输出电流是以绝对温度零度(-273 )为基准,每增加 1,它会增加 1a 输出电流, 因此在室温 25时,其输出电流 uaio298573 vo 的值为 io 乘上 10k,以室温 25而言,输出值为 。 量测 vouav29810. 时,不可分出任何电流,否则量测值会不准。 ad590 的输出电流 (t 为摄氏温度)uai273 因此量测的电压 v 为 。vk1073.210 在本论文中通过温度集成器 ad590 对外部-55+150范围内的温度进行采样,在 6 ad590 的两端分别接地和接电源,得到一定的压差,因此会得到相应的工作电压,其输 出电流会随温度变化而变化。电流 1a/k 其输出电压为 100mv/,经运算放大器 lm358 进行 i/v 转化后,再送入 a/d 转换电路中进行模数转换,经过微处理器处理即 可送到 led 显示器显示温度。 3.5 键盘及显示电路 3.5.1 键盘输入特点 (1)由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在 断开时也不会一下断开。因而,在闭合和断开的瞬间均伴随着一连串的抖动,抖动时间 的长短由按键的机械特性决定,一般为 510ms,为了确保按键的状态,必须消除按键 抖动的影响,这也是按键抗干扰的主要的一个方面。 图 9 键盘抖动波形图 消除按键抖动影响通常有硬件、软件两种方法。本论文采用双稳态消抖的硬件消抖 方法。 双稳态消抖的原理: 图 15 中用两个与非门构成一个 rs 触发器,当按键为按下时,输出为 1,当按键按 下时,输出为 0。此时即使由于按键的机械性能使按键因弹性抖动而产生瞬间不闭合, 7 只要按键不返回原始状态,双稳态电路的状态不会发生改变,输出保持为 0,不会产生 抖动的波形。因此如果在按键信号输入端加上一个 rs 触发器就可以剔除按键抖动产生 的干扰。 图 10 双稳态消抖电路原理图 (2)阵键盘按键的识别方法分两步进行:第一步,识别键盘有无键被按下;第二 步,如果有键被按下,识别出具体的按键。识别键盘有无键按下的方法是让所有列线均 置为 0 电平,检查各行线电平是否有变化,如果有变化,则说明有键被按下,如果没有 变化,则说明无键被按下。 识别具体按键的方法是(亦称为扫描法):逐行置零电平,其余各列置为高电平, 检查各行线电平的变化,如果某行电平由高电平变为零电平,则可确定此行此列交叉点 处的按键被按下。 通常,键盘工作方式有三种,即:编程扫描、定时扫描和中断扫描。 由图 2-5-4可见键盘采用编程扫描方式工作,pb 口输出逐行扫描信号,pa 口输入 8位列信号,均为低电平有效。8255a 的 a0、a1 上,cs 与 p2.7相接,wr、rd 分别与 8051的 wr、rd 相连。 3.5.2 led 显示电路的原理 8 8 位 led 动态显示电路只需要两个 8 位 i/o 口。其中一个控制段选码,另一个控制 位选。由于所有位的段选码皆由一个 i/o 控制,因此,在每个瞬间,8 位 led 只可能显 示相同的字幅。要向每位显示不同的字符,必须采用扫描显示方法。即在每一瞬间只使 某一位显示相应字符。在此瞬间,段选控制输出相应字符段选码,位选控制 i/o 口在该 显示位送入选通电平(共阴极送低电平、共阳极送高电平)以保证该位显示相应字符。 如此轮流,使每位显示该位应显示字符,并保持延时一段时间,以保存视觉暂留效果。 3.5.3 键盘及显示电路 从 8255 输出的显示信息经 74ls373 锁存缓冲,用来对 led 的各段进行段选,各位 led 显示器采用共阴极接法,通过控制阴极的电位来实现各位的选通。通过 8255 的扫 描输出经 uln2003 来实现位选,用来显示设定的温度值和当前的温度值,以便进行调 节。键盘部分采用 13 键盘矩阵,列回复信号送至 8255 的 pc0 口,连接后仍作为列选 择线;行选择线则是与显示部分的位选线共用。初始时,将列选择线置为高电平,当有 按键按下时,列选择线的电位取决于行选择线,通过相应行的电平状态判断有无按键按 下,可以通过键盘的配合来调节温度的设定值。 键盘及显示电路的电路图如下: 9 d034 d133 d232 d331 d430 d529 d628 d727 pa0 4pa1 3pa2 2 pa3 1pa4 40pa5 39 pa6 38pa7 37 pb0 18pb1 19pb2 20 pb3 21pb4 22pb5 23 pb6 24pb7 25 pc0 14pc1 15pc2 16pc3 17 pc4 13pc5 12pc6 11 pc7 10 rd5 wr36 a09 a18 reset35 cs6 u7 8255a r2 0.1kr30.1kr4 0.1k s1sw-pb2 sw-pb3sw-pb in 11 in 22 in 33 in 44 in 55 in 66 in 77 common8 clamp 9out 7 10out 6 11out 5 12out 4 13out 3 14 out 2 15out 1 16 u9 uln2003a(16) d03 q0 2d14 q1 5d27 q2 6 d38 q3 9d413 q4 12d514 q5 15 d617 q6 16d718 q7 19 oe1 le11 u8 74ls373 123 456 78 161514 131211 109 rp1 respack4 a bf cg dedpy 1234567a bc de f g8d p dpcom 9 ds1dpy_7-seg_dp a bf cg dedpy 1234567a bc de f g8d p dpcom 9 ds2dpy_7-seg_dp a bf cg dedpy 1234567a bc de f g8d p dpcom 9 ds3dpy_7-seg_dp a bf cg dedpy a 1 b 2 c 3 d 4 e 5 f 6 g 7f dp 8 dpcom 9 ds4dpy_7-seg_dp a bf cg dedpy 1234567a bc de f g8d p dpcom 9 ds5dpy_7-seg_dp a bf cg dedpy 1234567a bc de f g8d p dpcom 9 ds6dpy_7-seg_dp vcc vcc d0d1d2 dd4d5 d6d7 图 11 键盘和显示器接口电路的接线图 3.6 加热电路和报警装置 3.6.1 加热电路 电热器件由双向可控硅 ks 控制,ks 由光电耦合器 4n25 和晶体管 9013 触发。 单片机 8051 的 p2.0 端输出的触发信号,经 7407 后,送到光电耦合器 4n25。p2.0 端输出高电平时,4n25 没有电流输入,晶体管 t 截止,双向晶闸管 ks 关断,电热器 不加热。当 p2.0 端输出低电平时, 7407 输出低电平,4n25 的输入电流约为 18m,输 出端的电流大 3.6m,经晶体管 9013 放大后,双向可控硅门极的电流可达 200 m,双 向可控硅导通,电热器加热。电阻 的作用是限制触发电流,当双向可控硅 ks 的功率3r 较小时, 的值可由 30 改为 100。3r 10 c10 0.1uf 1 2 3 4 d6 bridge1 1 2 u16a7407 q3triac q29013 u154n25 t2 trans5 r8 100k r17 100k r15100k r16 res1 -5v p20 int 12 j2 con2 c123300uf r?res2 vcc 图 12 加热电路图 过零检测电路由变压器 b 的其中一个绕组 和电容器 组成。 产生 2.5v 的交流3l2c3l 电压,通过 交连到 int0 和 int1 端。int0 是过零检测端,它可对过零的上升信号检2c 测而产生中断;int1 也是过零检测端,它可对过零的下降信号检测而产生中断。把 into 和 int1 产生的中断综合处理,即可得到电源电压过零的时刻。 选用不同的电热器件,启动的过程也不一样。对于电阻率不随温度变化的电热器件, 可以直接启动,即在电压过零时触发双向可控硅 ks。对于电阻率随温度变化的电热器 件,通常使用降压启动方式,即开始通电时,电压逐渐上升,使电热器的工作电流在 ks 允许的范围以内。过一定的时间后,电热器件的工作电压才达到额定电压。 3.6.2 报警装置 首先通过按键对要达到的温度进行设定,通过加热装置对水进行加热,当加热温度 达到或超过设定值时,将加热信号送到 8051 中,通过微处理器处理后,输出到 口报1p 警,并通过三极管驱动扬声器或蜂鸣器报警。 11 r5 100k r7100k q1 pnp u14 buzzer vcc p1 图 13 报警装置的硬件电路图 12 4 单片机的软件设计 4.1 总的程序设计框图 按键处理 按键按下? 温度达到值? 开始加热? 温度采样 开始 初始化 结束 加热 停止加热 y y y n n 图 14 主程序流程图 本系统的软件实现没有高难度的技巧和算法,但作为一个实用系统,对其可靠性有 较高的要求。单片机的 i/o口方向是可编程的,在程序中应正确设置其方向,保证单片 机的正常工作。关于详细程序清单在此省略,图 21给出了主程序流程图,显示部分控 制是通过定时器中断来实现的。 13 4.2 8255 的程序设计 (1) 8255的程序的初始化 8255 的编程如下:由第四章可得 8255 各端口地址是: a 口地址:ff7ch b 口地址:ff7dh c 口地址: ff7eh 控制口地址: ff7fh 假设要求 8255 工作方式 0,且 a 口作为输出,b 口作为输出,c 口作为输入,则 工作程序如下: mov a,#81 h ;方式 0,a 口、b 口输出,c 口输入 mov dptr,#0ff7fh ;控制寄存器地址dptr movx dptr,a ;方式控制字 控制寄存器 mov dptr,#0ff7ch ;a 口地址dptr movx a,dptr ;从 a 口读数据 mov dptr,#0ff7dh ;b 口地址dptr mov a,data1 ;要输出的数据 data1a movx dptr,a ;将 data1 送 b 口输出 mov dptr,#0ff7eh ;c 口地址dptr mov a,data2 ;data2a movx dptr,a ;将 data2 送 c 口输出 (2) 对端口 c的置位/复位 8255 的 c 口 8 位中的任一位,均可用指令来置位或复位。例如,如果想把 c 口的 第 6 位 pc5 置 1,相应的控制字为 :00001011b=0bh,程序如下: mov dptr,#0ff7fh ;控制口地址dptr mov a,#0bh ;控制字a movx dptr,a ;控制字 控制口 ;pc5=1 如果想把 c 口的第 6 位 pc5 复位,相应的控制字为:00001010b=0ah。程序如下: mov dptr,#0ff7fh ;控制口地址dptr 14 mov a,#0ah ;控制字a movx dptr,a ;控制字送到控制口 ;pc5=0 4.3 键盘和显示接口电路程序设计 (1) 键盘和显示器的程序设计 8255 在 mcs-51 单片机应用系统中广泛用于连接外部设备,如打印机、键盘、显 示器以及作为控制信息的输入、输出口。 程序如下: dis: mov a,#00000011b ;8255pa、pa、pb 口为输出,pc 口为输入 mov dptr,#ff7ch ;8255 命令口地址送 dptr movx dptr,a ;写命令 mov r0,#50h ;5055h 单元存 6 个显示数据 mov r3,#7fh ;第 1 位 led 的位选码 7fh mov a,r3 again:mov dptr,#7f01h ;指向 pa 口 movx dptr,a ;位选码送 pa 口 mov a,r0 ;取显示数据 mov dptr,#dseg ;取段选码表首址 movc a,a+dptr ;取段选码 mov dptr,#7f02h ;指向 pb 口 movx dptr,a ;段选码送 pb 口 acall dl1ms ;延时 1ms inc r0 ;指向下一显示数据单元 mov a,r3 jnb acc.0,out ;6 位显示完,转 out rr a ;未完,调整为下一位选码 mov r3,a ajmp again ;继续显示下一位 15 out: ret ;子程序返回 dseg: db 3fh, 06h,5bh ;显示 0,1,2 db 4fh, 66h,6dh ;显示 3,4,5 db 77h,7ch,39h ;显示 a,b,c db 5eh,79h,71h ;显示 d,e, f dl1ms: mov r7,#01h ;延时 1ms 子程序 dl0: mov r6,#0ffh dl1: djnz r6,dl1 dlnz r7,dl0 ret 程序框图如图 15所示 选择下一位 开始 置段,位选码的初值 8255初始化 位选码 pb口 指向下一显示单元 延时 1ms 段选码 pa口 查段选码表 返 回 8255初始化 6位显示完否?n 图 15 程序框图 16 (2) 键盘扫描子程序 本方案中用延时 10ms 子程序进行软件消抖;通过设置处理标志来区分闭合键是否 已处理过。 图 16 程序流程图 6列完否? 开始 8255初始化 调显示子程序并熄灭子程 序 调全列置零扫描子程序 调全列置零扫描子程 序 调显示子程序延时约 10ms 有按键 否? 确有按 键? n n n n y y 定位键号 调显示子程序并熄灭显示 器 调全列置零扫描子程序 返回 按键释 放? n y y 17 在扫描键盘的过程中应兼顾显示器的显示。 程序如下: keysub: mov a,#00000011b ;8255pa、pb 口输出,pc 口输 入 mov dptr,#ff7fh ;控制字地址送 dptr ovx dptr,a ;向 8255 输出控制字 begin: acall dis ;调显示子程序 acall clear ;清零显示器,即熄灭 acall ccscan ;全列置零扫描,判有无按键按下 jnz ink1 ;有键按下,转 ink1 ajmp begin ink1: acall dis ;调显示子程序,延时 89ms acall dl1ms acall dl1ms ;共延时约 10ms 去抖 acall clear ;熄灭显示器 acall ccscan ;全列置零扫描,判是否确有按键按 下 jnz ink2 ;确有键按下,转 ink2 ajmp begin ;抖动引起,转回 begin ink2: mov r2,#0feh ;扫描第 1 列,置第 1 列为 0 mov r4,#00h ;列号送 r4 colum: mov dptr,#ff7dh ;指向 pb 口 mov a,r2 ;扫描码送 a movx dptr,a ;输出扫描码 inc dptr inc dptr ;指向 pc 口 movx a,dptr ;读出 pc 口 pop a kon: acall dis ;调显示,等待按键释放 acall clear ;熄灭显示 18 acall ccscan ;判按键是否仍按下 jnz kon ;键未释放,继续等待 pop a ;恢复键号到 a 中 ret ;返回 next: inc r4 ;列号加 1 mov a,r2 ;列扫描码送 a jnb acc.7,kerr ;全 6 列扫完,无按键,为干 扰,转 kerr mov a,r2 kerr: ajmp begin ;继续等待键输入 全列置零扫描子程序,以判定键盘是否存在某一键被按下,如无按键,a 中返回零。 ccscan:mov dptr,#ff7dh ;指向 pb 口 mov a, #00h movx dptr,a ;pb 口输出全零 inc dptr inc dptr ;指向 pc 口 movx a,dptr ;读 pc 口 cpl a anl a,#0fh ;屏蔽高 4 位 ret ;返回 熄灭显示器子程序,以防扫描键盘时,影响显示器的显示,因为显示器的位扫描线 与键盘列扫描线共用。方法是让段选码输出为 0,则不论显示器中各位是选通还是关闭, 均是熄灭显示。 clear: mov dptr,#ff7ch ;指向 pa 口 mov a,#00h ;段选码为 00h movx dptr,a ;pa 口输出全 0 ret ;返回 19 5 结论 本设计完成了单片机对电热水壶的控制。整个系统的关键电路是单片机控制电路, 该电路是整个控制的核心,完成信号的输入和输出的转换。另一个重要电路是温度检测 和加热控制电路,该电路完成了温度信号的采样和温度的控制,并通过 a/d 转换电路的 模数转换将信号送到单片机的控制电路中。还要通过程序的设计实现各功能,设计安全、 可靠,完全能够满足实际需要。 在本次设计中,本人掌握了一定的单片机硬件结构知识,设计出硬件电路,并通过 编程使部分硬件功能得到了实现,使书本上的知识得到了应用。由于条件有限,只编制 部分子程序,希望日后可以进行总体调试,以对系统做进一步的改进。 20 参 考 文 献 1 杨红科等.ht46r47 在电热水壶中的应用.微计算机信息 .2004 年. 2 李华等.mcs-51 系列单片机实用接口技术.北京航空航天大学出版社.1993 年 8 月. 3 张迎新.单片微型计算机原理、应用及接口技术.北京国防工业出版社 .2004 年. 4 清源计算机工作室.protel 99 se 电路设计与仿真.机械工业出版社.2001 年. 5 王树勋等.单片微机计算机原理与开发.机械工业出版社 .1989 年 8 月. 6 陈奥初等.单片机应用系统设计与实施.北京航空航天大学出版社 .1991 年 10 月. 7 何立民.单片机应用系统设计.北京航空航天大学出版社 .1990 年 1 月. 8 宋宏运,单片微机计算机原理及应用.重庆大学出版社 .1990 年 6 月. 9 张毅刚等.mcs-51 单片机应用设计.哈尔滨工业大学出版社.1990 年. 10 周明德.微型计算机硬件软件及应用.清华大学出版社 .1982 年. 11 刘光斌等.单片机系统实用抗干扰技术.人民邮电出版社 .2004 年 3 月. 12 王福瑞等.单片机测控系统设计大全.北京航空航天大学出版社 .2002 年. 21 附录 a 系统电路总图 22 d0 3 q0 2 d1 4 q1 5 d2 7 q2 6 d3 8 q3 9 d4 13 q4 12 d5 14 q5 15 d6 17 q6 16 d7 18 q7 19 oe 1 le 1 u674ls3 73 d0 34 d1 3 d2 32 d3 31 d4 30 d5 29 d6 28 d7 27 pa0 4 pa1 3 pa2 2 pa3 1 pa4 40 pa5 39 pa6 38 pa7 37 pb0 18 pb1 19 pb2 20 pb3 21 pb4 2 pb5 23 pb6 24 pb7

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论