单片机洗衣机课程设计.docx
《单片机洗衣机课程设计.docx》由会员分享,可在线阅读,更多相关《单片机洗衣机课程设计.docx(18页珍藏版)》请在冰豆网上搜索。
单片机洗衣机课程设计
单片机洗衣控制系统课程设计报告
摘要
单片机是计算机家庭的一个重要分支,它具有体积小、价格低、面向控制的特点,适用于各种工业控制、仪器仪表装置,在人类生产和生活的各个领域都有极为广泛应用。
本洗衣机控制系统,采用目前常用的89C51单片机,用汇编语言的编程方法,完成对洗衣机洗衣全过程的自动控制,并采用LED数码显示洗衣过程代码和洗衣剩余时间,洗衣完成后能自动报警。
使全自动洗衣机的使用更加简单、直观和方便。
本设计取材容易,结构简洁,易于制作,具有一定的实用价值。
关键字:
单片机、汇编语言、动态扫描
目录:
1.绪论3
1.1设计目标3
1.2设计目标3
1.3设计意义3
2.硬件设计4
2.1洗衣机控制器的外部设计4
2.1.l洗衣机控制器控制面板的设计4
2.1.2硬件设计框图4
2.2系统硬件6
2.2.1强中弱三档开关6
2.2.2水位检测电路7
2.2.3电机正反转电路7
2.3各芯片介绍8
2.3.1MCS-51单片机介绍8
2.4MCS-51单片机的管脚图和各个管脚的作用10
2.5单片机的复位与震荡电路12
3.设计心得及建议14
4.参考文献14
1.绪论
在生产和生活的各个领域中,凡是有自动控制要求的地方都会有单片机的出现。
单片机的应用有利于产品的小型化、多功能化和智能化,而且抗干扰能力强,可在各种恶劣的环境下可靠地工作,成本也较低。
所以单片机的应用已极为广泛,它在工业自动化、工业测控、智能仪器仪表、家用电器、信息与通信、军事装备等方面都在发挥着“微电脑控制”的作用。
1.1设计目标
根据洗衣机的控制要求,从功能要求、硬件设计描述一个以MCS-51单片机为控制核心的洗衣机控制系统。
给出硬件设计线路图和相关的控制程序流程图。
1.2设计目标
用51系列单片机89C51控制全自动洗衣机的运行,使其能自动地完成进水、洗涤、漂洗、脱水等功能。
不同的衣物,洗涤、漂洗、脱水和洗衣电机正反转所用的时间不同,要求设计能够实现过程选择,并在LED显示屏上显示过程代码。
在运行的时候能显示完成整个过程的剩余时间。
为了节省单片机的IO端口,以及使硬件连接能尽可能的简单,在LED显示过程中我们使用了动态扫描的方法。
软件编程使用汇编语言,烧录好单片机后能实现上电运行。
还应该具有相当的稳定性,以保证全自动洗衣机的正常工作。
以此体会单片机系统的设计、开发过程。
1.3设计意义
1.巩固和加深对《单片机原理》课程内容的认识和理解,提高应用水平。
2、完成对单片机应用系统的理论设计。
3.掌握MCS-51汇编语言程序的编制方法。
4.熟悉键盘控制和七段数码管的使用。
具体设计包括系统设计和上机编程两个部分。
2.硬件设计
2.1洗衣机控制器的外部设计
2.1.l洗衣机控制器控制面板的设计
洗衣机控制面板丰要包括:
启动停止、电源、标准、轻柔、快速、水位选择按钮。
完成次洗农过程所需的动作有:
(1)进水动作进行洗涤时,盛水桶内的水量必须达到水位设定要求。
洗衣机的进水和水位判断,是由水位开关和进水阀的开合来进行控制的,当桶内没有水或水量达小到设定水位时,单片机程序将控制进水阀闭合,开始注水,当桶内的水位达到设定水位时,水位开关受压闭合,程序就可进入下步。
(2)排水动作进入脱水动作前应先排水。
为了避免空排水造成时间浪费以及排水不完而带水脱水造成对电机的损害。
洗农机能够根据实际水量对排水时间进动态控制。
(3)洗涤动作洗涤动作指的是电机周期性的“正转一停止一反转一停止”。
不同的洗衣过程,控制电机执行“正转一停止一反转一停止”的时间是相同的。
(4)其它动作洗农机控制器在此控制面板上还配有启动/停止电源、标准、轻柔、快速、水位选择按钮。
2.1.2硬件设计框图
洗衣机控制系统运片的是AT89c51单片机,其耍控制的对象包括:
进水阀、排水阀、电机。
这些被控刘象是需要根据不同的沈衣程序来设定它们的不同工作状况和工作时问的,进水阀和排水阀的控制还需要水位检测,同时需要数码
管显示不同的工作状态及运行剩余时间。
发光二极管用来指示洗涤速度和脱水
速度;按键用来控制程序的运行和设置洗涤速度和脱水速度。
下面是洗农机控制器系统框图:
图2.1.2洗农机控制器系统框图
相应的操作程序,通过电路处理后,输出各种电路控制信号,使洗衣机自动完成程序操作过程。
如果单片机自身出故障、或控制电路传送给单片机的信息不
正确,沈衣机就不能正常工作。
(1)直流电源电路这是为单片机及其外…控制电路提供晓以电压直流电
源的电路,它将输入的220v交流电经过变压、整流、滤波、稳压后,变为稳
定的低压直流电,送给单片机、可控硅触发电路、显示电路等。
(2)复位电路此电路的作用是复位。
在单片机接上电源以后,或电源出现
过低电压时,将单片机存储器复位,使其各项参数处于初始位置,即处于开机
时的标准程序状态,以消除由于某种原因的程序紊乱。
(3)时钟电路由晶振元件与单片机内部电路组成,产牛的振荡频率为单片机提供时钟信号,供单片机信号定时和训时。
(4)按键输入电路按键开关按定的矩阵排列,当按键被按动时,其接通
的信号将输送到单片机。
单片机对应地调出内部软件进行工作,使洗衣机进入
相应的洗涤程序。
(5)显示电路显示电路由发光一极管按一定的矩阵排列而成,它是程序控
制系统向用户直接观察到沈衣机的工作状态的窗口。
预设工作程序时,可根据
指示灯的闪亮来判断洗衣机是否接受了指令;还可以通过批示灯的显示来判断
洗衣机工作是甭正常。
(6)负载驱动电路该电路多由双向可控硅及触发电路组成。
双各可控硅作
为无触点开关控制电机等负载的通断及运行。
单片机根据按键输入指令或接收
到的检测信号,输出相应的控制信号,控制可控硅触发电路的导通,使电机等
负载得电运转。
电机控制软件流程图:
图2.1.2电机控制软件流程图
2.2系统硬件
2.2.1强中弱三档开关
通过强中弱三档开关电路来实现对不同量衣物的洗涤控制,合理利用电能,符合现代化节能标准。
图2.2.1强中弱三档开关电路
2.2.2水位检测电路
水位检测模块通过水位传感器实现对桶内水位的检测。
水位传感器内部存在LC振荡电路,当水压改变后电容值也会随之改变,从而影响水位传感器的输出频率,不同的水位对应一个吲定的频率值。
本课题采用sw1型水位传感器,
在零水位时输出频率为26.8kHz,随着水位的升高水位传感器输出的频率会之减小,当达到本课题设计的最高水位390mm时输出频率为2257kHz。
将水位传感器的输出连接到水位检测电路如图2.2.2所示:
图2.2.2水位检测电路
2.2.3电机正反转电路
控制洗涤过程,洗涤动作洗涤动作指的是电机周期性的“正转一停止一反转一停止”。
不同的洗衣过程,控制电机执行“正转一停止一反转一停止”的时间是小同的
图2.2.3电机正反转电路
2.3各芯片介绍
2.3.1MCS-51单片机介绍
各类单片的指令系统各不相同,功能各有所长,而市场占有率最高的是
Mcs.51系列,并且还在不断推出功能更强的新产品,因此基于学习与实际设
计的需要本次设计我选用Mcs.51系列单片机作为洗衣机控制器的主控芯片。
如今的市场上为我们提供了丰富多彩的单片机产品。
从宏观上讲,有RISC和CISC两大类型;从微观上说,有Intel、Motorola、Philips、Microchip、EMC、NEC等公司的相关产品。
尽管常说,单片机是将中央处理器CPU、存储器和I/O接口电路等主要功能部件集成在一块集成电路芯片上的微型计算机,但由于工艺和其它方面的原因,很多功能部件并未集成在单片机芯片内部。
于是,用户通常的做法是根据系统设计的需要在外围扩展功能芯片。
随着集成电路技术的快速发展和“以人为本”思想在单片机设计上的体现,很多单片机生产厂家充分考虑到用户的需求,将一些常用的功能部件,如A/D(模/数转换器)、D/A(数/模转换器)、PWM(脉冲产生器)以及LCD(液晶)驱动器等集成到芯片内部,尽量做到单片化;同时,用户还可以提出要求,由厂家量身定作(SOC设计)或自行设计。
8051单片机:
8051单片机最早由Intel公司推出,其后,多家公司购买了8051的内核,使得以8051为内核的MCU系列单片机在世界上产量最大,应用也最广泛,有人推测8051可能最终形成事实上的标准MCU芯片[4].
单片机的主要特点是:
单片机内集成存储区有存储器,由于受到体积的限制,容量不大,但是可以根据需要进行扩展;单片机内的程序存储器ROM和数据存储器在空间上分开,采用不同的寻址方式,使用两个不同的地址指针PC及DPTR。
另外,用户根据需要可以扩展程序存储器及数据存储器,这时CPU可以进行操作的存储器就分成四个区域:
内部程序存储器、外部程序存储器、内部数据存储器和外部数据存储器;单片机的输入和输出接口在程序的控制下都可有第二功能;单片机的内部有一个是全双工的串行接口,可同时发送和接收,有两个物理上独立的接收、发送缓冲器SBUF,有四种工作方式;单片机内部有专门的位处理机(布尔处理机),具有较强的位处理功能[4]。
I/O口的数量和功能是选用单片机时首先要考虑的问题之一,根据实际需要确定数量,I/O多余不仅芯片的体积增大,也增加了成本。
对于驱动能力来说,驱动电流大的单片机可以简化外围电路。
多数单片机提供2~3个定时/计数器,有些定时/计数器还具有输入捕获、输出比较和PWM(脉冲宽度调制)功能,利用这些模块不仅可以简化软件设计,而且能少占用CPU的资源。
现在还有不少单片机提供了看门狗定时器(WDT),当单片机“死机”后可以自动复位。
选用时可根据自己的需要和编程要求进行选择,不要片面追求功能多,用不上的功能就等于金钱的浪费。
单片机常见的串行接口有:
标准UART接口、增强型UART接口、I2C总线接口、CAN总线接口、SPI接口、USB接口等。
大部分单片机都提供了UART接口,也有部分单片机没有串行接口[5]。
现在不少单片机内部提供了AD转换器、PWM输出和电压比较器,也有少量的单片机提到了DA转换器。
单片机集成片内AD转换器的同时,还集成了采样/保持电路,使用户容易建立精密的数据采集系统。
PWM模块可用来产生不同频率和占空比的脉冲信号。
可方便实现D/A输出功能。
PWM输出模块也可以用来实现直流电机的调速等功能。
单片机内部集成的电压比较器可以实现多种功能,例如作阈值检测,实现低成本的AD转换器等[5]。
这也是一个很实际的问题,如果有两种单片机都能解决问题,当然选一种你熟悉的品种。
在大多数情况下大家往往优先考虑选择51系列的单片机。
在未来相当长的时间内,都将维持这种群雄并起、共性与个性共存的局面。
究其原因,主要有以下两点。
首先,以80C51为代表的单片机的基础地位不会动摇。
这是因为80C51的架构和指令系统为后来的单片机提供了参考基准和强大支持,它们由于先天的优势,在80C51的基础上扬长避短,以用户需要为根本,在市场上受到欢迎。
总之,80C51作为共性的代表会与个性化的产品相互依存,共同发展,将会给用户带来更大的实惠与方便[6]。
单片机常见的封装形式有:
DIP(双列直插式封装)、PLCC(PLCC要对应插座)、QFP(四侧引脚扁平封装)、SOP(双列小外形贴片封装)等。
综合上述,选择51系列就是很好的,我们学过而且是现在最常用的单片机,当然若是单片机上带有PWM功能会将硬件简化不少,但是这样软件上就要很复杂。
80C51是在MCS-51系列8051的基础上发展起来的,因此兼容、改进和增强是我们对8051和80C51进行比较的主要内容。
首先,与8051兼容是对80C51最基本的要求,以确保8位单片机MCS-51系列的继续发展。
兼容应该包括指令、引脚信号和封装以及总线的兼容则确保两者在系统扩展和接口方面的一致性,有利于系统的开发和应用。
其次,80C51的最大的改进是在芯片的半导体工艺上。
早期的MCS-51系列芯片采用HMOS工艺,即高密度短沟道MOS工艺,而80C51芯片则采用CHMOS工艺,即互补金属氧化物的HMOS工艺。
CHMOS是CMOS和HMOS的结合,除保持HMOS的高速度和高密度之外,还具有CMOS低功耗的特点。
例如8051的功耗为630mW,而80C51的功耗只有120mW,这样的低功耗,用一粒纽扣电池就可以工作。
低功耗对单片机芯片在便携式、手提式或者野外作业的仪器仪表设备上使用十分有利。
第三,80C51在功能增强方面也很突出。
80C51芯片增加了待机和掉电保护两种工作方式,以保证单片机在掉电的情况下,能以最低的能耗电流维持。
最后,在80C51系列芯片中,内部程序存储器除了ROM和EPROM型之外,还有E²PROM型,例如89C51中就有4KB的E²PROM。
并且随着集成技术的提高,80C51系列芯片片内程序存储器的容量也越来越大,64KB的芯片已经广泛的应用了。
许多的80C51芯片的存储器还具有程序存储器保密机制,以防止应用程序的泄密或者被复制[6]。
2.4MCS-51单片机的管脚图和各个管脚的作用
图2.480C51的管脚图
80C51是典型的40管脚双列直插式集成电路芯片,其中各个引脚的功能如下所示:
(1)信号引脚的功能介绍
①输入/输出口线
P0.0~P0.7P0口的8位双向口线;
P1.0~P1.7P1口的8位双向口线;
P2.0~P2.7P2口的8位双向口线;
P3.0~P3.7P3口的8位双向口线。
②ALE地址锁存控制信号
在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送,此外由于ALE是以六分之一的晶振频率的固定频率输出正脉冲,因此可作为外部时钟或外部定时脉冲使用。
③
外部程序存储器选通信号
在读外部的ROM时
有效(低电平),以实现外部ROM单元的读操作。
④
访问程序存储器控制信号
当
信号为低电平时,对ROM的读操作限定在外部程序存储器;而当
信号为高电平的时候,则对于ROM的读操作是从内部程序存储器开始,并可以延续至外部程序存储器。
⑤RST复位信号
当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位操作。
⑥XYAL1和XTAL2外接晶体引线端
当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;但是当使用外部时钟脉冲信号。
⑦VSS地线
⑧VCC+5V电源
以上就是80C51单片机芯片的40条引脚的定义及简单说明。
(2)信号引脚的第二功能
由于工艺及标准化等原因,芯片的引脚数目是有限的,例如MCS-51系列芯片引脚数目40条,但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了供需矛盾。
①EPROM存储器程序固化所需要的信号
有内部EPROM的单片机芯片,如87C51,为写入程序需提供专门的编程脉冲和编程电源,它们是由信号引脚的第二功能的形式提供的,即:
编程脉冲:
30脚(ALE/PROG)
编程电源:
(25V)31脚(
/VPP)
②备用电源的引入
MCS-51单片机的备用电源也是以信号引脚的第二功能方式由9脚(RST/VPD)引入的。
当电源发生故障的时候,电源下降到下限值时,备用电源经此端向内部的RAM提供电压,以保护内部RAM信息不会丢失。
表2.4P3口线的第二功能
口线
第二功能
信号名称
P3.0
RXD
串行数据接收
P3.1
TXD
串行数据发送
P3.2
外部中断0的申请
P3.3
外部中断1的申请
P3.4
T0
定时器/计数器0计数输入
P3.5
T1
定时器/计数器1计数输入
P3.6
外部RAM的写通道
P3.7
外部RAM的读通道
(3)最后,引脚的第一、第二功能是不会在用的时候混淆的,因为:
①对于各种型号的芯片,所有管脚的第一功能信号是相同的,所不同的是引脚的第二功能信号上。
②对于9、30和31各个引脚,由于第一功能信号与第二功能信号是单片机在不同的工作方式下的信号,因此不会发生使用上的矛盾。
③P3口线的情况却有所不同,它的第二功能信号都是单片机上的重要控制信号,因此,在实际使用的时候,总是先按照需要优先选用它的第二功能,剩下不用的再考虑作为口线使用。
2.5单片机的复位与震荡电路
根据应用的要求,用到单片机,为了可靠的复位要外加一个复位电路。
复位操作通常有:
上电复位和上电或开关复位。
工作原理是通电时,电容两端相当于是短路,于是RST引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作。
上电复位的时间常数要在10ms以上,才能保证上电,一般可以取电容的大小为10μF,电阻为8.8KΩ。
图2.580C51的复位与震荡电路
Imel8279芯片是种通用可编程的键盘、显示,单个芯片就能完成键盘输入和LED自动显示控制两种功能。
内含8个宁符的键盘输入F1FO,16个宁节
的显不RAM。
键盘部分提供的扫描方式,可以显示_和具有64个按键或传感器的阵列。
能白动清除开关抖动以及N键同时按下的保护。
显示部分按扫描力式ll作,可以显示8或16位LED数码管。
(1)8279的引脚及功能
8279芯片采用双列直插式封装,各引脚排列如图23所示
A0:
地址输入线,A0一O为数据口地址,A0一l为命令状态口地址。
D7~D0:
双向数据线,三态,用于与CPU之间的命令数据传送。
CLK:
时钟输入线,用于8279的时钟输入,以产生内部定时的时钟脉冲,
其l作频率为1KMz,般由CPU的ALE信号分频得到。
CS:
片选输入线,低电半有效。
RD:
读信号输入控制线,低电平有效。
WR:
写信号输入线,低电平有效。
INT:
rr『断请求输出线,高电平有效。
在键盘___作方式卜,当FTFO/传感器RAM巾有数据时,输出高电平,在FIFO/传感器RAM每次读出时,卜降为低电平工作方式,若在RAM中还有信息,则义变为高电平。
在传感器工作方式中,每当探测到传感器信号变化时。
中断线就变为高电平。
sLO~sL3:
扫捕输出线,用来扫捕按键开关、传感器阵列和显示。
RL0~RL7:
回送输入线,按键或传感器扫描时,回送扫描状态。
其内部有上拉电阻,使之保持为高电平,当有按键闭合时,对应的回送输入线变为低电
平。
SHIFT:
换挡输入线,高电半有效,用于键盘上下挡功能设置,在传感器工作方式中,输入无效。
CNTL在键盘工作方式时,常用来扩展开关的控制功能。
OA3~OAO及OB3~OBO:
A组显示输出线和B组显示输出线,输出与扫描线sL0~sL3同步,可被独立控制输出。
BD:
消隐信号输出线,低电平有效,
也可看成一个8位端口控制输出。
在显示信息切换时。
不使切换信息输出仝LED上显不。
VCC:
+5v电源输入线。
VSS:
地线输入线。
命令及命令格式
8279有三种I作方式:
键盘l作方式、显示_ll作方式和传感器_ll作方式。
键盘工作方式:
双键互锁和N键轮回。
双键互锁是指当有两个以卜按键同时按下时,只能识别最后一个被放的按键,并把其键值送入内部FlFORAM中。
N键轮回是指当有多个按键同时按下时,所有按键的键值均可按扫描顺序依次存入FIFORAM中。
显示_l_作方式:
是指当CPU输入至8279内部FIFORAM的数据的输出格式,有8个字符芹端入口显示、8个字符右端入口显示、16个字符芹端入口显
示、16个字符右端入口显示四种方式。
传感器工作方式:
是指扫描传感器阵列时,一旦发现传感器的状态发生变化就置位INT向CPU申请中断。
选择不同的工作方式均是通过CPU对8279送入命令来进行控制。
8279共有8种命令,命令寄存器为8位,其巾D7~D5为命令特征位,D4~D0为命令的控制位。
CPU对8279写入的命令数据为命令字,读出的数据为状态字。
3.设计心得及建议
在生产和生活的各个领域中,凡是有自动控制要求的地方都会有单片机的出现。
单片机的应用有利于产品的小型化、多功能化和智能化,而且抗干扰能力强,可在各种恶劣的环境下可靠地工作,成本也较低。
用51系列单片机89C51控制全自动洗衣机的运行,使其能自动地完成进水、洗涤、漂洗、脱水等功能。
不同的衣物,洗涤、漂洗、脱水和洗衣电机正反转所用的时间不同,要求设计能够实现过程选择,并在LED显示屏上显示剩余时间。
为了节省单片机的IO端口,以及使硬件连接能尽可能的简单,在LED显示过程中我们使用了动态扫描的方法。
运行过程中可能还会碰到洗衣机盖子没盖好,衣物偏向桶的一边造成无法脱水等问题,都要考虑到并给出合理的解决方法。
4.参考文献
[1]李勋.单片机微型计算机大学读本.北京:
北京航空航天大学出版社,2002
[2]吴金戌等.8051单片机实践与应用.北京:
清华大学出版社,2002
[3]王治刚.单片机应用技术与实训.北京:
清华大学出版社,2004
[4]张积东等.单片机51/98开发与应用.北京:
电子工业出版社,1994
[5]周航慈等.单片机程序设计基础.北京:
北京航空航天大学出版社,1997
[6]彭为.单片机典型系统设计实例精讲.北京:
电子工业出版社,2006
[7]何立民等.单片机高级教程.北京:
北京航空航天大学出版社,2000
[8]卢艳军.单片机基本原理及应用系统.北京:
机械工业出版社,2005
[9]周美娟等.单片机技术及系统设计.北京:
清华大学出版社,2007
[10]永权.单片机与家用电器智能化技术.北京:
电子工业出版社,1995