全自动洗衣机控制系统的设计
4.1.1 进水程序设计
当P3.1=1时打开进水电磁阀开始进水。当水位到达要求时,向CPU申请中断,中断允许后关闭进水电磁阀(P3.1=0),进水结束程序流程图如图4.2所示;
启动键按下 打开进水阀门 水位检测中断 1允许 N 是否 中断?
Y
N 是否 水满? Y 关闭进水阀门 图4.2 进水结束程序流程图
4.1.2 洗涤过程程序设计
根据R2的值确定洗衣强度,根据洗衣时间R3及洗衣次数R4确定洗衣定时时间。 程序流程图如图4.3所示:
20
全自动洗衣机控制系统的设计
启动洗衣定时器 洗衣开始 洗衣定时时 间? N Y 打开出水阀门 水位检测中断0允许? Y 是否 中断? Y 水是否 放空? Y N N 关闭出水阀门 R4=0? 脱水程序 图4.3 洗涤过程程序流程图
21
全自动洗衣机控制系统的设计
4.1.3 脱水过程程序设计
脱水前先打开排水阀排水。然后启动电动机脱水,设定脱水定时器时间,并保持排水阀开启,然后停止脱水。然后判断脱水时间是否结束,若剩余脱水时间为0则开蜂鸣器提醒洗衣结束,系统返回初始待命状态;若脱水没有结束则跳回继续执行脱水程序。程序流程图如图4.4所示。 开始脱水
启动脱水定时器
N 脱水时间 到否?
Y 关闭电动机
蜂鸣器5声
初始待命状态 图4.4 脱水程序流程图
4.2 外部中断设计
为了防止外部电压过高或过低对洗衣机的电器及控制硬件产生破坏用外部中断0进行保护如图4.5所示。当电压过高或过低时引起外部中断0,洗衣机停止一切动作进入保护状态。
用外部中断1来实现洗衣过程停止工作。在洗衣过程中当暂停键按下时引起外部中断1转入中断处理程序。中断1处理程序将使洗衣机停止工作并将停止前的状态存储起来。当按下启动键时洗衣机又恢复工作。程序设计流程图如图4.6所示。
22
全自动洗衣机控制系统的设计
中断入口
关电动机 报警5S 中断返回 图4.5 外部中断0程序流程图
中断入口 相关寄存器进栈
N 暂停否?
Y 相关寄存器出栈 置外部中断控制字 中断返回 图4.6 外部中断1程序流程图
23
全自动洗衣机控制系统的设计
第5章 调试
5.1 硬件调试
单片机应用系统的软硬件调试是分不开的通常是先排除明显的硬件故障后再和软件结合起来进行调试。常见的硬件故障有逻辑错误、元器件失效、可靠性差和电源故障等。在进行硬件调试时先进行静态调试用万用表等工具在样机加电前根据原理图和装配图仔细检查线路核对元器件的型号、规格和安装是否正确。然后加电检查各点电位是否正常。接下来再借助仿真器进行联机调试分别测试扩展的RAM、I/O口、I/O设备、程序存储器以及晶振和复位电路改正其中的错误。
第一步:在没通电之前先用万用表检查线路的正确性并核对元器件的型号、规格是否符合要求。特别注意电源的正负极以及电源之间是否有短路并重点检查地址总线、数据总线、控制总线是否存在相互间的短路或其他信号线的短路。晶体振荡器和电容应尽可能靠近单片机芯片安装,以减少寄生电容更好保证振荡器稳定和可靠地工作。在本系统中我们都进行了仔细的检查,所以此步骤不会发生故障,这一步如果检查不仔细通电后可能会造成不可想象的后果,所以这一步也至关重要。
第二步:通电后检查各器件引脚的电位仔细测量各点电位是否正常,尤其应注意单片机的插座上的各点电位,若有高压将有可能损坏单片机仿真器。同样如果电压过低就没有能力驱动其负载。
第三步:在断电的情况下除单片机以外用仿真插头将所连接电路与单片机仿真器的仿真接口相连,为软件调试做好准备。
5.2 软件调试
软件调试就是检查系统软件中的错误。常见的软件错误有程序失控、中断错误(不响应中断或循环响应中断)、输入/输出错误和处理结果错误等类型。要把各个程序模块分别进行调试,调试通过后再组合到一起进行综合调试达到预定的功能技术指标后即可将软件固化。系统的调试过程要结合具体的仿真器进行。
该系统的软件调试是把程序输入单片机,然后连接单片机仿真器进行模拟调试,在
24