基于单片机的洗衣机智能控制系统方案
基于单片机的全自动洗衣机控制系统设计

基于单片机的全自动洗衣机控制系统设计
本文基于单片机技术,设计了一种全自动洗衣机控制系统。
该系
统采用了微控制器作为主控芯片,利用多种传感器对洗衣机的运行状
态进行监控和反馈,并采用液晶显示屏和按键操作界面,实现了对洗
衣机的全面控制和调节。
首先,本文介绍了洗衣机控制系统的设计原则和功能要求。
针对
用户需求,系统应该具备自动化操作、清洗效果稳定、耗能低等特点。
为达到这些要求,设计人员利用已有的电子和机械技术,创新性地将
控制系统进行了完善和优化,使其在技术和应用水平上均能满足用户
的需求。
其次,本文阐述了洗衣机控制系统的硬件实现方案。
主要涵盖了
微控制器的选型、传感器的选择与应用、负载驱动模块的设计等方面,全面展示了整个控制系统的结构和工作原理。
接着介绍了系统关键部
件的详细设计方案,包括自动化程序的设计、数据采集与处理的方法、通信协议的制定等,为系统的良好运行提供了坚实的技术保障。
最后,本文对系统的实验结果进行了分析和评测。
从洗衣机的功耗、清洗效果、安全性、用户友好性等多个维度对系统进行了考核和
评估,并得出了较为准确和权威的测试结论。
结果表明,本文设计的
洗衣机控制系统在自动化程度、清洗效果、耗能等方面均优于传统洗
衣机,可以达到用户期望的高度。
综上所述,本文基于单片机技术,设计了一种全自动洗衣机控制
系统。
具备自动化操作、清洗效果稳定、耗能低等特点,具有广阔的
应用前景和市场潜力。
本文的成果对洗衣机的自动化控制技术和应用
研究具有一定的启发和参考价值。
基于51单片机的智能洗衣控制系统设计

基于51单片机的智能洗衣控制系统设计1. 引言智能家居技术的发展为我们的生活带来了诸多便利,其中智能洗衣控制系统是其中的一项重要应用。
本文旨在基于51单片机设计一种智能洗衣控制系统,通过对洗衣机的控制和监测,提高洗衣质量和用户体验。
2. 智能洗衣控制系统设计原理2.1 51单片机介绍51单片机是一种常用的微控制器,具有体积小、功耗低、易于编程等特点。
在本设计中,我们选择51单片机作为主要的控制器。
2.2 智能洗衣系统功能需求智能洗衣系统应具备以下功能需求:2.2.1 温度控制:根据用户设定的温度要求,自动调节水温。
2.2.2 洗涤程序选择:根据用户选择不同类型的布料和污渍程度,自动调节洗涤程序。
2.2.3 水位监测:通过传感器实时监测水位情况,并根据需要自动添加或排放水量。
2.2.4 电机驱动:通过电机驱动实现转筒运转、排放水等功能。
...3 实验结果与分析在实际实验中,我们成功地实现了基于51单片机的智能洗衣控制系统,并进行了多组洗衣实验。
通过对洗衣机的控制和监测,系统能够根据用户设定的要求进行智能化的洗涤操作,并在完成后自动停止。
4 总结与展望通过本次研究,我们成功地设计并实现了一种基于51单片机的智能洗衣控制系统。
该系统具备温度控制、洗涤程序选择、水位监测和电机驱动等功能,能够提高洗衣质量和用户体验。
然而,目前该系统还存在一些局限性,如对于特殊布料和污渍处理不够精细等。
未来工作可以进一步优化系统设计,并结合更多的传感器和算法来提高智能化程度。
5 致谢本次研究得到了指导教师的悉心指导与帮助,在此向他们表示诚挚的感谢。
同时也感谢参与本研究工作并提供支持与帮助的各位同学们。
6 附录附录中包含了本次研究中使用到的关键代码、电路图、数据表格等详细信息,以供读者参考。
通过对基于51单片机的智能洗衣控制系统的设计,本文详细介绍了系统的原理、功能需求、硬件设计和软件设计等方面。
通过实验验证了系统的可行性,并对实验结果进行了分析。
基于单片机的洗衣机的控制系统设计

基于单片机的洗衣机的控制系统设计一、洗衣机控制系统的功能需求分析洗衣机的主要功能是对衣物进行洗涤、漂洗和脱水。
为了实现这些功能,控制系统需要具备以下几个方面的能力:1、洗涤模式选择:用户能够根据衣物的材质和脏污程度选择不同的洗涤模式,如标准洗、快速洗、强力洗等。
2、水位控制:根据衣物的数量自动或手动选择合适的水位,以达到节约用水和提高洗涤效果的目的。
3、洗涤时间控制:不同的洗涤模式对应不同的洗涤时间,控制系统需要准确地控制洗涤过程的时间。
4、转速控制:在脱水阶段,需要根据衣物的重量和材质控制电机的转速,以确保脱水效果和保护衣物。
5、故障检测与报警:能够检测洗衣机运行过程中的故障,如电机过载、水位异常等,并及时发出报警信号。
二、硬件设计1、单片机选型选择一款适合洗衣机控制系统的单片机是至关重要的。
需要考虑单片机的性能、引脚数量、存储容量、价格等因素。
常见的单片机如STM32 系列、ATmega 系列等都可以满足需求。
2、传感器模块(1)水位传感器:用于检测洗衣机内的水位高度,常见的有压力式水位传感器和电容式水位传感器。
(2)衣物重量传感器:通过测量电机的负载来估算衣物的重量,从而为水位和洗涤时间的选择提供依据。
(3)转速传感器:用于检测电机的转速,以实现对脱水转速的精确控制。
3、电机驱动模块洗衣机的电机通常为交流电机或直流无刷电机,需要相应的驱动电路来控制电机的正反转、转速和启停。
可以使用专门的电机驱动芯片,如 L298N 等。
4、显示与按键模块为了方便用户操作和了解洗衣机的工作状态,需要设计显示模块和按键模块。
显示模块可以采用液晶显示屏(LCD)或数码管,按键模块可以采用薄膜按键或机械按键。
5、电源模块为整个控制系统提供稳定的电源,通常采用交流 220V 市电经过变压器降压、整流、滤波和稳压后得到所需的直流电源。
三、软件设计1、主程序流程系统上电后,首先进行初始化操作,包括单片机内部资源的初始化、传感器的校准、显示模块的初始化等。
基于单片机的洗衣机智能控制系统方案

全自动洗衣机的设计一、设计要求洗衣机的洗涤原理是由模拟人工洗涤衣物发展而来的,即通过翻滚、摩擦、水的冲刷等机械作用以及洗涤剂的表面活化作用,将附着在衣物上的污垢除掉,以达到洗净衣物的目的。
全自动洗衣机是常见的家用电器。
它能够按照预设模式自动地完成衣物的洗涤、漂洗和脱水,也可以单独地进行洗涤、漂洗和脱水操作,这些过程一般按时间进行控制。
通常在给定的模式下,根据衣物多少允许用户设置不同的水位,当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机,即可开始洗衣操作,为了提高洗衣效率,电机一般先正转若干秒,然后再反转若干秒。
另外,每个洗衣机都有容量限制,当洗衣量大于它的额定容量容量时,控制系统报警并且不启动。
本设计要实现的功能有:(1)用户参数的输入:用户根据衣物的数量和质地确定洗涤时间、漂洗次数、脱水时间,然后通过按键输入具体的参数。
(2)参数和时间的显示:灵活地运用数码显示管会带来许多方便,它可以用来显示用户实时所处的洗衣功能状态以及所剩时间。
(3)实时控制的实现:单片机在获取了用户输入的参数后,对其进行分析处理,然后按照计算结果对洗衣过程进行实时控制。
(4)水位检测的实现:水位的高低影响着整个洗衣过程的进行,因此需要水位检测器将水位的变化发送给单片机,单片机根据水位的情况确定下一步应该做什么。
(5)洗衣过程的实现:一般的洗衣过程包括注水、洗涤、漂洗、排水和脱水这些步骤。
在洗衣过程中,系统主要控制进水电磁阀、排水电磁阀的打开和关闭,电机的正转、反转和停止。
(6)洗衣完毕的通知:当洗衣过程结束后,蜂鸣器就报警通知用户洗衣完毕。
二、设计分析本设计在设计洗衣机的控制系统时,洗衣机通过控制系统设定洗衣程序,在内桶(洗涤脱水桶)自动完成注水、洗涤、漂洗、浸泡、排水和脱水全过程。
洗衣时,控制系统打开进水电磁阀,开始注水;当洗涤脱水桶内的水位达到系统设定值时,水位检测器向单片机发送一个低电平,通知控制系统关闭进水电磁阀,同时启动电机洗衣。
基于stm32单片机自动洗衣机毕业设计

基于stm32单片机自动洗衣机毕业设计本文介绍了一种基于STM32单片机的自动洗衣机设计方案,该方案利用STM32单片机实现洗衣机的控制和管理,使洗衣机具有自动化、可编程化的特点,使用户能够方便地控制和管理洗衣机。
一、设计方案该方案采用STM32F103C8T6单片机作为主控芯片,在单片机上编写程序控制洗衣机的运行。
洗衣机主要由水箱、电机、传感器和按键等组成。
1. 水箱水箱是洗衣机的主要组成部分,它用于存放衣物和水。
在洗衣机运行过程中,需要不断地加水和排水。
为了实现洗涤、漂洗和甩干等功能,水箱还需要配备上升、下降和翻转等功能。
2. 电机洗衣机采用直流无刷电机作为动力,这种电机具有功率小、噪音低、寿命长等特点。
电机既可以控制水箱的上升和下降,也可以控制水箱的翻转。
此外,电机还可以在不同的转速下实现不同的洗涤模式。
3. 传感器传感器用于检测洗衣机的状态和环境,例如水位、温度、湿度和气压等。
根据传感器的反馈信息,单片机可以控制电机和水阀等,实现洗衣机的自动化控制和调节。
4. 按键按键是洗衣机的输入部分,它用于向单片机输入命令。
洗衣机的命令主要包括开机、关机、加水、抽水、以及洗涤、漂洗、甩干等操作。
二、功能实现为了实现洗衣机的自动化控制和管理,我们需要在单片机上编写相应的程序。
程序主要包括以下功能:1. 加水和抽水控制单片机需要根据传感器的反馈信息,控制水阀和电机的开关,从而实现洗衣机的加水和抽水功能。
在加水和抽水的过程中,单片机需要控制水位和流量。
2. 洗涤、漂洗和甩干控制3. 温度和时间控制4. 显示和报警功能为了方便用户操作和控制洗衣机,单片机需要实现相应的显示功能。
通过液晶显示屏,用户可以随时了解洗衣机的状态和调节情况。
同时,单片机还需要实现报警功能,当洗衣机发生故障或异常操作时,自动报警提示。
三、总结。
基于单片机的全自动洗衣机系统设计

基于单片机的全自动洗衣机系统设计基于单片机的全自动洗衣机系统设计自动洗衣机作为现代家庭必备的家电之一,无疑给我们的生活带来了诸多便利。
随着科技的不断进步,洗衣机的功能也在逐步完善和智能化。
本文将介绍一个基于单片机的全自动洗衣机系统设计,该系统结合了传感器、执行器和单片机的控制,实现了洗涤、漂洗、脱水等一系列工作的自动化。
首先,我们需要了解单片机的基本原理和功能。
单片机是一种集成电路,拥有微处理器的功能,能够实现数据的处理、控制和通信等任务。
在全自动洗衣机系统中,单片机起到了控制中枢的作用,通过对各个部件的控制来完成洗衣过程。
在本系统中,我们需要使用多个传感器来获取洗衣机内部的信息。
例如,温度传感器可以检测洗衣水的温度,以便根据洗涤衣物的要求进行调整。
水位传感器可以检测洗衣机内部的水位,以确保水量的控制在适当的范围内。
此外,还可以使用压力传感器来检测洗涤和脱水的程度,从而调整相应的参数。
在洗衣机的控制中,单片机还需要根据洗涤过程的不同阶段来控制执行器的工作。
例如,在洗涤阶段,单片机可以控制洗衣机的电机以适当的速度旋转,同时根据不同程序要求来控制加热器的温度。
在漂洗和脱水阶段,单片机可以控制洗衣机内的叶轮进行高速旋转,从而有效去除衣物上的水分,使衣物更加干燥。
除了基本的洗涤功能外,现代洗衣机还具备一些智能化的特点。
在本系统中,单片机可以通过与用户界面的连接实现人机交互。
用户可以通过操作面板向单片机输入洗涤程序、选取适当的温度和转速等参数,单片机则根据用户的选择进行相应的控制。
同时,单片机还可以通过与互联网的连接,将洗衣机的状态和故障信息传输到用户的手机端,提醒用户维修等操作。
在设计全自动洗衣机系统时,还需要考虑到系统的安全性和可靠性。
例如,在电路设计中,应该安装过载保护装置,以防止电机过载、漏电等情况发生。
同时,还应该考虑到洗衣机的稳定性和耐用性,选用优质的材料和结构设计,以延长洗衣机的使用寿命。
综上所述,基于单片机的全自动洗衣机系统设计能够有效地提高洗衣效率和用户体验。
基于单片机的智能洗衣机控制系统设计

基于单片机的智能洗衣机控制系统设计一、本文概述随着科技的快速发展和人们生活水平的提高,家电产品逐渐向着智能化、自动化的方向发展。
洗衣机作为家庭日常生活中不可或缺的家电设备,其性能的优化和智能化升级显得尤为重要。
本文将详细介绍一种基于单片机的智能洗衣机控制系统设计,旨在提高洗衣机的自动化程度,改善用户体验,并实现节能环保的目标。
该控制系统以单片机为核心,结合传感器技术、电机控制技术、人机交互技术等多个领域的知识,实现洗衣机的智能控制。
通过传感器实时监测洗衣过程中的水量、温度、衣物重量等参数,单片机根据这些参数自动调节洗涤程序,以达到最佳的洗涤效果。
同时,系统还具备人机交互功能,用户可以通过简单的操作界面选择洗涤程序、设定洗涤参数,实现个性化洗涤。
本文首先将对智能洗衣机控制系统的总体设计方案进行介绍,包括硬件和软件的设计思路。
然后,详细阐述各个功能模块的实现方法,包括传感器模块、电机控制模块、人机交互模块等。
接着,对系统的硬件和软件进行集成和调试,确保系统的稳定性和可靠性。
对智能洗衣机控制系统进行性能测试和实验验证,以评估其实际应用效果。
通过本文的研究和设计,期望能够推动洗衣机行业的智能化升级,为用户提供更加便捷、高效、节能的洗涤体验。
也希望本文的研究方法和成果能够为相关领域的研究人员和技术人员提供有益的参考和借鉴。
二、单片机基础知识单片机(Microcontroller Unit,MCU)是一种集成电路芯片,采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。
单片机也被称为微控制器,它的应用领域非常广泛,包括智能家居、医疗设备、工业控制、航空航天等。
单片机的主要特点包括:集成度高,体积小,功耗低,可靠性高,控制功能强,扩展灵活,以及易于实现智能化控制等。
《2024年基于单片机的全自动洗衣机系统设计》范文

《基于单片机的全自动洗衣机系统设计》篇一一、引言随着科技的进步和人们生活水平的提高,全自动洗衣机已经成为了现代家庭不可或缺的家电之一。
为了提高洗衣机的智能化程度和用户体验,本文提出了一种基于单片机的全自动洗衣机系统设计。
该系统通过单片机控制,实现了洗衣过程的自动化、智能化,提高了洗衣效率,同时也方便了用户的使用。
二、系统设计概述本系统以单片机为核心控制器,通过连接各种传感器、执行器等外部设备,实现对洗衣过程的自动化控制。
系统主要由单片机控制模块、电机驱动模块、水位检测模块、温度检测模块、洗衣程序模块等组成。
三、硬件设计1. 单片机控制模块:本系统采用单片机作为核心控制器,负责接收用户输入的指令,控制各个模块的工作。
单片机具有体积小、功耗低、性能稳定等优点,能够满足系统的需求。
2. 电机驱动模块:电机驱动模块负责驱动洗衣机的洗涤电机和脱水电机。
本系统采用PWM(脉宽调制)技术,通过单片机控制电机驱动模块的开关,实现对电机的精确控制。
3. 水位检测模块:水位检测模块通过传感器实时检测洗衣机内的水位,将检测结果反馈给单片机,以便单片机根据水位情况调整洗衣程序。
4. 温度检测模块:温度检测模块通过温度传感器实时检测洗衣机内的水温,将检测结果反馈给单片机,以便单片机根据水温情况调整洗涤时间和洗涤剂的使用量。
5. 洗衣程序模块:洗衣程序模块根据用户的选择和洗衣的实际需求,通过单片机控制电机驱动模块、水位检测模块和温度检测模块等外部设备,实现对洗衣过程的自动化控制。
四、软件设计本系统的软件设计主要包括单片机的程序设计、人机交互界面设计和洗衣程序的设计。
1. 单片机的程序设计:单片机的程序设计是实现系统功能的关键。
本系统采用C语言进行编程,通过编写相应的程序代码,实现单片机的控制功能。
2. 人机交互界面设计:人机交互界面是用户与系统进行交互的窗口。
本系统采用LCD显示屏作为人机交互界面,通过编写相应的程序代码,实现用户与系统的交互功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全自动洗衣机的设计一、设计要求洗衣机的洗涤原理是由模拟人工洗涤衣物发展而来的,即通过翻滚、摩擦、水的冲刷等机械作用以及洗涤剂的表面活化作用,将附着在衣物上的污垢除掉,以达到洗净衣物的目的。
全自动洗衣机是常见的家用电器。
它能够按照预设模式自动地完成衣物的洗涤、漂洗和脱水,也可以单独地进行洗涤、漂洗和脱水操作,这些过程一般按时间进行控制。
通常在给定的模式下,根据衣物多少允许用户设置不同的水位,当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机,即可开始洗衣操作,为了提高洗衣效率,电机一般先正转若干秒,然后再反转若干秒。
另外,每个洗衣机都有容量限制,当洗衣量大于它的额定容量容量时,控制系统报警并且不启动。
本设计要实现的功能有:(1)用户参数的输入:用户根据衣物的数量和质地确定洗涤时间、漂洗次数、脱水时间,然后通过按键输入具体的参数。
(2)参数和时间的显示:灵活地运用数码显示管会带来许多方便,它可以用来显示用户实时所处的洗衣功能状态以及所剩时间。
(3)实时控制的实现:单片机在获取了用户输入的参数后,对其进行分析处理,然后按照计算结果对洗衣过程进行实时控制。
(4)水位检测的实现:水位的高低影响着整个洗衣过程的进行,因此需要水位检测器将水位的变化发送给单片机,单片机根据水位的情况确定下一步应该做什么。
(5)洗衣过程的实现:一般的洗衣过程包括注水、洗涤、漂洗、排水和脱水这些步骤。
在洗衣过程中,系统主要控制进水电磁阀、排水电磁阀的打开和关闭,电机的正转、反转和停止。
(6)洗衣完毕的通知:当洗衣过程结束后,蜂鸣器就报警通知用户洗衣完毕。
二、设计分析本设计在设计洗衣机的控制系统时,洗衣机通过控制系统设定洗衣程序,在内桶(洗涤脱水桶)自动完成注水、洗涤、漂洗、浸泡、排水和脱水全过程。
洗衣时,控制系统打开进水电磁阀,开始注水;当洗涤脱水桶内的水位达到系统设定值时,水位检测器向单片机发送一个低电平,通知控制系统关闭进水电磁阀,同时启动电机洗衣。
电机在系统的控制下进行正转、停、反转,通过传动机构带动波轮执行洗涤程序;当洗涤时间终了,控制系统切断电机电路,打开排水电磁阀,开始排水;然后再次注水,洗衣机进入漂洗状态,完成漂洗程序(通常为2次漂洗),再注水进行浸泡;浸泡完,开始排水,同时,排水电磁铁的动作带动减速离合器制动臂,使离合器棘轮与棘爪分离,制动带松开,为脱水程序作好准备;排水结束后,系统控制电机单方向高速运转,完成脱水程序;当脱水程序终了,系统控制排水电磁铁和电机断电,排水阀和减速离合器的制动臂复位,同时蜂鸣器奏响音乐,通知用户整个洗衣程序结束。
具有如下基本功能。
(1)不同模式时的弱强洗涤功能。
要求强洗时正反转驱动时间各为4S,间歇时间为2S;弱洗时正反转驱动时间各为3S,间歇时间为2S。
(2)6种洗衣工作程序,即标准程序,轻柔洗衣,快洗,单次洗衣,单漂和脱水程序。
标准程序是进水—洗涤—排水--脱水,如此循环3次,具体是第一循环为洗涤,时间为15min,中间洗涤为5min.排水时间采用动态检测,脱水时间第一二次为2 min的短脱水,下来是调漂洗程序。
最后为5min的长脱水.轻柔程序与标准程序一样,只是采用弱洗洗涤,循环同样为三次。
快洗同标准差不多,只不过洗涤6min,循环2次;单洗程序是进水—洗涤(15 min)—结束(留水不排不脱)。
单漂为进水—洗涤(10s)—排水如此循环3次;单脱程序是脱水(5min)—结束,时间确定与上述程序相应环节相同。
(3)进水系统故障自动诊断功能。
洗衣机在进水过程中,若超过预定的水位,就说明进水有故障,系统自动调整到预定水位。
(4)脱水期间安全保护和防振动功能。
洗衣机脱水期间,若打开机盖时,洗衣机就会自动停止脱水操作。
脱水期间,如果出现衣物缠绕引起脱水桶重心偏移而不平衡,洗衣机也会自动停止脱水,以免振动过大,发出警报待人工处理后恢复工作。
(5)间歇驱动方式。
洗涤期间采取间歇驱动方式,以便节能。
本系统要求正反转之间停2s,间歇期间靠惯性力使洗衣桶桶保持旋转。
(6)声光显示功能。
洗衣机各种工作方式的选择和各种工作状态均有声光提示和显示。
(8)过容保护功能:洗衣机在启动前若过容则报警提醒用户解决,待解决后才能启动洗衣。
三、硬件设计1、总体方案本设计以MCS-51单片机为核心,设计由电源、数字控制电路和机械控制电路三大模块构成的控制系统,实现对洗衣机整个洗衣过程的控制。
洗衣过程主要包括洗涤过程、漂洗过程、脱水过程。
根据洗衣过程的要求,控制程序设计主要包括主程序、内部定时中断服务程序、外部服务中断程序的设计。
根据设计要求,其基本系统组成框图如3.1所示。
2、器件及原理简介采用51系列单片机作为控制核心,主要包括电源部分、功能设置及控制电路、洗衣机状态显示及输出控制电路。
主要组成部件有:单片机、74LS138译码器、指示灯、LED显示器、电动机、蜂鸣器、电磁阀以及按键等。
根据洗衣机的基本功能,硬件电路设计需要考虑洗衣机的进水、洗涤、漂洗、排水、脱水等问题,及时间设定长短、工作时间或剩余时间的显示、工作过程中的暂停、启动、复位、洗完后的报警等问题。
通过单片机的P0口连接数码管发送段码,P2.4~P7口通过三极管扩大电流去控制数码管的位,显示时采用动态扫描方式,轮流循环扫描。
通过P1.6口连接蜂鸣器实现报警电路。
通过P1.0~P1.5口作为按键输入,并通过二极管连接到单片机的中断入口引脚,当有键按下,就会产生中断,执行相关按键的功能。
图3.1 系统组成框图四、软件设计单片机应用系统的软件设计是系统设计中最基本而且工作量较大的任务。
与系统机上操作系统支持下的纯软件不同,单片机的软件设计是在裸机的条件下进行的,而且随应用系统的不同而不同。
在软件中一般需考虑以下几个方面:1)根据要求确定软件的具体任务细节,然后确定合理的软件结构。
一般系统软件的主程序和若干个子程序及中断服务程序组成,详细划分主程序、子程序和中断服务程序的具体任务,确定各个中断的优先级。
主程序是一个顺序执行的无限循环的程序,不停地顺序查询各种软件标志,以完成对事务的处理。
在子程序和中断服务程序中,要考虑现场的保护和恢复,以及它们和主程序之间的信息交换方法。
2)程序的结构用模块化结构,即把监控程序分解为若干个功能相对独立的较小的程序模块分别设计,以便于调试。
具体设计时可采用自底向上或自顶向下的方法。
3)在进行程序设计时,先根据问题的定义描述出各个输入变量和输出变量之间的数学关系,即建立数学模型,然后绘制流程图,再根据流程图用汇编语言进行具体程序的编写。
4)在程序设计完成后,利用相应的开发工具和软件进行程序的汇编,生成程序的机器码。
本设计中系统软件是采用C51编写的.在研制单片机应用系统时,汇编语言是一种常用的软件工具,具有简单的语法结构和强大的处理功能,具有运行速度快、编译效率高,移植性好和可读性强等多种优点,可以实现对系统便件的直接操作。
用C语言来编写目标系统软件,可以大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而开发出大规模、高性能的应用系统。
1 、主程序设计系统的主程序设计主要完成系统初始化、中断优先级设定,以及调用其它各模块程序,即主要实现各模块程序的链接。
系统上电复位初始化后,首先进行系统初始化,包括中断的选择及设置,定时器的选择,定时时间,及其相关设置,初始化后,单片机进入主程序,在这“主程序”中不停的循环运行,除非有其它中断。
主程序流程图如图3.1所示。
图3.1 软件主流程图2、水位检测程序设计水位检测程序的原理是在洗衣机水箱中的适当高度放置两个水位检测器,当水位达到某一高度时,相应的水位探测器的开关接通,把电信号送入单片机的I/O口,经过单片机的处理,可以得到已经加好水或水放完,可以开始以下操作。
本设计用单片机P2.2~P2.3接口接两个水位传感器,在自动模式下,当水位到达某个传感器时,相应的传感器输出一个低电平到单片机的引脚,单片机通过引脚的电平高低来判断水位的高低。
基本流程是当最低点和最高点的两个检测点都显示低电平时说明洗衣机已经放满水;当检测到最高点从低电平变为高电平,经过一段时间后最低点也由低电平变为高电平时说明此时洗衣机放水完毕。
3、洗涤程序设计启动开关,进水阀通电,向洗衣机供水,当供水达到预定水位时,水位开关接通,进水阀断电关闭,停止供水。
洗涤电动机接通电源,带动波轮或桶旋转,产生各种形式的水流搅动衣物进行洗涤。
通过电动机不停的正转、停、反转、反复循环,形成洗涤水对洗涤物产生强烈的翻滚作用。
程序流程图如图4.2所示。
洗衣开始电机正转10S电机停转,延时电机反转10SN剩余时间=0?Y洗涤结束图4.2 洗涤过程程序流程图4、脱水、漂洗程序设计脱水前先打开排水阀排水,然后启动电动机脱水,并保持排水阀开启,然后停止脱水。
接着判断漂洗次数的值,若次数变为0则洗衣结束,开蜂鸣器提醒洗衣结束,系统返回初始待命状态,若次数不为0,则再次执行进水操作,进入下一循环。
程序流程图如图4.3所示:5、显示程序设计在本系统的设计中作为人机对话的一个重要部分就是显示器,本设计要显示定时时间,洗涤时间,还有其它指示灯的状态显示,为了节省单片机的I/O 口,把8个状态指示灯按照数码管的方式连接,即8个状态指示灯相当于一个数码管,这样硬件电路中相当于使用四位共阳LED 作为系统的显示器。
数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。
图 4.3脱水、漂洗程序流程图 N漂洗脱水开始开进水阀,漂洗结束 开排水阀,脱水开蜂鸣器,报警 关排水阀漂洗次数=0?Y静态显示驱动:静态驱动也称直流驱动。
静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码为十进制译码器译码进行驱动。
静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O 端口多。
动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划“a,b,c,d,e,f,g,dp”的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。
通过分时轮流控制各个数码管的的COM 端,就使各个数码管轮流受控显示,这就是动态驱动。
系统定期的扫描每个数码管,借助于人的视觉残留效应,使的数字得以正确显示,显示电路采用数码管动态扫描电路,占用单片机I/O口资源少,显示电路成本比较低,与静态扫描电路相比较,电路简单,成本低。