基于AT89S51单片机的豆浆机系统设计.doc

上传人:good****022 文档编号:116440948 上传时间:2022-07-05 格式:DOC 页数:22 大小:435.18KB
返回 下载 相关 举报
基于AT89S51单片机的豆浆机系统设计.doc_第1页
第1页 / 共22页
基于AT89S51单片机的豆浆机系统设计.doc_第2页
第2页 / 共22页
基于AT89S51单片机的豆浆机系统设计.doc_第3页
第3页 / 共22页
点击查看更多>>
资源描述
基于AT89S51单片机的豆浆机设计 专业: 自动化0801 学生姓名: 段家骏 指导教师: 谢鹏华 完成时间: 2019年1月10日 - 20 -目 录第一章 绪论.11.1引言.11.2原理 .1第二章 设计方案 .22.1 设计思路.22.2 方案设计.2第三章 豆浆机控制系统的功能分析.33.1 控制系统的硬件分析.33.2 控制系统的软件分析.3第4章 豆浆机控制系统的硬件设计.44.1 电源电路设计.4 4.1.1 电源的作用 .4 4.1.2 电源的组成.4 4.1.3 电源工作原理.44.2 单片机的选用.5 4.2.1 单片机的简介.54.3 温度检测电路的设计.6 4.3.1 NTC热敏电阻温度传感器简介.6 4.3.2 ADC0809简介.7 4.3.3放大器LM324简介.9 4.3.4 四分频电路设计.11 4.3.5 NTC热敏电阻与单片机AT89C51的接口设计.114.4 加热及打浆电路的设计.124.5防干烧及防溢出电路的设计.134.6 报警电路的设计.134.7 复位电路的设计.144.8 时钟电路及按键设计.15第五章 豆浆机控制系统的软件设计.16附录 豆浆机控制系统程序清单.17第一章 绪论1.1 引言豆浆机是一种新型的家用饮用机,以黄豆为原料,直接加工成熟的热豆浆机。若在黄豆中配以芝麻、花生、杏仁等佐料,或者通过改变打浆、加热的时间,可以做出不同种类的豆浆饮料。豆浆机由粉碎黄豆的电机、豆浆机加热器和控制电路三大部分组成。用单片机研制的全自动豆浆机的控制系统,当放入适量泡好的黄豆,加入适量的冷水,把豆浆机的电源插头插入220V交流电源,豆浆机指示灯亮起,按下按钮,先对豆浆机进行水位检测,符合要求后电加热管开始对水进行加热,当水温达到80左右,豆浆机进行启动电机开始打浆,打浆电机按间歇方式打浆。打浆过后,开始对豆浆加热,豆浆温度达到一定值时豆浆上溢,当豆浆沫接触到防溢电极时,停止加热。然后间歇加热,最后进行豆浆的防溢延煮后发出声光报警信号。若缺水,则关闭加热器和电机,并发出报警声,直到关闭电源,加水后才能继续使用。只要按下启动按键并选择功能后,豆浆机就开始工作,一会儿就能喝到美味又营养的豆浆。整个过程由单片机全自动控制,让你用起来更加的方便、更加的安全。1.2 原理本设计原理如图1所示 AT89C51 温度传感器防溢电路放干烧电路时钟电路按键加热电路电机声光报警复位电路控制系统首先通过电源电路对系统供电,其中温度传感器、防溢电路、放干烧电路、时钟电路、复位电路、按键、均是输入部分,声光报警、电机、加热电路均是输出部分。通电后,单片机启动加热器加热,加热到80时停止加热,然后启动电机,电机通过旋转打豆,打豆完成之后,又通过加热器加热。其中复位电路是复位系统的,按键为工作功能选择键。第二章 设计方案2.1 设计思路由于以前的豆浆机,磨浆要过滤豆渣,豆浆熬煮也要自己动手,还要特别注意豆浆溢锅的问题,程序繁琐麻烦,给人们带来不便,针对这些情况拟定开发家用豆浆机全自动控制电路装置。家用豆浆机全自动控制装置是在单片机的程序控制下进行工作的。打浆时,插上电源插头,接通电源, 直接按“启动”键,控制电路控制豆浆机工作。先给黄豆加热,并由传感器检测温度,当温度达到80度左右时,停止加热。启动磨浆电机开始磨浆,运转20秒后停止转运,间歇10秒后再启动打浆电机,如此循环进行打浆6次或者4次。磨浆完后,开始对豆浆加热,豆浆温度达到一定值时,豆浆上溢。豆浆加工自动进入防溢延煮程序,豆浆加工完成后发出声光报警信号。2.2 方案设计单片机加热电路防干烧、防溢电路打浆电路温度传感器报警电路电源电路 方案设计框图方案如图所示, 由单片机、电源电路、温度传感器、放干烧电路电路、防溢电路、打浆电路、加热电路、报警电路等组成。先将黄豆放入豆浆的搅拌器滤网内,搅拌壶内倒入适量的水,装好搅拌机。接上电源,蜂鸣器长鸣一声,提示已接通电源,指示灯LED亮,处于待命状态。按下全自动启动键,开始加热,温度达到80度时,停止加热;搅拌马达运转,将黄豆粉碎,豆浆过滤,然后马达停转,又开始加热,直到豆浆沸腾煮熟,停止加热,发出报警声,提示豆浆已做好。若豆浆较长时间没喝而变凉,按下再加热键HEAT,加热至沸腾后,停止加热,发出报警声。若缺水,则关闭加热器和马达,并发出急促的报警声,直到关闭电源,加好水后才能工作。 选择这种方案的原因是:(1)加工方式是全自动。(2)粉碎黄豆前加热可以提高工作效率;缩短粉碎后加热至豆浆沸腾时间,防止粉碎后煮浆时间过长所易造成的糊锅现象。第三章 豆浆机控制系统的功能分析3.1 控制系统的硬件分析豆浆机的控制系统以单片机AT89C51为控制核心,结合控制传感器,加热及打浆电路,防干烧电路及防溢电路,声光报警等控制,达到只要启动豆浆机以后,所有的控制过程都实现完全自动化的目的。硬件上豆浆机的控制系统首先需要有一个单片机芯片作为控制核心来控制它的工作过程,开始时需要把水加热到80,这久需要一个温度传感器,这里采用NTC热敏电阻温度传感器,因为它灵敏度高、反应快,只是因为该温度传感器采用模拟量测量过,需要A/D转换。由于豆浆机需要使用防干烧电极防止出现干烧情况,所以这里采用一个探针来代替传感器。给豆浆机加热完毕后,需要启动电机开始打浆,这里选用单相串励电机,因为串励电机具有机动转矩大、过载能力强、体积小、重量轻等很多优点,并且改类型电机在家用电器使用很普遍。当打完浆后,需要对豆浆再次加热,这里就用到防溢的装置,与防干烧装置一样,沸腾溢出装置同样采用探针来替代了传感器。对豆浆防溢延煮后,预示着豆浆加工完成了,最后发出声光报警信号,这里选用一个报警器和发光二极管。3.2 控制系统的软件分析软件上就是对单片机的编程,在编程前需要画出一个流程图,根据豆浆机控制系统的设计要求及目的,即插上电源、按下启动按钮并且选择功能后,如果选择功能一(干豆),且没有出现水位过低的情况,先延时2秒,然后启动加热装置对水加热,(1)当水温达到了80左右,豆浆机停止加热。启动电机高速旋转打浆,先预打豆8秒然后停5秒,然后自动加热挂泡,停止加热10秒;(2) 进入打浆共6次,每次10秒,间隔6秒。(3) 停10秒后,再加热到挂泡,如此循环3次。(4) 停10秒后,继续(2)循环。(5) 停止10秒后,再加热到挂泡,如此循环6次。 完成后蜂鸣器提示音1秒一声,连续一分钟后转至每间隔10秒蜂鸣器滴一声提示音,表示工作结束。 如果选择功能二(湿豆),并且没有出现水位过低的情况,就启动加热装置对水加热,(1)水温达到了80左右,第一次预打豆8秒然后停5秒,然后自动加热挂泡,停止加热10秒。(2) 进入打豆10秒,然后停6秒,如此循环6次。(3) 停10秒后,再加热到挂泡,如此循环9次,完成后蜂鸣器提示音1秒一声,连续一分钟后转至每间隔10秒蜂鸣器滴一声提示音,表示工作进程结束。按照上述对豆浆机控制系统的要求,完成豆浆机控制系统设计的流程图后,对单片机进行软件设计的编程来配合硬件的设计以至于完成整个豆浆机控制系统的设计。豆浆机控制系统的电源电路第四章 豆浆机控制系统的硬件设计4.1 电源电路设计电源是各种电子设备必不可少的组成部分,其性能的优劣直接关系到电子设备的技术指标以及能否安全可靠的工作。目前常用的直流稳压电源分线性电源和开关电源两大类。随着集成电路飞速发展,稳压电路也迅速实现集成化市场上已有大量生产各种型号的单片机集成稳压电路。它和分立晶体管电路比较,具有很多突出的优点主要体现在体积小、重量轻、耗电省、可靠性高、运行速度快,且调试方便、使用灵活,易于进行大量自动化生产。4.1.1 电源的作用各种电子电路都要求用稳定的直流电源供电,由整流滤波电路可输出较为平滑的直流电压,但当电网电压波动或负载改变时,将会引起输出端电压改变而不稳定。为了获得稳定的输出电压,滤波电路的输出电压还应该经稳稳压电路进行稳压。4.1.2 电源的组成电源由电源变压器、整流电路、滤波电路、稳压电路组成。4.1.3 电源工作原理整个电源电路如图4.1所示,控制电路采用变压器降压、晶体二极管整流等方法获得工作电源。当电源接入220V交流电,TR1开始对220V交流电进行降压,从次级输出12V左右的低压交流电,从而适应电路的使用要求。整流硅对次级输出的交流电进行桥式整流,再由E2、C2进行滤波,已形成较平滑的直流电,送给三端集成正输出稳压器78L05进行稳压调整。经78L05稳压作用后输出+5V的直流电压,经E3、C3滤波后输出纹波很低的+5V电压,作为单片机的工作电源,以保证单片机工作时的稳定和可靠。4.2 单片机的选用 市面上的单片机很多,本设计采用AT89C51。AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(RAM),器件采ATMEL 公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元功能强大的AT89C51单片机可适用于提高许多高性价比的应用场合,可灵活应用于各种控制领域。4.2.1 单片机的简介(1)主要性能参数:兼容MCS-51产品指令系统完全兼容4K字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:0Hz-24MHz1288字节内部RAM32个可编程I/O口线2个16位定时/计数器6个中断源可编程串行UART通道低耗空闲和掉电模式(2)引脚功能引脚如图4.2所示4.3 温度检测电路的设计当豆浆机正常工作时,需要先加热到80左右的温度,然后停止加热继续下一步的工作,所以这就需要一个温度传感器来检测水温,这里我选用的是NTC热敏电阻温度传感器,选择它是灵敏度高、反应迅速;电阻值和B值精度高、一致性互换性好;采用双层密封工艺,具有良好的绝缘密封性和抗机械碰撞、抗折弯能力、稳定性好、可靠性高。4.3.1 NTC热敏电阻温度传感器简介热敏电阻传感器是对温度敏感的电阻器的总称,是半导体测温元件。按温度系数分为负温度系数热敏电阻(N TC)和正温度系数热敏电阻(PIC)两大类。NIC热敏电阻以MF为其型号,PIC热敏电阻以MZ为其型号。负温度系数热敏电阻大多是由Mn(锰)、Ni(镍)、Co(钴)、Fe(铁)、Cu(铜)等金属氧化物经过烧结而成的半导体材料制成,具有很高的灵敏度和良好的性能,被大量作为温度传感器使用。NTC负温度系数热敏电阻传感器是温度下降时它的电阻值会升高。在所有被动式温度传感器中,热敏电阻的灵敏度(即温度每变化1。c日寸电阻的变化)最高,但热敏电阻的电阻腽度曲线是非线性的。表4.2中数据是对Vishay - Dale热敏电阻系列测得的NIC热敏电阻器性能参数。表 4.2从数据可以看出:25时阻值为10的电阻,在0C寸电阻为28.1,60时电阻为4.086。与此类似,25时电阻为5的热敏电阻在0时电阻则为14.050。其中电阻值以一个比率形式给出(R。/R2),该比率表示当前温度下的阻值与25时的阻值之比,通常同一系列的热敏电阻器具有类似的特性和相同电阻温度曲线。热敏电阻传感器的测温接口电路4.3.2 ADC0809简介ADC0809是一种典型的A/D转换器。它是采用主次逼近方法的8位8通道A/D转换器。+5V单电源供电。转换时间在100us左右。ADC0809为28引脚,双列直插芯片,其引脚如图4.3所示。各引脚功能如下:IN0-IN7:8路模拟量输入端;D7-D0:8位数字量输出端口;START:A/D转换启动信号输入端;ALE:地址锁存允许信号,高电平有效;EOC:转换结束信号,高电平有效;OE:输出允许控制信号,高电平有效;CLK:时钟信号输入端;A、B、C:转换通道的地址; VREF(-):参考电源的负端;VREF(+):参考电源的正端;AD0809 的逻辑结构:ADC0809 是8 位逐次逼近型A/D转换器。它由一个8路模拟开关、一个地址锁存译码 器、一个A/D 转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道, 允许8 路模拟量分时输入,共用A/D 转换器进行转换。三态输出锁器用于锁存A/D 转换完 的数字量,当OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。 AD0809 的工作原理:N0IN7:8 条模拟量输入通道。ADC0809 对输入模拟量要求:信号单极性,电压范围是05V,若信号太小,必须进行放 大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。地址输入和控制线:4条 ALE 为地址锁存允许输入线,高电平有效。当ALE 线为高电平时,地址锁存与译码器将A, B,C 三 条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B 和C 为地址输入线,用于选通IN0IN7 上的一路模拟量输 入。通道选择表如表4.3所示。CBA选择的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7表4.3数字量输出及控制线:11条 ST 为转换启动信号。当ST 上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D 转 换;在转换期间,ST 应保持低电平。EOC 为转换结束信号。当EOC 为高电平时,表明转 换结束;否则,表明正在进行A/D 转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE1,输出转换得到的数据;OE0,输出数据线呈高阻状态。D7D0 为数字量输出线。CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,常使用频率为500KHZ,VREF(),VREF()为参考电压输入。 ADC0809 应用说明: ADC0809 内部带有输出锁存器,可以与AT89S51 单片机直接相连。 初始化时,使ST 和OE信号全为低电平。 送要转换的哪一通道的地址到A,B,C 端口上。 在ST 端给出一个至少有100ns 宽的正脉冲信号。 是否转换完毕,我们根据EOC 信号来判断。 当EOC变为高电平时,这时给OE 为高电平,转换的数据就输出给单片机了。图4.44.3.3放大器LM324简介LM324是四运放集成电路,它采用14脚双列直插塑料封装,外形如图所示。它的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。每一组运算放大器可用图4.6所示的符号来表示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。两个信号输入端中,Vi-(-)为反相输入端,表示运放输出端Vo的信号与该输入端的相位相反;Vi+(+)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。LM324的引脚排列见图4.5。 图4.5 图4.6由于LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使用,价格低廉等优点,因此被广泛应用在各种电路中。下面介绍其应用实例。同相交流放大器同相交流放大器的特点是输入阻抗高。其中的R1、R2组成1/2V+分压电路,通过R3对运放进行偏置。此电路可将输入交流信号分成三路输出,三路信号可分别用作指示、控制、分析等用途。而对信号源的影响极小。因运放Ai输入电阻高,运放A1-A4均把输出端直接接到负输入端,信号输入至正输入端,相当于同相放大状态时Rf=0的情况,故各放大器电压放大倍数均为1,与分立元件组成的射极跟随器作用相同。 电路的电压放大倍数Av也仅由外接电阻决定:Av=1+Rf/R4,电路输入电阻为R3。R4的阻值范围为几千欧姆到几十千欧姆。图4.7为典型的同相交流放大器线路。 图4.7测温电路感温探头采用一只硅三极管3DG6,把它接成二极管形式。硅晶体管发射结电压的温度系数约为-2.5mV/,即温度每上升1度,发射结电压变会下降2.5mV。运放A1连接成同相直流放大形式,温度越高,晶体管BG1压降越小,运放A1同相输入端的电压就越低,输出端的电压也越低。这是一个线性放大过程。在A1输出端接上测量或处理电路,便可对温度进行指示或进行其它自动控制。图3.8为典型的测温电路。图4.8比较器当去掉运放的反馈电阻时,或者说反馈电阻趋于无穷大时(即开环状态),理论上认为运放的开环放大倍数也为无穷大(实际上是很大,如LM324运放开环放大倍数为100dB,既10万倍)。此时运放便形成一个电压比较器,其输出如不是高电平(V+),就是低电平(V-或接地)。当正输入端电压高于负输入端电压时,运放输出低电平。图4.9为比较器接线电路。 图4.9使用两个运放组成一个电压上下限比较器,电阻R1、R1组成分压电路,为运放A1设定比较电平U1;电阻R2、R2组成分压电路,为运放A2设定比较电平U2。输入电压U1同时加到A1的正输入端和A2的负输入端之间,当UiU1时,运放A1输出高电平;当UiU2,则当输入电压Ui越出U2,U1区间范围时,LED点亮,这便是一个电压双限指示器。若选择U2 U1,则当输入电压在U2,U1区间范围时,LED点亮,这是一个“窗口”电压指示器。此电路与各类传感器配合使用,稍加变通,便可用于各种物理量的双限检测、短路、断路报警等。4.3.4 四分频电路设计四分频电路通过两个74LS74实现对输入脉冲的四分频,它的接线如图4.10 图 4.10引脚:11端与3端为原时钟输入端;5端与9端为变换后的时钟输出端;2端与6端联接,8端与12端联接;7端接电源负极、14端接电源正极;分频:1,2,3,4,5,6为一组,8,9,10,11,12,13为一组;如果要得到四分频,原时钟需接3端并且5端接11端,9端为四分频输出端;或者是原时钟接11端。4.3.5 NTC热敏电阻与单片机AT89C51的接口设计温度传感器与单片机AT89C51的接口设计如图4.11所示。热敏电阻的变化电压通过ADC0809转换后送给单片机,完成温度检测过程。AD0809的ADD A、ADD B、ADD C口接地。MSB口接单片机P0口,GND口、VREF(-)口接地,VCC、VREF(+)口接+5V,IN0口接放大器的输出口。CLOCK口接四分频脉冲输出口、四分频输入口接单片机ALE口,OE口通过或非门接单片机P2.0口及RD口,ALE、START口均通过或非门接单片机P2.0口、WR口,EOC口通过非门接INT1口。图4.11 温度传感器与单片机AT89C51的连接图4.4 加热及打浆电路的设计加热电路的作用是通过加热管把磨成粉末的黄豆煮熟,本设计使用的加热器的功率为800W;磨浆电路的作用是通过电机把黄豆搅拌成粉沫,电机选用的是单相串励电机,由于单相串励电动机具有起动转矩大、过载能力强、调速方便、体积小、重量轻等很多优点,在家用电器中普遍使用。单片机输出电流经三极管放大,来驱动继电器闭合,使加热管发热把豆浆煮熟。同理,继电器闭合使电机运转把黄豆搅碎。加热及打浆电路的工作原理如图4.12所示,加热及磨浆电路由继电器RL1、RL2,三极管Q1、Q2,电阻R14、R15以及二极管Dl、D2,单片机AT89C51。当单片机工作时,赋给Pl.l一个高电平,使三极管Q2饱和导通,电流流过继电器RL2,使触点闭合,于是加热管通电开始对水加热,当温度达到80度时,NTC温度传感器将温度信号传给单片机,单片机检测到这个信号后,使P1.1脚变为低电平,三极管Q2截止,继电器触点断开,电阻停止加热。加热结束后,单片机P1.0脚变为高电平,使三极管RL1饱和导通,从而让继电器触点闭合,于是电机通电开始打浆,在系统程序得控制下,电机进行打浆。电机运转20秒或者15秒后,单片机P1.0脚变为低电平,使三极管Q1截止,继电器触点断开,电机停止打浆,问歇10秒后,单片机P1.0脚又恢复为高电平,从而继续驱动电机工作,如此循环6次或4次后打浆结束。图4.124.5防干烧及防溢出电路的设计防干烧及防溢出电路的作用是以传感器作为信息采集系统的前端单元来控制自动豆浆机缺水时干烧及沸腾溢出等问题。这单采用探针作为传感器来检测水位及沸腾溢出,然后通过比较器输出高低电平,这样就可以通过单片机检测比较器输出电平的高低来检测水位及沸腾时的溢出状态。水位检测及沸腾溢出电路的原理如图4.13所示,K1,K2分别是水位检测传感器和沸腾溢出传感器,为了减少成本,这单采用探针来代替这两个传感器,使用中将接控制电路的公共点“地”,探针分别通过传输。单片机的P3.2,P1.3端连接。正常工作时,Kl被水淹没,它和地之问的电阻较小,与R13共同对+5V分压,U+得到比U-低的电平,比较器输出低电平。缺水时,Kl露出水面,它的电阻很大,R13共同对+5V分压,U+得到比U-高的电压,比较器输出高电平,通过非门后输出低电平产生下降沿。用软件检测比较器的电平变化,便知是否缺水。图4.13用同样的方法检测豆浆是否沸腾溢出。豆浆沸腾之前,电极K2远离水而,它和地之间的电阻很大,与R9共同对+5V分压,U+得到比U-高的电压,比较器输出高电平。豆浆沸腾时,泡沫淹没K2,电阻小,与R14共同对+5V分压,U+得到比U-低的电压,比较器输出低电平。用软件检测比较器的输出电平,便知豆浆是否沸腾溢出。4.6 报警电路的设计报警电路的作州是通过蜂呜器发出声音信号,提醒豆浆已经煮好了。声音信号电流从单片机的P1.5脚输入到蜂鸣器LSl发出声音。报警电路如图4.12所示,报警电路由单片机AT89C51与蜂鸣器LS1、发光二极管组成。通过事先编写的程序,在单片机的控制下,系统开始工作,当加热完成后,单片机P1.4、P1.5脚自动输出一个高低平,使蜂鸣器、发光二极管通电导通,于是蜂鸣器LS1发出报警,提醒豆浆加热完成。图4.12豆浆机控制系统的报警电路4.7 复位电路的设计一般的复位电路干扰易串入复位端,虽然在大多数情况下不会造成单片机的错误复位,但哟可能引起内部某些寄存器错误复位。在应用系统中,为了保证复位鼎炉可靠地工作,常将RC电路在接斯密特电路后再接入单片机复位端及外围电路复位端。如图4.13所示图4.13 复位电路4.8 时钟电路及按键设计该单片机控制系统采用内部方式产生。内部时钟电路如图4.14所示。外接晶体以及电容C1、C2构成并联谐振电路,接在放大器的反馈回路中,内部振荡器产生自激振荡,一般晶振可在212MHz之间任选。对外接电容值虽然没有严格的要求,但电容的大小多少会影响振荡频率的高低、振荡器的稳定性、起振的快速性和温度的稳定性。外接晶体时,C1和C2通常选30pF左右;外接陶瓷谐振器时,C1、C2的典型值为47pF。图4.14 时钟电路及按键电路按键电路是通过+5V和两个接在P1.6口、P1.7口连接形成通路,按键按下时,P1.6口(或P1.7口)产生高电平,单片机通过软件检测电平就可以知道是什么功能。第五章 豆浆机控制系统的软件设计 豆浆机控制系统硬件图 附录 豆浆机控制系统程序清单 ORG 0000H AJMP MAIN ORG 0003H AJMP FGS MAIN:SETB IT0 ;选择边缘触发方式 SETB EX0 ;允许外部中断0 SETB EA ;CPU允许中断 ;*功能选择程序* GNXE:JNB P1.6,GN1 干豆豆浆 JNB P1.7,GN2 ;湿豆豆浆 ;*富纤豆浆工作程序* GN1: SETB P1.1 ;启动加热 MOV R1,#1EH ;设置循环30次(延时30分钟) ACALL AA0 ;调用 MOV B,30H ;从30H中取温度值 MOV A,#50H ;设定温度为80度 DIV AB ;比较A、B大小,商存于A中 CJNE A,#00H,DJ1 DJNZ R1,GN1 ;*打浆程序* DJ1:CLR P1.1 ;停止加热 MOV R0,#6 ;循环六次 SETB P1.0 ;启动打浆 ACALL BB CLR P1.0 ACALL DD DJNZ R0,DJ1 ;*煮浆程序* ZJ1:SETB P1.1 ;启动加热 MOV R1,#1EH ;设置循环30次(延时30分钟) ACALL AA0 ;调用 JNB P1.3,FYYZ1 DJNZ R1,ZJ1 ;*防溢延煮程序* FYYZ1: CLR P1.1 ;停止加热 ACALL AA0 ;等待一分钟 SETB P1.1 ;启动加热 MOV R1,#8 ;设置循环8次(防溢延煮8分钟) ACALL AA0 ;调用 JB P1.3,FYYZ1 DJNZ R1,FYYZ1 ACALL BJ AJMP MAIN ;*浓香豆浆工作程序* GN2:SETB P1.1 ;启动加热 MOV R1,#1EH ;设置循环30次(延时30分钟) ACALL AA0 ;调用 MOV B,30H ;从30H中取温度值 MOV A,#50H ;设定温度为80度 DIV AB ;比较A、B大小,商存于A中 CJNE A,#00H,DJ2 DJNZ R1,GN2 ;*打浆程序* DJ2:CLR P1.1 ;停止加热 MOV R0,#4 ;循环四次 SETB P1.0 ;启动打浆 ACALL CC CLR P1.0 ACALL DD DJNZ R0,DJ2 ;*煮浆程序* ZJ2:SETB P1.1 ;启动加热 MOV R1,#1EH ;设置循环30次(延时30分钟) ACALL AA0 ;调用 JB P1.3,FYYZ2 DJNZ R1,ZJ2 ;*防溢延煮程序* FYYZ2:CLR P1.1 ;停止加热 ACALL AA0 ;等待一分钟 SETB P1.1 ;启动加热 MOV R1,#8 ;设置循环8次(防溢延煮8分钟) ACALL AA0 ;调用 JNB P1.3,FYYZ2 DJNZ R1,FYYZ2 ACALL BJ AJMP MAIN ;*子程序清单* ;*温度采集转换程序* WDZH:MOV A,#00H ;设置通道地址 MOV DPTR,#0FEFFH ;设置ADC0809的口地址 MOVX DPTR,A ;启动转换 ACALL DLT ;延时10us WAIT:JB P3.3,WAIT ;等待转换结束 MOVX DPTR,A ;读入转换结果 MOV 30H,A RET DLT:MOV R5,#05H ;延时10us DJNZ R5,$ RET ;*报警提示程序* BJ:MOV R3,0FFH CLR P1.4 ;光报警 CLR P1.5 ;声报警 ACALL EE CLR P1.4 CLR P1.5 ACALL EE DJNZ R0,BJ RET ;*延时程序* AA0:MOV R4,#3 ;延时一分钟 AA:MOV R5,#200 AA1:MOV R6,#200 AA2:MOV R7,#250 AA3:DJNZ R7,AA3 DJNZ R6,AA2 DJNZ R5,AA1 DJNZ R4,AA0 RET BB:MOV R5,#200 ;延时二十秒 BB1:MOV R6,#200 BB2:MOV R7,#250 BB3:DJNZ R7,BB3 DJNZ R6,BB2 DJNZ R5,BB1 RET CC:MOV R5,#150 ;延时十五秒 CC1:MOV R6,#200 CC2:MOV R7,#250 CC3:DJNZ R7,DD3 DJNZ R6,DD2 DJNZ R5,DD1 RET DD:MOV R5,#100 ;延时十秒 DD1:MOV R6,#200 DD2:MOV R7,#250 DD3:DJNZ R7,CC3 DJNZ R6,CC2 DJNZ R5,CC1 RET EE:MOV R5,#5 ;延时500ms EE1:MOV R6,#200 EE2:MOV R7,#250 EE3:DJNZ R7,EE3 DJNZ R6,EE2 DJNZ R5,EE1 RET ;*防干烧程序* FGS:CLR P1.0 CLR P1.1 ACALL BJ RETI END
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!