摘 要

本文详细介绍了国内洗衣机控制系统的发展现状,发展中所面临的问题。从产品质量、性能及应用方面看洗衣机的差距,同时也详尽的介绍了此次设计中最重要的组成部件单片机的概念、工作原理及设备总体结构。根据洗衣机的控制要求,从功能要求、硬件设计、软件设计三个方面描述了一个以AT89C51单片机为核心的洗衣机控制电路系统。基于AT89C51单片机的洗衣控制系统,控制面板由按键、指示灯组成.按键选择洗衣机工作方式,指示灯配合按键工作。洗衣机的整体电路模块包括键盘矩阵、指示灯、电动机控制及电源电路.控制程序设计包括定时中断服务程序、外中断服务程序及主程序。

关键词:洗衣机;单片机;控制面板

该洗衣机控制电路系统的硬件电路框图如图4.1所示,在该硬件系统中主要由核心单元电路、进/排水阀控制电路、电机控制电路、按键和开关电路、输出控制电路、特殊功能电路、电源电路等单元组成。

图4.1 硬件电路框图

在设计过程中采用AT89C51作为控制核心。其中P1.0到P2.0分别控制标准经济、单独、排水、强洗、弱洗、洗涤、漂洗、脱水的LED指示灯。由于AT89C51每根I/O线的低电平驱动电流达到20mA,所有I/O线的总驱动电流达80mA,而这7个灯最多只有3个灯同时亮,每个灯只需3.5mA左右的电流,再算上其它I/O线的驱动电流,总电流也不会超过80mA,所以可这样直接驱动LED发亮;P3.0接程序选择键,P3.1接强弱选择键,P3.2接暂停/启动/解除警报键,P3.6接水位开关,用于进/排水过程中的水位控制,为CPU提供洗衣机水位信息,P3.7接盖开关,这是安全保护措施,P2.1来控制蜂鸣器,P2.2引脚来控制进水阀和进水状态显示灯,P2.3引脚来控制排水阀和排水状态显示灯,单片机的复位引脚RST接洗衣机的强制复位键。

进/排水阀电路图如图4.5所示:

图4.5 进、排水阀电路图

在控制系统中,分别用P2.2和P2.3两引脚控制进水阀和排水阀的开启和关闭。当引脚被设置为高电平,电磁阀开启:当引脚被设置为低电平,电磁阀关闭。

论文内容

仿真电路

程序

/***************************头文件***********************/
#include     <reg51.h>
/************************数据类型宏定义******************/
#define     uchar    unsigned char
#define        uint    unsigned int
/***********************使能、禁止宏定义*****************/
#define        Enable();    EA=1;
#define        Disable();    EA=0;
/********************程序选择功能标志宏定义**************/
#define        BIAOZHUN        0
#define        JINGJI            1
#define        DANDU            2
#define        PAISHUI            3
/********************强弱选择功能标志宏定义**************/
#define        QIANGXI            0
#define        RUOXI            1
/*******************进水、排水时间限制宏定义*************/
#define        T_JinShui        10        //4min*60s
#define        T_PaiShui        10        //1min*60s
#define        T_XiDi            10        //6min*60s
#define        T_PiaoXi_1        10        //4min*60s
#define        T_PiaoXi_2        10        //2min*60s
#define        T_TuoShui        10        //2min*60s
/**********************电机控制宏定义********************/
#define        ZHENGZHUAN        0
#define        STOP            1
#define        FANZHUAN        2
#define        ZhengZhuan();    PIN_Motor_A = 0; PIN_Motor_B = 1;
#define        Stop();            PIN_Motor_A = 1; PIN_Motor_B = 1;
#define        FanZhuan();        PIN_Motor_A = 1; PIN_Motor_B = 0;
/*******************暂停、继续控制宏定义*****************/
#define        ZanTing();        ET0 = 0; ET1 = 0; Stop();
#define        JiXu();            ET0 = 1; ET1 = 1;
/*************************管脚定义***********************/
//都是低有效,因LED是灌电流,而PNP也是低电平时导通
sbit    LED_BiaoZhun    =    P1^0;    //标准程序显示灯
sbit    LED_JingJi        =    P1^1;    //经济程序显示灯
sbit    LED_DanDu        =    P1^2;    //单独程序显示灯
sbit    LED_PaiShui        =    P1^3;    //排水程序显示灯
sbit    LED_QiangXi        =    P1^4;    //强洗状态灯
sbit    LED_RuoXi        =    P1^5;    //弱洗状态灯
sbit    LED_XiDi        =    P1^6;    //洗涤状态灯
sbit    LED_PiaoXi        =    P1^7;    //漂洗状态灯
sbit    LED_TuoShui        =    P2^0;    //脱水状态灯
sbit    PIN_BaoJing        =    P2^1;    //报警喇叭
sbit    PIN_JinShui        =    P2^2;    //进水控制
sbit    PIN_PaiShui        =    P2^3;    //排谁控制
sbit    PIN_Motor_A        =    P2^4;    //电机脚A
sbit    PIN_Motor_B        =    P2^5;    //电机脚B
sbit    K_SEL_ChengXu    =    P3^0;    //选择程序键
sbit    K_SEL_QiangRuo    =    P3^1;    //选择强弱键
sbit    p32                =    P3^2;    //
sbit    p33                =    P3^3;    //
sbit    SW_ShuiWei        =    P3^6;    //水位开关
sbit    SW_AnQuan        =    P3^7;    //安全开关
/************************函数申明***********************/
void Programme_PaiShui(void);
/*************************数据定义***********************/
uchar    flag_SEL_ChengXu;            //默认为标准程序,
bit        flag_SEl_QiangRuo;            //默认为强洗,1为弱洗
bit        flag_Run;                    //运行标志,1为运行
//bit        flag_ZanTing;                //暂停标志,1为暂停
bit        flag_JinShui;                //进水标志,1为进水
bit        flag_PaiShui;                //排水标志,1为排水
bit        flag_XiDi;                    //置洗涤标志
bit        flag_PiaoXi;                //置漂洗标志
bit        flag_TuoShui;                //脱水标志
bit        flag_BaoJing;                //报警标志
uchar     _50ms;                        //每50ms加一次的变量
uint    s;                            //秒
uint    T_S;                        //定时总时间
uchar    T_Motor;                    //电机控制时间
/*************************延时程序*********************/
void Delay_10ms(uint T1)
{    uint t1,t2;for(t1=0;t1<T1;t1++)for(t2=0;t2<1250;t2++);//10ms
}
/**********************管脚初始化程序******************/
void Pin_Init(void)    

编号1663,转发自:https://www.aiesst.cn/share.html

基于51单片机的全自动洗衣机系统设计-protues原理图、程序(转发)相关推荐

  1. 洗衣机控制系统c语言编程,采用C语言编辑基于51单片机的全自动洗衣机控制系统毕业论文.doc...

    采用C语言编辑基于51单片机的全自动洗衣机控制系统毕业论文 深 圳 大 学 本 科 毕 业 论 文(设计) 题目: 基于单片机设计的全自动 洗衣机控制器 姓名: 郑嘉泽 专业: 电子信息工程 学院: ...

  2. 洗衣机程序c语言代码大全,采用C语言编辑基于51单片机的全自动洗衣机控制系统毕业论文资料.doc...

    深 圳 大 学 本 科 毕 业 论 文(设计) 题目: 基于单片机设计的全自动 洗衣机控制器 姓名: 郑嘉泽 专业: 电子信息工程 学院: 信息工程学院 学号: 2009130099 指导教师: 李霞 ...

  3. 基于51单片机的全自动洗衣机设计

    硬件方案 全自动洗衣机的电路主要有电源.单片机最小系统.开关检测电路.控制按键输入电路和LED指示电路.继电器和电动机电路. 原理图如图: 仿真图如图: 设计功能 由独立式按键确定功能键,包括&quo ...

  4. 基于51单片机的智能门禁系统仿真LCD12864显示原理图程序

    硬件设计 本电路是由STC89C52 单片机为控制核心,射频卡信息由MFRC522模块读出,通过MCU在LCD12864上显示,通过按键完成密码验证和修改密码的功能.整个门禁系统框图如图3-1所示. ...

  5. 基于51单片机的全自动洗衣机仿真原理图程序方案设计

    设计总方框图 (末尾附文件) 原理图: 控制系统的功能 基于单片机洗衣机通过控制系统设定洗衣程序在洗涤脱水桶内自动完成注水.洗涤.漂洗.排水和脱水全过程.洗衣时控制系统打开进水电磁阀开始注水:当洗涤脱 ...

  6. 基于51单片机的全自动洗衣机控制系统仿真设计

    方案设计: 采用单片机设计,以 AT89C51 单片机为核心元件, 由时钟电路. 复位电路. 电源电 CPU 控制模块 电机调速控制模块 显示模块 电源模块 复位模块 时钟模块 控制模块 秒脉冲发生器 ...

  7. 基于51单片机PT100热电偶AD转换protues仿真设计

    基于51单片机PT100热电偶AD转换protues仿真设计 (源码+仿真) 仿真原版本:proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0023 这里写 ...

  8. 步进电机的计算机控制系统设计,基于.51单片机的步进电机控制系统设计.doc

    基于51单片机的步进电机控制系统设计 中文摘要 步进电机是一种受,并且能将相应的或者的电动机.由于步进电机具有步距误差不积累.运行可靠.结构简单.惯性小.成本低等优点,因此,被广泛使用于计算机外围电路 ...

  9. 基于51单片机的智能洗衣机

    提示:记录2022年4月做的毕设 文章目录 前言 一.任务书 1.1设计(研究)目标: 1.2设计(研究)内容: 二.设计思路 三.硬件 四.代码以及框图等资料 喜欢请点赞哦! 前言 基于51单片机的 ...

最新文章

  1. arcgis合并tif影像_微图影像地图导出拼接大图的参数说明
  2. python怎么避免浅拷贝_详谈Python中的深拷贝和浅拷贝
  3. 吐血推荐:win下如何安装tensorflow?只需两步!!
  4. 北航成AAAI 2021最大赢家,两篇一作斩获最佳论文、提名奖,研究皆与Transformer相关...
  5. cad记忆口诀_CAD制图口诀你值得拥有!
  6. pandas数据可视化_5利用Pandas进行强大的可视化以进行数据预处理
  7. LeetCode 107. 二叉树的层次遍历 II(队列)
  8. WDA演练一:用户登陆界面设计(一)
  9. BAT 鼎立格局被打破,2019 年这些互联网公司是程序员跳槽首选!
  10. linux hosts和hostname
  11. nginx实现共享以及实现原理
  12. 算法笔记-------快速排序
  13. 阿里云盘——新的屠龙勇士?
  14. 使用HTML5 select标签来实现更改网页背景颜色
  15. Spring boot 中使用 Thymeleaf
  16. 【solidity入门】4. 函数输出 Return
  17. 贪心——绝对值不等式——货仓选址
  18. 《COM技术内幕》笔记(1)
  19. K-means与高斯混合模型
  20. 选下拉框的的值对应上传相应的图片_excel表格下拉菜单调用对应数据,如何在excel中实现,选择下拉菜单某一项,该表格中就出现选项对应的数据?...

热门文章

  1. 快速搭建samba 简单samba服务
  2. Pixhawk原生固件PX4之添外置传感器MPU6500
  3. 双语web阅读器+书城设计与实现
  4. 寻求公正是一种心理病
  5. mysql用天兔监测什么_天兔监控服务器和mysql,redis等监控
  6. 基于saber软件的无源RC滤波器仿真
  7. 学好UG编程之后,为什么要学习自己制作UG后处理?
  8. 如何修改系统默认的ssh端口?
  9. 曼恩斯特在创业板注册生效:拟募资约5亿元,彭建林夫妇为实控人
  10. postman导出请求url_Postman教程——设置