




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、家用电热水器水温的测量与控制1简介11功能介绍 当前,热水器已成为日常生活中不可缺少的家用电器,设计制照更使用、更方便、更安全、更节能的热水器是产品设计师和生产厂家不断追去的目标。快热式电热水器与普通电热水器更大的区别在于它取消了储水罐,热水随开随用,无须预热,减少了电能浪费。另外,它还既有体积小,使用安全,安装方便等优点。其设计要求如下:用2位数码管显示出水温度,用1位数码管显示设定功率档位。温度检测显示范围为0099,精确度为1。设置3个轻触按钮,分别为电源开关键、“”键和“”键。加热功率分09档,按“”键一次递增至9档,按“”键一次递减至0。09档功率依次为0、1/9p、2/9p、3/9
2、p、4/9p、5/9p、6/9p、7/9p、8/9p、和p。出水温度超过65时停止加热,并蜂鸣报警,温度降到45以下时恢复。内胆温度超过105时停止加热,防止干烧。12方法论证按快热式电热水器的功能要求,决定采用如下图所示的模块组成系统,主要包括电源电路、单机片控制器、温度检测电路、按键输入电路、led数码管显示电路、报警电路和加热控制电路。8031单片机温度检测按键输入电源电路led显示加热控制蜂鸣报警过零检测快热式电热水器系统组成框图快热式电热水器为了达到“快热”的效果,取消了储水罐,使冷水在进入加热管后立即被加热,这就要求加热管有较大的功率。家用电热水器一般采用方便、可靠的电热丝加热方法
3、。根据热学及流体力学原理,结合实际实验室测试,可以得到水温与流量、加热功率之间的关系如表中所列水温值和流量值可以满足大多数家庭用户使用要求。当最大的加热功率为7.5kw时,按220v供电计算,电流约为34a,所以要求专线供电。水温与流量、加热功率的关系水流量温度功率/kw22.533.544.547423634325.554484138356.562544642387.57060514641注:进水温度为15,输入电压为ac220v.相关单位:水流量l/min;温度;功率kw。对于加热功率的控制,最简单的方法是由若干不同功率的电热丝组合得到几种加热功率,但由于快热式热水器的加热功率较普通的大,
4、且单位设置较多,用电热丝组合的方法需要几组电热丝和继电器,成本增高且工作可靠性降低,所以比较理想的是采用可控硅控制功率,电路简单又控制方便。温度测量的方法较多,最经典的方法就是用热敏电阻(或热敏传感器)组成电桥来采集信号,再经放大、a/d转换后送单片机。目前比较先进的方法是采用专门的集成测温传感器(如ds18b20),直接将温度转换成数字信号传送给单片机。为了简化电路,降低成本。本文采用了温度/频率转换电路简单可靠,成本低廉。2主要芯片及引脚功能介绍2.1 8031 8031单片机是intel公司生产的mcs-51系列单片机中的一种,除无片内rom外,其余特性与mcs-51单片机基本一样。在单
5、片机的40条引脚中有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制或与其它电源复用的引脚,32条输入/输出(i/o)引脚。 下面按其引脚功能分为四部分叙述这40条引脚的功能。 主电源引脚vcc和vss vcc(40脚)接+5v电压; vss(20脚)接地。 外接晶体引脚xtal1和xtal2 xtal1(19脚)接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,对hmos单片机,此引脚应接地;对chmos单片机,此引脚作为驱动端。 xtal2(18脚)接外晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部
6、振荡器时,对hmos单片机,该引脚接外部振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端;对xhmos,此引脚应悬浮。 控制或与其它电源复用引脚rst/vpd、ale/prog、psen和ea/vpp rst/vpd(9脚)当振荡器运行时,在此脚上出现两个机器周期的高电平将使单片机复位。推荐在此引脚与vss引脚之间连接一个约8.2k的下拉电阻,与vcc引脚之间连接一个约10f的电容,以保证可靠地复位。 vcc掉电期间,此引脚可接上备用电源,以保证内部ram的数据不丢失。当vcc主电源下掉到低于规定的电平,而vpd在其规定的电压范围(50.5v)内,vpd就向内部ram提供备用电
7、源。 ale/prog(30脚):当访问外部存贮器时,ale(允许地址锁存)的输出用于锁存地址的低位字节。即使不访问外部存储器,ale端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是,每当访问外部数据存储器时,将跳过一个ale脉冲。ale端可以驱动(吸收或输出电流)8个ls型的ttl输入电路。 对于eprom单片机(如8751),在eprom编程期间,此引脚用于输入编程脉冲(prog)。 psen(29脚):此脚的输出是外部程序存储器的读选通信号。在从外部程序存储器取指令(或常数)期间,每个机器周期两次psen有效
8、。但在此期间,每当访问外部数据存储器时,这两次有效的psen信号将不出现。psen同样可以驱动(吸收或输出)8个ls型的ttl输入。 ea/vpp(引脚):当ea端保持高电平时,访问内部程序存储器,但在pc(程序计数器)值超过0fffh(对851/8751/80c51)或1fffh(对8052)时,将自动转向执行外部程序存储器内的程序。当ea保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器。对于常用的8031来说,无内部程序存储器,所以ea脚必须常接地,这样才能只选择外部程序存储器。 对于eprom型的单片机(如8751),在eprom编程期间,此引脚也用于施加21v的编程电源(
9、vpp)。 输入/输出(i/o)引脚p0、p1、p2、p3(共32根) p0口(39脚至32脚):是双向8位三态i/o口,在外接存储器时,与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个ls型的ttl负载。 p1口(1脚至8脚):是准双向8位i/o口。由于这种接口输出没有高阻状态,输入也不能锁存,故不是真正的双向i/o口。p1口能驱动(吸收或输出电流)4个ls型的ttl负载。对8052、8032,p1.0引脚的第二功能为t2定时/计数器的外部输入,p1.1引脚的第二功能为t2ex捕捉、重装触发,即t2的外部控制端。对eprom编程和程序验证时,它接收低8位地址。 p2口(21脚至2
10、8脚):是准双向8位i/o口。在访问外部存储器时,它可以作为扩展电路高8位地址总线送出高8位地址。在对eprom编程和程序验证期间,它接收高8位地址。p2可以驱动(吸收或输出电流)4个ls型的ttl负载。 p3口(10脚至17脚):是准双向8位i/o口,在mcs-51中,这8个引脚还用于专门功能,是复用双功能口。p3能驱动(吸收或输出电流)4个ls型的ttl负载。 作为第一功能使用时,就作为普通i/o口用,功能和操作方法与p1口相同。 作为第二功能使用时,各引脚的定义如下所示。 口线引脚 第二功能 p3.0 10 rxd(串行输入口) p3.1 11 txd(串行输出口) p3.2 12 in
11、t0(外部中断0) p3.3 13 int1(外部中断1) p3.414 t0(定时器0外部输入) p3.5 15 t1(定时器1外部输入) p3.616 wr(外部数据存储器写脉冲) p3.7 17 rd(外部数据存储器读脉冲)值得强调的是,p3口的每一条引脚均可独立定义为第一功能的输入输出或第二功能。2.2 外部存储器2764 2764 eprom是具有28根引脚的双列直插式器件,图中给出其引脚排列图。2764具有8k(10248)字节容量, 共需要有13根地址线(213=8192) a12a0进行寻址,加上8条数据线d7d0、一条片选信号线ce、一条数据输出选通线oe、一条编程电源线vp
12、p及编程脉冲输入线pgm, 另外有一条正电源线ucc及接地线gnd,其第26号引脚为nc,使用时应接高电平。在非编程状态时upp及pgm端应接高电平。其中片选信号为保证多片存贮系统中地址的正确选择,数据输出选通线保证时序的配合,编程电源线及编程脉冲输入线可实现程序的电编程。 upp 1 28 ucc a12 2 27 pgm a7 3 26 nc a6 4 25 a8 a5 5 24 a9 a4 6 23 a11 a3 7 2764 22 oe a2 8 21 a10 a1 9 20 ce a0 10 19 d7 d0 11 18 d6 d1 12 17 d5 d2 13 16 d4 gnd
13、14 15 d3 2764 引脚排列图2764芯片由单一正5v电源供电,工作电流100ma,维持电流50ma,读出时间最大为250ns,是一种高速大容量eprom存贮器。其工作方式见下表。2764的工作方式引 脚方 式ce(20)oe(22)pgm(27)upp(1)ucc(28)输 出d7d0读00+5+5+5数据输出维 持+5v+5+5高 阻 态编 程00pp+5数据输入编程校验005vpp+5数据输出编程禁止+5vpp+5高 阻 态2.3地址锁存器74ls373 74ls373为三态输出的八d透明锁存器,输出端o0-o7可直接与总线相连。当三态允许控制端oe为低电平时,o0-o7为正常逻
14、辑状态,可用来驱动负载或总线。当oe为高电平时,o0-o7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端le为高电平时,o随数据d而变。当le为低电平时,o被锁存在已建立的数据电平。当le端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mv。 373引出端符号: d0d7-数据输入端oe-三态允许控制端(低电平有效) le-锁存允许端 q0-q7-输出端 2.4移位寄存器74ls16474ls164为ttl单向8位移位寄存器,可实现串行输入,并行输出。其中a.b(第1、2脚)为串行数据输入端,2个引脚按逻辑与运算规律输入信号,共一个输入信
15、号时可并接。clock(第8脚)为时钟输入端,可连接到串行口的txd端。clear(第9脚)为复位端,当r=0时,移位寄存器各位复0,只有当r=1时,时钟脉冲才起作用。q1q8(第3-6和10-13引脚)并行输出端可分别接led显示器的ha各段对应的引脚上。每一个时钟信号的上升沿加到clock 端时,移位寄存器移一位,8个时钟脉冲过后,8位二进制数全部移入74ls164中。在给出了8个脉冲后,最先进入74ls164的第一个数据到达了最高位。2.5数据锁存器74ls273是8位锁存器,内部包含了8个d触发器。其引线图及真值表如下:d0d7:8位数据输入端q0q7:8位数据输出端s:复位端,低电平
16、有效cp:脉冲输入端,在每个脉冲的上升沿将输入端di的状态所存在qi输出端,并将此状态保持到下一个时钟脉冲的上升沿。3系统硬件电路设计快热式热水器控制系统电路由7部分电路组成:单片机系统及外围电路、电源电路、按键输入电路、led数码管显示电路、报警电路、加热控制电路和温度检测电路。3.1 单片机系统及外围电路单片机是一个最小应用系统,但是,由于应用系统中有一些功能器件无法集成到芯片内部,如晶振电路、复位电路等,需要在芯片外加接相应的电路。另外,应该跟据单片机的具体运行情况配置片外存储器。 3.1.1晶振电路单片机虽然有内部振荡电路,但要形成时钟,必须外部附加电路,利用芯片内部的振荡电路,在x1
17、和x2引脚上外接定时元件,内部的电路便产生自激振荡。在本设计中,采用外接晶体与电容组成的并联谐振回路来实现内部振荡器产生单晶片工作所需的时钟信号。3.1.2复位电路在本设计中,采用上电复位电路,在上电瞬间,rc电路充电,reset引脚端出现脉冲,只要reset引脚保持10ms以上高电平,则单片机能有效复位。3.1.3存储器的扩展在设计的温度检测与控制系统中,选用的主芯片为8031,其内部没有程序存储器,所以必须在芯片外部进行程序存储器的扩展,在本设计中,eprom选择2764。因为8031内部装有数据存储器,在本系统中,需要处理的数据量不大,所以没有对系统进行数据存储器的扩展。由于8031单片
18、机的 p0口是分时复用的地址/数据总线,因此在进行程序存储器扩展时,必须利用地址锁存器将地址信号从地址/数据总线中分离出来。下面对系统进行程序存储器的扩展,2764与单片机的连接如下图所示:如图,2764中的a0-a7地址输入线与地址锁存器74ls373相连,a8-a12这5根地址输入线与8031的p2口的p2.0-p2.4直接相连,2764的q0-q7与8031的p0口相连,输出允许端oe与8031的psen相连,外部程序存储器选端接地,将74ls373的ce接地、g脚接8031的ale信号。在ale降为低电平时,p0口低八位地址被74ls373锁存保持。3.2 温度检测控制电路3.2.1温
19、度检测电路选择 温度检测电路主要任务就是将温度信号转化为电信号,我们设计了三种方案可供选择。 方案一 使用热敏电阻之类的器件利用其感温效应,将温度信号转换成电压或电流信号采集过来,进行a/d转换后传给单片机。方案二 利用反相器组成的rc多谐振荡器作温度/频率转换电路,直接将温度信号转换成频率信号,用单片机测出频率大小从而间接测出温度值。方案三 利用集成测温传感器(如ds18b20),直接将温度转换成数字信号传给单片机。在以上三个方案中,方案一需要用到a/d转换电路、感温电路,比较麻烦,成本较高。方案三需要用到集成测温传感器,成本也较高。方案二硬件电路最为简单、可靠,批量生产成本最低,故在此设计
20、中采用方案二,即用温度/频率转换电路。3.2.2传感器选择常用的温度检测元件主要有热电偶、热电阻、热敏电阻等。热电偶主要是利用两种不同金属的热电效应,产生接触电势随温度变化而变化,从而达到测温的目的。测温范围宽(-1802800摄氏度),测量准确,尤其是在高温区比其他类型传感器有更高测量精度,价格适中,线性度较好。但其输出电压受冷端温度影响,需要进行冷端温度补偿,使电路变得复杂,且在0100摄氏度内测量精度不如热敏电阻,在本设计中并非最佳方案。热电阻是利用金属的电阻率随温度变化而变化的特性,将温度量转化成电阻量。其优点是准确度高,稳定性高,性能可靠,热惯性小、复现性好。铂电阻物理化学性质稳定但
21、价格较高,铜电阻价格便宜但化学性质活泼,易氧化,都不易选用。热敏电阻由金属氧化物或半导体材料制成,利用其电阻随温度变化而变化的特征来测量温度,测温范围在-50150摄氏度,灵敏度高、热惰性小响应快、寿命长、体积小、价格便宜。但电阻值与温度是非线性关系,给较宽温区标度变换带来一定困难但可利用内部程序加以解决。在此设计中我们选用mf52型珠状ntc热敏电阻(mf52eb:标称电阻r=1000欧姆,材料常数b=3270k,工作温度范围-40+150摄氏度)。3.2.3rc环形多谐振荡器构成与工作原理rc环形多谐振荡器是在由三个反相器组成的振荡电路中加入rc环路,如图所示。它不但增大了环路延迟时间,降
22、低了振荡频率,而且通过改变rc的数值可以调节振荡频率。其中rs是限流电阻,值不大,约100欧姆。由于加入rc环路电路的振荡周期大大增加,逻辑门电路的传输延迟时间同其相比可忽略, rc环形多谐振荡器工作过程如下: 第一个暂稳状态(t1t2)设在t1时 uo由0上跳到1,则 ua由1下跳到0、 ub由0上跳到1。根据电容c的电压不能跃变的特点知必定引起一个rc电路的暂态过程。 首先,uc必定跟随ua下跳。这个负跳变保持uo为1。其次,由于ub为高电平、uc为低电平,故有电流通过电阻r对电容c进行充电,并使uc逐渐上升。在t2时uc上升到门电路的阈值电压ut,使uo由1下跳到0,则ua由0上跳到1,
23、ub由1下跳到0。 第二个暂稳状态(t2t3)首先,和第一个暂稳状态相似,各门电路的状态发生上述翻转后,由于电容电压不能跃变之故,uc必定跟随ua上跳。这个正跳变保持uo为0。其次,由于ub为低电平、uc为高电平,电容c经r及g2门开始放电,并使uc逐渐下降。在t3时uc下降到ut,使uo又由0上跳到1,开始重复第一个暂稳状态。uouaubuct1t2t3由于电容c的充、放电在自动地进行,故在输出端uo得到连续的方波,各点波形如图。其频率由电容的充放电的时间常数决定。经过估算,震荡频率f=1.1rc。3.3电源电路本设计中,采用了电压稳定的直流电源供电。小功率稳压电源的组成可以用图表示,它是由
24、电源变压器、整流、滤波和稳压电路等四部分组成。电源变压器是将交流电网220v的电压变为所需要的电压值,然后通过整流电路将交流电压变成脉动的直流电压。由于此脉动的直流还含有较大的纹波,必须通过滤波电路加以滤除,从而得到平滑的直流电压。但这样的电压还随电网电压波动、负载和温度的变化而变化。因而在整流、滤波电路之后,还需要接稳压电路。稳压电路的作用是当电网电压波动、负载和温度变化时,维持输出直流电压稳定。3.3.1整流电路整流电路的任务是将交流电变换成直流电。完成这一任务主要是靠二极管的单向导电作用,因此二极管是构成整流电路的关键元件。在小功率(1kw以下)整流电路中,常见的几种整流电路有单相半波、
25、全波、桥式和倍压整流电路。本设计中采用的是单相桥式整流电路。电路如图所示,图中t1为电源变压器,他的作用是将交流电网220v电压变成整流电路要求的交流电压。四只整流二极管结成电桥形式。桥式整流电路的优点是输出电压高,纹波电压小,管子所承受的最大反向电压较低,同时因电源变压器在正、负半周内都有电源供给负载,电源变压器得到充分的利用,效率较高。滤波电路用于滤除整流输出电压中的纹波,一般由电抗元件组成,如在负载电阻两端并联电容器c,或在整流电路输出端与负载间串联电感器l,以及由电容、电感组合而成的各种复式滤波电路。由于电抗元件在电路中有储能作用,并联的电容器c在电源供给的电压升高时,能把部分能量存储
26、起来,而当电源电压降低时,就把电场能量释放出来,使负载电压比较平滑,即电容c具有平波的作用;与负载串联的电感l,当带能源供给的电流增加时,它把能量存储起来,而当电流减小时,又把磁场能量释放出来,使负载电流比较平滑,即电感l也有平波的作用。滤波电路分为电容输入式(电容器c接在最前面)和电感输入式(电感器l接在最前面)。本设计属于小功率电源,因而采用电容输入式。3.3.2稳压电路电子设备中常使用输出电压固定的集成稳压器。由于它只有输入、输出和公共引出端,故称之为三端稳压器。三段稳压器由启动电路、基准电路、取样比较放大电路、调整电路和保护电路等部分组成。本设计中采用的就是输出电压固定的稳压器(780
27、5)。图中电路靠近引脚处介入电容c5、c9用来实现频率补偿,防止稳压器产生高频自激振荡和抑制电路引入的高频干扰,c6是点解电容,以减小稳压电源输出端由输入电源引入的低频干扰。3.4加热控制电路如图所示为加热控制电路原理图,电热丝的加热功率由双向可控硅控制,单片机通过光耦(moc3023)给可控硅触发信号,控制可控硅的导通角,从而控制电热丝的有效加热功率。为了在关机和超温保护的状态下能可靠地关断加热电源,电路中加入了继电器来控制加热电源。其中串联在继电器线圈回路的熔丝为105时,热保险丝会熔断,防止加热管干烧。与电热丝并联的led发光管用来指示电热丝的工作状态。主要器件介绍光控晶闸管光控晶闸管是
28、一种利用一定波长的光照信号作为触发信号的晶闸管。如图5。由于光信号和电信号有很好的隔离作用,绝缘性和抗干扰性优越,所以光控晶闸管常用于高电压电路中,如高压直流输电。双向晶闸管(双向可控硅)在交流电力控制电路中,为了对波形的正、负半周都进行控制,需要两只普通晶闸管的反并联结构。如图4。双向晶闸管具有正、负两个方向的导同性,可以看成是一对反并联的普通晶闸管,但其具有触发电路简单、工作稳定可靠的优点。固态继电器固态继电器是一种无触点通断功率型电子开关,又名固态开关,当施加触发信号后其回路呈导通状态,无信号时呈阻断状态。它没有任何可动部件或点,实现了具有电磁继电器的功能。随着半导体技术的不断发展,固态
29、开关性能不断提高,价格不断下降,在单片机应用系统中也更加广泛。固态继电器不仅实现了小信号对大电流功率负载的开关控制,而且还具有隔离功能。光耦器件 光耦器件也成为光电耦合器或着光电隔离器,它是一种以光为中间媒介来传输电信号的器件,通常把发光器件和光检测器封装在管壳内。当输入端加电信号时,发光器件发出光信号,光检测接收到光信号后就产生光电流,从输出端输出,从而实现了“电光电”转换。光电耦合器之所以能在传输信号的同时有效地抑制间脉冲和各种噪声干扰,大大提高通道上的信噪比,其主要原因如下:.光电耦合器的输入阻抗很小,只有几百殴,而干扰源阻抗较大,通常为几百千欧。有分压原理可知,即使干扰电压的幅度较大,
30、但馈送到光电耦合器输入端的噪声电压很小,只能形成微弱的电流,由于没有足够的能量而不能使二极管发光,从而被抑制。.光电耦合器的输入回路与输出回路之间没有电气联系,也没有共地,之间的分布电容极小,而绝缘电阻又很大,因此回路一侧的各种干扰噪声都很难通过光电耦合器馈送到另一侧,避免共阻抗耦合的干扰信号的产生。光电耦合器的主要优点是单向传输信号,输入端和输出端完全实现了电器隔离,抗干扰能力强,使用寿命长。光电耦合器还适用于对响应速度要求很高的场合,它的响应速度快。3.5过零检测电路可控硅出触发信号中需要对市电进行过零检测,以实现触发脉冲的相位延时。本电路中是利用三极管8050和一个“非”门实现过零检测的
31、,电路如图所示。3.6独立式键盘接口设计独立式按键就是各按键相互独立。每个按键各接一根输入线,可直接与cpu的i/o口相接,一根输入线上的按键工作状态不会影响其他输入线上的工作状态。因此通过检测输入线上的电平状态可以很容易判断哪个按键被按下了。独立式按键电路配置灵活,软件结构简单。但每个按键占用一根输入口线,在按键数量较多时输入口浪费大,故此种键盘适用于按键较少或操作速度较高的场合。3.7led显示及其接口电路线led显示块是由二极管显示字段组成的显示器。这种显示块有共阳极和共阴极两种组成。本设计采用共阳极设计,共阳极led显示块的发光二极管的阳极连接在一起,此公共阳极接正电压。当某个发光二极
32、管的阴极接低电平,发光二极管被点亮,相应的段被点亮。在单片机应用系统中,显示器显示常用两种方法:静态显示和动态扫描显示。所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的i/o接口用于笔划段字形代码。这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中cpu的开销小,占用i/o资源较多;需要大量的硬件来实现锁存,代价昂贵,本设计中采用动态显示,将所有的段选线(数据线)并联在一起,由一个8位的接口电路控制,而共阳极点分别由相应的8031的i/o口线控制。位选码控制i/o口在该显示位送入选通电平以保证该位显示相应字
33、符。如此轮流,使每位显示该位应显字符,并保持延时一段时间,即逐个地循环点亮各位显示器。当扫描频率足够高时,利用人眼的视觉残留效应(约几十毫秒),看起来如同全部显示器同时显示一样,以达到显示的目的。由于8031做外部存储器扩展后剩余i/o接口不多,故本设计利用8031的串行口显示接口,使用口资源比较少,只用p3口的rxd和txd应用8031的串行口方式0的输出方式,在串行口外接8位位移寄存器74ls164构成显示器接口。位移寄存器74ls164的qaqh口作为8位led的段码输出口。当8031串行口工作在方式0的发送状态时,串行数据由p3.0(rxp)送出,位移时钟由p3.1(txd)送出。在位
34、移时钟作用下,串行口发送缓冲器的数据一位一位地从p3.0移入74ls164中。但是,由于74ls164并无输出控制端,因而在串行输出过程中,其输出端的状态会不断变化,故在此设计中在74ls164的输出端应加接三态门或所存器控制,以便保证串行输入结束后再输出数据。我们选用8位锁存器74ls273控制位移寄存器输出。其数据输入端(d0d7)接位移寄存器输出端(q0q7),脉冲输入端cp由8031的p3.4控制。当8位led的段码输完后,在cp输入一上升沿将输入端d0d7的状态锁存在q0q7输出端点亮相应的led,并将此状态保持到下一个时钟脉冲的上升沿。3.8报警电路在本设计中,采用单频音报警电路,
35、其发音元件采用压电蜂鸣器,这种蜂鸣器只需在其两引线上加3-15v的直流电压,就能产生3khz左右的蜂鸣振荡音响,适合在单片机应用系统中使用。p1.5接晶体管基极输入端,当p1.5输出低电平“0”时,晶体管导通,压电蜂鸣器获得电压而发出报警鸣音,p1.5输出高电平“1”时,三极管退出导通状态,蜂鸣器停止发音。4系统程序的设计根据软件部分设计思路,根据应用系统的功能要求编写程序分为如下:(1)首先确定一些常数、地址。这些常数、地址在设计硬件阶段已被直接或间接地确定下来。如当某器件的连线设计好后,其端口地址就确定了,当器件的功能被确定下来后,其控制字也就确定了。(2)在pc机上编写用户程序。(3)运
36、行仿真软件,对源程序进行汇编,查错,形成机器码。 由于条件限制,根据设计要求思想,我们只针对硬件设计中确定的常数、地址完成几个程序的设计。具体为主程序设计和加热控制程序设计。而运行仿真软件部分,以及烧写到芯片上等步骤都不在本设计中出现。 在程序编写过程中,可以采用汇编语言或c语言两种高级语言来完成。汇编语言即是指用助记符形式的指令来编写程序。具有结构简单,执行速度快,程序易于优化,编译时占用存储空间少的优点。但是,其可读性差,需要熟悉指令系统,编者要有一定的程序设计经验。而对于c语言来说,虽然其程序实时性不强,机构不够紧凑,且编译后占用存储空间比较大,但由于其程序可读性高,通用性强,适用于不熟
37、悉单片机的指令系统的用户。所以,我们决定采用c语言来进行程序设计。按快热式热水器的功能,系统程序必须实现显示扫描、按键扫描处理、加热控制和温度检测(包括超温报警)4项任务。51系列单片机实现多任务运行的方法就是分时复用,在程序设计时要相应的分配好各任务的cpu占用时间。对于以上几个任务稍加分析可以看出,显示扫描和加热控制任务相对而言有实时要求,而温度检测任务则可以用定时(0.51s)实现。4.1 主程序系统在上电复位后,先对温度寄存器、档位寄存器赋默认值,并进行清除超温标志,设置定时器及中断系统的工作方式等初始化工作。由于51系列单片机没有停机指令,所以可以利用主程序设置死循环反复运行各个任务
38、。把有实时要求的子程序(显示扫描、按键扫描、加热控制)放在最内层的循环中,计算其运行一次占用的cpu时间,然后根据温度检测定时的间隔时间,计算出该循环的循环次数。本例中每运行一次有实时要求的子程序(即显示扫描、按键扫描、加热控制)约占用5mscpu时间,运行测温子程序的时间间隔为0.5s,那么循环次数应为100次。4.1.1主程序流程图开 始系统初始化按键扫描显示扫描完成100次循环?温度检测刷新显示温度、档位加热控制4.1.2 主程序清单以下是快热式电热水器控制程序的主程序部分。第一部分为整个程序的函数声明以及变量定义。/*-快热式热水器程序mcu 8031 xal 12mhz-*/ #in
39、clude /源程序文件需要包含其他源程序文件时,应在本程序头包含8031的sfr寄存器#includevoid delay(unsigned int ); /延时函数void display(void); /显示函数unsigned char keyscan(void); /按键扫描处理函数void heatctrl(void); /加热控制函数void temptest(void); /测温函数sbit swkey = p1o; /开关键sbit upkey = p11; /加热档位“+”键 sbit downkey = p12; /加热档位“-”键sbit buzz = p15; /蜂鸣
40、器输出端sbit triac = p16; /可控硅出发信号输出端sbit relay = p17; /继电器控制信号输出端 signed char data ctemp; /当前测得水温寄存器unsigned char data dispram3=0x10,0x10,0x10; /显示区缓存unsigned char data heatpower,px0count; /加热档位寄存器、外中断0计数器bit tempov; /超温标志/*-主函数 void main(void)无参数,无返回值循环调用按键扫描、显示扫描和加热控制函数-*/void main(void) unsigned cha
41、r i; ctemp = 15; /初始化水温寄存器heatpower = 5; /初始化加热档位为5档tempov = 0; /清除超温标志swkey =0; /默认开关键被按下,进入待机tmod = 0x11; /设定t0和t1工作方式为16位定时器 tcon = 0x05; /设置外中断0和1为下降沿触发ip = 0x01; /设置外中断0优先 ie = 0x80; /打开总中断while (1) for(i=0;i送显示段码选通并延时2ms改变位选字消隐4.4按键扫描处理子程序 按键扫描子程序负责逐个扫描档位“+”键、档位“-”键和开关键是否被按下,若有按键被按下,则作出相应处理。4.
42、5温度检测程序温度检测程序的基本原理就是将温度/频率转换电路测得的频率与事先建立好的温度/频率表进行比较,查出与该频率相应的温度值。在实验测试后建立的温度/频率表是0100c温度所对应的频率值。它是一个频率对应于温度递减的非线性函数,在c语言中用一个一维数组tab101来表示,下标为温度,数组元素为频率值。计算温度的方法采用高效、准确的二分法查表。5系统的抗干扰措施在设计微型机时,应注意总线的驱动能力;总线的终端负载;防止总线竞争;在有干扰时,采取措施,保证微型机正常工作。在微型机电路板设计时,应遵循数字电路板设计的原则。各芯片的电源到地之间加滤波电容;芯片不用的输入端应小心处理,不要悬空;采用加阻尼的办法减少信号的辐射。对于开关信号的隔离,是比较容易做到且代价不高。例如,使用光电隔离器或使用继电器都可以。应采用滤波电容,引线尽可能短,平行走向的引线不要太长,以减小冲击电流的影响。(1)电源电路的抗干扰措施采用性能好的稳压电源。目前,最常用串联调整稳压的电源或开关式稳压电源。无论采用哪一种,都必须消除自激,减小波纹,抑制在稳压电源中出现的噪声,使它既不能引入外来的干扰,又保证自身不产生干扰。(2)光电耦合隔离措施采用光电耦合可以将主机与前向、后向以及其他主机部分切断电路
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 说明文阅读课件完整
- 2025木材采购合同
- 语法操练课件
- 红酒原料知识培训课件
- 2025加强合同管理提升工程施工业绩
- 2025国际融资租赁合同
- 诗词知识培训内容课件
- 2025咨询服务合同范本(合同版本)
- 红楼色彩课件
- 产品研发联合开发协议书要求
- 2025云南广南民族文化旅游产业有限公司招聘14人笔试备考试题及答案解析
- 2025年【秋】【初三】【九年级】开学第一课主题班会:奋楫启航征初三 青春执笔赢未来
- 1.2细胞的多样性和统一性(教学课件) 高中生物人教版(2019)必修第一册
- 精神科护工安全知识培训课件
- 2025年新学校军训合同协议书
- 邯郸市永年区实验中学2024-2025学年九年级上学期开学考试道德与法治试卷(含答案)
- 2025年度剧院设施全面维修与日常维护服务协议
- 学易金卷:段考模拟君之2025-2026学年高一化学下学期期末考试原创模拟卷01(考试版)
- 土地要素保障课件教学
- 2025年海南省通信网络技术保障中心招聘事业编制人员考试试题(含答案)
- 2025秋新版一年级上册语文教学计划+教学进度表
评论
0/150
提交评论