历史上的今天
今天是:2024年09月30日(星期一)
2021年09月30日 | 基于51单片机的全自动洗衣机设计
2021-09-30 来源:eefocus
一.硬件方案
全自动洗衣机的实现方案组成框图如图一所示。它主要有电源、单片机最小系统、开关检测电路、控制按键输入电路和LED指示电路、继电器和电动机电路。如图:

二.设计功能
(1)由独立式按键确定功能键,包括“标准”、“经济”、“单独”、“排水”、“强洗”、“弱洗”等等。
(2)排水与进水由时间控制;
(3)开机默认状态为标准方式、强洗;
(4)在洗涤和漂洗过程中,电动机正转一次,反转一次,连续运行;
(5)在进水和脱水过程中,相应指示灯亮,继电器吸合;
(6)当在执行某个步骤时,只有“K3”键有效,按下暂停,再按下恢复运行。
三.设计原理图
(1)原理图主要采用AD软件进行设计,如图:

(2)Protues仿真图如下:

四.软件设计
主程序源码
void main()
{
init();
while(1)
{
key(); //键扫描
if((num1==0&&num==0)&&circle==1) //标准 强洗
{
ledruoxi=1; //关闭弱洗LED
ledpaishui=1; //关闭排水LED
ledbiaozhun=0;//强标准LED亮
ledqiangxi=0; //强洗LED亮
if(num2==1)
{
qbiaozhun(); //强标准洗
}
if(num2>1) //K3键按下次数为2,暂停洗涤
{
;
}
circle=0;
}
if(num1==0&&num==1) //经济 强洗
{
ledruoxi=1;
ledbiaozhun=1;
ledqiangxi=0;
ledjingji=0;
if(num2==1)
{
qjingji(); //强经济洗
ledjingji=1;
}
circle=0;
}
if(num1==0&&num==2) //单独 强洗
{
ledruoxi=1;
ledjingji=1;
ledqiangxi=0;
leddandu=0;
if(num2==1)
{
qdandu(); //强单独洗
leddandu=1;
}
circle=0;
}
if(num1==0&&num==3)
{
ledruoxi=1; //排水 强洗
leddandu=1;
ledqiangxi=0;
ledpaishui=0;
if(num2==1)
{
dpaishui(); //单排水
ledpaishui=1;
}
circle=0;
}
if(num1==1&&num==0) //弱 标准
{
ledqiangxi=1;
ledpaishui=1;
ledruoxi=0;
ledbiaozhun=0;
if(num2==1)
{
rbiaozhun(); //弱标准洗
ledruoxi=1;
}
circle=0;
}
if(num1==1&&num==1) //弱经济
{
ledqiangxi=1;
ledbiaozhun=1;
ledruoxi=0;
ledjingji=0;
if(num2==1)
{
rjingji(); //弱经济洗
ledruoxi=1;
ledjingji=1;
}
circle=0;
}
if(num1==1&&num==2)
{
ledqiangxi=1;
ledjingji=1;
ledruoxi=0;
leddandu=0;
if(num2==1)
{
rdandu(); //弱单独洗
ledruoxi=1;
leddandu=1;
}
circle=0;
}
if(num1==1&&num==3)
{
ledqiangxi=1;
leddandu=1;
ledruoxi=0;
ledpaishui=0;
if(num2==1) //K3键
{
dpaishui(); //单排水
ledpaishui=1;
}
circle=0;
}
num2=0;
}
}
史海拾趣
|
我在linux下开发短信,使用开源的smstools来开发。 使用pdu模式时,发现对英语与数字可以很简单地实现。 但使用中文信息时,发现移动发过来的pdu报文解不正确。 如报文:测试 =“6D4B8BD5” 将两位一组转换为16进制数值,再转换为无符号字符。 ...… 查看全部问答> |
|
void serial() interrupt 4 using 1 { while(TI) { TI=0; } while(RI) { RI=0; SBUF=xx; } } 请问在这种情况下,SBUF=xx能执行吗?如果能, ...… 查看全部问答> |
|
哪位老大帮帮忙,因为有几个接口和JTAG重了,所以我在程序中加了GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENA ...… 查看全部问答> |
|
最近再使用STM8S207RB进行开发,以下是自己使用cosmic时遇到的一些常见问题: 1.printf/sprintf入口参数必须是u16类型,否则打印结果不正确,很奇怪 2.u32位类型的判断if ((val%0x1000) == 0)此判断前必须强制转换,即 if ((u ...… 查看全部问答> |
|
这几天焊了一批电路板,其中有几块在调试一段时间后莫名其妙的就给烧了,其中有两块明显的起火了,拆下来后有表测量,有的是××cc和GND短路,有的是Dvcc和GND短路了。自我感觉不会犯一些低级的错误,但就是想不通怎么会烧了,请大家帮忙想想,我这 ...… 查看全部问答> |




