微机原理课程设计全自动洗衣机Word文件下载.docx
- 文档编号:7748448
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:28
- 大小:547.81KB
微机原理课程设计全自动洗衣机Word文件下载.docx
《微机原理课程设计全自动洗衣机Word文件下载.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计全自动洗衣机Word文件下载.docx(28页珍藏版)》请在冰点文库上搜索。
8086的基本性能指标如下所示:
1.16位微处理器;
2.采用高速运算性能的HMOS工艺制造,芯片上集成了2.9万只晶体管;
3.使用单一的+5V电源,40条引脚双列直插式封装(DIP);
4.时钟频率为5MHz~10MHz,基本指令执行时间为0.3ms~0.6ms
5.16根数据线和20根地址线,可寻址的地址空间达1MB
6.8086可以和浮点运算器、输入/输出处理器或其他处理器组成多处理器系统,从而极大地提高了系统的数据吞吐能力和数据处理能力。
图28086CPU内部结构框图
在这个系统中8086作为整个系统的主控芯片,用来控制协调整个系统的工作。
3.2.38284的功能介绍
为8086CPU提供外部的基准时钟信号,并把时钟信号进行功率放大。
3.2.474LS138的功能介绍
74LS138为3线—8线译码器,共有54/74S138和54/74LS138两种线路结构形式。
其功能表如图所示,引脚分配如图所示:
表一74LS138的功能表
图374LS138的引脚分配图
3.2.48255的功能简介
8255的功能介绍如下:
1.Intel8255A是一个通用的可编程的并行接口芯片,内部有2个8位I/O口(A、B),两个4位I/O口(PC7~4、PC3~0).
2.通过编程可设置3种工作方式,可适用于CPU与I/O设备之间的多种数据传送方式的要求。
3.C口可作为数据口,可作为信号线(CPU与I/O设备之间的应答信号),可作为状态口,可按位置位/复位。
4.价格低廉,使用方便,可以直接与Intel系列的芯片连接使用,在中小系统中有着广泛的应用。
8255的内部结构如图:
图48255的内部结构图
8255的引脚分配
1.引脚(40DIP)
(1)D0~D7:
8位,双向,三态数据线,用来与系统数据总线相连;
(2)端口A、B、C:
PA0~PA7(A组数据信号,用来连接外设);
PB0~PB7(B组数据信号,用来连接外设);
PC0~PC7(C组数据信号,用来连接外设或者作为控制信号)。
(3)CS、RESET、WR、RD、A1、A0(内部4个端口)。
(4)VCC、GND。
8255A的工作方式:
8255A有三种工作方式,用户可以通过编程来设置。
方式0――简单输入/输出――查询方式;
A,B,C三个端口均可。
方式1――选通输入/输出――中断方式;
A,B,两个端口均可。
方式2――双向输入/输出――中断方式。
只有A端口才有。
工作方式的选择可通过向控制端口写入控制字来实现。
3.2.5AD0809的功能简介
1.ADC0809是8位逐次逼近型A/D转换器,它由一个八路模拟开关,一个地址译码器,一个A/D转换器和一个三态输出所存器组成,多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换,三态输出用于锁存A/D转换完的数据,当OE端为高电平时,才可以从三态输出锁存器取走转换完成的数据。
2.AD0809的工作原理
IN0-IN7:
8条模拟量输入通道
ADC0809对输入模拟量要求:
信号单极性,电压范围是0-5V,若信号太小,必须进行放大;
输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入端前加采样保持电路。
地址输入和控制线:
4条
ALE为地址锁存允许输入线,高电平有效,当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道模拟量通过转换器进行转换。
A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。
通道选择表如下表所示。
C
B
A
选择的通道
IN0
1
IN1
IN2
IN3
IN4
IN5
IN6
IN7
数字量输出及控制线:
11条
ST为转换启动信号。
当ST上跳沿时,所有内部寄存器清零;
下跳沿时,开始进行A/D转换;
在跳转期间,ST应保持低电平,EOC为转换结束信号,当EOC为高电平时,表明转换结束;
否则表明正在进行A/D转换,OE为输出允许信号,用于控制三条输出锁存器想单片机输出转换得到的数据,OE=1,输出转换得到的数据‘OE=0输出数据线呈高阻状态。
D7-D0为数字量输出线CLK为时钟输入信号线,因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常频率为500KHZ。
VREF(+),VREF(-)为参考电压输入。
3.2.6DAC0832芯片的功能简介
DAC0832是采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。
所以这个芯片的应用很广泛,DAC0832
D/A转换结果采用电流形式输出。
若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。
运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。
DAC0832逻辑输入满足TTL电平,可直接与TTL电路或微机电路连接。
DAC0832的引脚如图
图5DAC0832的引脚图
3.2.774LS02芯片简介
四2输入或非门(OC)其引脚如图所示,功能表如图所示
图674LS02的引脚图
图774LS02的功能表
3.2.8LM324芯片功能简介
LM324系列器件为价格便宜的带有真差动输入的四运算放大器。
与单电源应用场合的标准运算放大器相比,它们有一些显著优点。
该四放大器可以工作在低到3.0伏或者高到32伏的电源下,静态电流为MC1741的静态电流的五分之一。
共模输入范围包括负电源,因而消除了在许多应用场合中采用外部偏置元件的必要性。
它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。
两个信号输入端中,Vi-(-)为反相输入端,表示运放输出端Vo的信号与该输入端的位相反;
Vi+(+)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。
LM324的引脚排列见图。
图8LM324引脚图
3.3硬件电路设计系统原理图及其说明
图9系统总体框架
在具体实践中,因硬件资源的限制有所调整,比如有些电路采用其他电路来模拟,进水部分有电位器来模拟,电机驱动用直流系统来模拟。
3.4系统的电路图
图10系统电路图
第四章软件设计
4.1程序流程
软件可分为10个模块:
主程序、键盘扫描子程序、参数设置子程序、延时子程序、显示子程序、进水子程序、排水子程序、甩干子程序、停止子程序、开机延时保护子程序。
其中进水、洗衣、排水为一次洗衣的三个不同状态、由相应的子程序来控制电机的运动和进水排水,流程图如图11所示。
4.2源程序及其说明
CODESEGMENT
ASSUMECS:
CODE
WASHTIMEDW20H
WASHTYPEDW08H
ONTIMEDW00H
TIMEDW0
ADPORTEQU0010H
ORG1000H
IOCONPTEQU0FF2BH
IOAPTEQU0FF28H
IOBPTEQU0FF29H
IOCPTEQU0FF2AH
ORG10A0H
MAINPROC
MOVAL,01H
CALLCONVERS
CALLDISP
CALLKEY
MOVDL,10
MULDL
MOVWASHTIME,AX
CBW
ADDWASHTIME,AX
K1:
MOVAL,02
CMPAL,2
JAK1
CMPAL,1
JBK1
JERUOX1
JEQIANGXI
RUOX:
MOVWASHTYPE,08H
JMPNEXT
QIANGXI:
MOVWASHTYPE,0FH
NEXT:
MOVAL,03
CALLCONVERS
CALLDISP
CALLKEY
MOVDL,10
MULDL
MOVONTIME,AX
CBW
ADDONTIME,AX
MOVCX,ONTIME
LOOPK2
K2:
CALLDELAY
ADDAX,WASHTIME
MOVTIME,AX
CALLSTEP1;
洗衣
MOVCX,WASHTIME
LOOPWASH
CALLSTEP3
CALLSHUAIGAN
CALLSTEP1;
漂洗
CALLSETP3
LOOPWAHS
CALLSHUANGAN
CALLSTOP
JMPMAIN
MAINENDP
;
////////////////////////////////////////////
WASHPROC
PUSHAX
PUSHBX
PUSHCX
PUSHDX
MOVDX,DAPORT
DACON1:
MOVAL,0FFH
OUTDX,AL
MOVCX,WASHTYPE
LOOPW1
W1:
DACON2:
MOVAL,80H
MOVCX,8H
LOOPW2
W2:
DACON23:
MOVAL,00H
LOOPW3
W3:
MOVAL,80H
LOOPW4
W4:
DECTIME
MOVAX,TIME
POPDX
POPCX
POPBX
POPAX
RET
WASHENDP
;
//////////////////////////////////////
SETP1PROC
ADCONTROL:
CALLFORMAT
ADCON:
MOVAX,00
MOVDX,ADPORT
INAL,DX
CMPAL,0EEH
JAELA
CALLJINSHUI
LA:
MOVDX,IOCONPT;
水满,关水
MOVAL,89H
MOVDX,IOCPT
ANDAL,0FEH
MOVDX,ICONPT
STEP1ENDP
JINSHUIPROC
MOVDX,IOCONPT
ORAL,01H
MOVDXIOCPT
JMPADCON
JINSHUIENDP
CONVERS:
MOVAH,AL
ANDAL,0FH
MOVBX,077AH
MOVDS:
[BX],AL
DISP:
MOVDX,077FH
MOVAH,20H
DISP0:
MOVCX,00FFH
MOVBX,DX
MOVBL,DS:
[BX]
MOVBH,0H
MOVDX,0FF22H
MOVAL,CS:
[BX+1060H]
MOVDX,0FF21H
MOVAL,AH
DISP1:
LOOPDISP1
DECDX
SHRAH,01H
JNZDISP0
MOVAL,OFFH
DATA1:
DB0C0H,0F9H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0AH
DB86H,0FFH,0CH,89H,0DEH,0C7H,8CH,0F3H,0BFH
FORMAT:
MOVBX,0
MOVWORDPTRDS:
[BX+077AH],0000H
ADDBX,2
[BX+077AH],0009H
[BX+077AH],0008H
///////////////////////////////////////////////
STEP3PROC
ADCON1TORL:
ADCON1:
MOVCX,0500H
DELAYSS:
LOOPDELAYSS
CMPAL,08H
JBELAA
CALLPAISHUI
LAA:
停止排水
OUTDX,IOCPT
ANDAL,0FDH
MOVAX,80H
MOVDX,IOPT
SETP3ENDP
////////////////////////////////
PAISHUIPROC
ORAL,02H
JMPADCON1
PAISHUIENDP
//////////////////////////
SHUAIGANPROC
MOVCX,08H
LOOPSHUAI
SHUAI:
MOVDX,AL
SHUAIGANENDP
///////////////////
DELAY:
MOVCX,0FFFFFH
DELAY1:
LOOPDELAY1
//////////////////////////////////
STOPPROC
LOOPDE
DE:
STOPENDP
KEY:
PUSHAX
MOVBL,00H
MOVAH,0FEH
KEY1:
MOVAL,AH
SHLAL,01H
NOP
MOVDX,0FF23H
NOTAL
JNZKEY2
INCBL
LOOPKEY1
JMPKEY
KEY2:
TESTAL,01H
JEKEY3
MOVAL,00H
JMPKEY6
KEY3:
TESTAL,02H
JEKEY4
MOVAL,08H
JMPKEY6
KEY4:
TESTAL,04H
JEKEY5
MOVAL,10H
KEY5:
TESTAL,08H
JEKEY
MOVAL,18H
KEY6:
ADDAL,BL
CMPAL,10H
JNCFKEY
MOVBL,AL
MOVAL,NYTEPTRDS:
[BX+DATA2]
FKEY:
DATA2:
DB07H,04H,08H,05H,09H,06H,0AH,0BH
DB01H.00H,02H,0FH,03H,0EH,0CH,0DH
CODEENDS
ENDMAIN
第五章系统调试与使用
在软件编译连接后就开始对整个系统进行调试,包括软件和硬件部分,在我们调试的过程中,遇到的最大困难是软件部分的调试,因为我们在写程序的过程中,受到一些高级语言编程思想的影响,比如从上至下。
逐步细分的思想,在我们的程序中,系统被分成了好几个模块,每个模块都是有各自不同的子程序来完成,所以在程序部分,我们每个都进行了现场保护,但是我们在调试过程中发现,这些程序并不是想我们写高级语言那样,可以随意进行调用,比如我们在写程序中遇到的最大问题就是关于LOOP指令与CALL指令的混合使用,一般情况下,LOOP指令的调用格式如下:
MOVCX,10;
将循环次数存入CX寄存器
LOP:
*;
标号
LOOPLOP
而在我们自己的程序中,我们是想通过这条指令来控制DELAY的循环次数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课程设计 全自动 洗衣机