课程设计洗衣机水位控制.docx
《课程设计洗衣机水位控制.docx》由会员分享,可在线阅读,更多相关《课程设计洗衣机水位控制.docx(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、泅耐)物理S电3工程当晚洗衣机水位控制系统课程设计报告书设计题目:洗衣机水位控制系统的软件设计专业:自动化班级:一班学号:2023341121指导教师:尹世忠2023年11月H日物理与电子工程学院课程设计任务书专业:自动化班级:一班学生姓名乔彬学号2023341121课程名称单片机设计题目洗衣机水位控制系统的软件设计80514K ROM128322个16位646487514K EPROM128322个16位64648031无128322个16位646480C514K ROM128322个16位646487C514K EPROM128322个16位646480C31无128322个16位6464
2、80524K ROM256323个16位646487524K EPROM256323个16位64648032无256323个16位6464MCS-51具有比较大的寻址空间,地址线宽达16条,即外部数据存储器和程 序存储器的寻址范围达2j6妹B,这作为单片机控制来说已是比较大的,这同时 具备对I/O 口的访问能力。此外,MCS-51采用模块化结构,可方便地增删一个 模块就可使引脚和指令兼容的新产品,从而容易使产品形成系列化。由于MCS-51集成了几乎完善的8位中央处理单元,处理功能强,中央处理 单元中集成了方便灵活的专用寄存器,硬件的加、减、乘、除法器和布尔处理机 及各种逻辑运算和转移指令,这给
3、应用提供了极大的便利。MCS-51的指令系统近乎完善,指令系统中包含了全面的数据传送指令、完 善的算术和逻辑运算指令、方便的逻辑操作和控制指令、对于编程来说,是相当 灵活和方便的。MCS-51单片机的工作频率为2-12MHz,当振荡频率为12MHz时,一个机器周 期为lus,这个速度应该说是比较快的。MCS-51把微型计算机的主要部件都集成在一块芯片上,使得数据传送距离 大大缩短,可靠性更高,运行速度更块。由于属于芯片化的微型计算机,各功能 部件在芯片中的布局和结构达最优化,抗干扰能力加强,工作亦相对稳定。因此, 在工业测控系统中,使用单片机是最理想的选择。单片机属于典型的嵌入式系统, 所以它
4、是低端控制系统最佳器件。鉴于MCS-51的以上特点,本文的设计就是基于MCS-51的8051型号单片机 来设计的洗衣机控制系统。第2. 2节 洗衣机控制系统面板设计及控制原理图2. 2. 1面板设计洗衣机控制控制系统面板如图2. 1所示。图2.1控制面板在图2.1中控制面板中设置了一个电源开关,启动按纽,洗涤控制等按纽。2. 2. 2 系统控制原理图图2. 2洗衣机控制系统控制原理图在本系统设计的洗衣机控制系统中,采用8051单片机设计一个最小系 统,为了增加单片机的驱动能力,系统中扩展一组上位排阻电路和一组 数码管位驱动电路,其原理图如图2. 2所示。第2.3节微型处理器2. 3.1 805
5、1性能特点8051引脚功能:MCS-51是标准的40引脚双列直插式集成电路芯片,引脚分布请参照单片机引脚图:(l)P0.0P0.7 Po 口 8位双向口线(在引脚的3932号端子)。(2)PLOP1.7 Pl 口 8位双向口线(在引脚的18号端子)o(在引脚的2广28号端子)。(3)P2. 0P2. 7 P2 8 位双向 口线(4)P3.0P3.7 P3 口 8位双向口线(在引脚的1017号端子)。图2.3单片机8051管脚图2. 3. 2 8051主要性能晶体管的动态扫描P0 口有三个功能:1、外部扩展存储器时,当做数据总线(如图1中的D0D7为数据总线 接口)2、外部扩展存储器时,当作地址
6、总线(如图1中的A0A7为地址总线接口)3、不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或 输出时应在外部接上拉电阻。P1 口只做I/O 口使用:其内部有上拉电阻。P2 口有两个功能:1、扩展外部存储器时,当作地址总线使用2、做一般I/O 使用,其内部有上拉电阻;P3 口有两个功能:除了作为I/。使用外(其内部有上拉电阻),还有一些特殊功能,由特 殊寄存器来设置,具体功能请参考我们后面的引脚说明。有内部EPROM的 单片机芯片(例如8751),为写入程序需提供专门的编程脉冲和编程电源, 这些信号也是由信号引脚的形式提供的,即:编程脉冲:30脚(ALE/PROG)编程电压(25V)
7、: 31 脚(EA/Vpp)接触过工业设备的兄弟可能会看到有些印刷线路板上会有一个电池, 这个电池是干什么用的呢?这就是单片机的备用电源,当外接电源下降到 下限值时,备用电源就会经第二功能的方式由第9脚(即RST/VPD)引入, 以保护内部RAM中的信息不会丢失。在介绍这四个I/O 时提到了一个“上拉电阻”那么上拉电阻又是一 个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻啦, 当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源; 所以如果P0 口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻 才能有效。ALE/PROG地址锁存控制信号:在系统扩展时,ALE用于
8、控制把P0 的 输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。(在后 面关于扩展的课程中我们就会看到8051扩展EEPROM电路,在图中ALE与 74LS373锁存器的G相连接,当CPU对外部进行存取时,用以锁住地址的低 位地址,即P0 输出。ALE有可能是高电平也有可能是低电平,当ALE是 高电平时,允许地址锁存信号,当访问外部存储器时,ALE信号负跳变(即 由正变负)将P0 口上低8位地址信号送入锁存器。当ALE是低电平时,P0 口上的内容和锁存器输出一致。关于锁存器的内容,我们稍后也会介绍。在没有访问外部存储器期间,ALE以1/6振荡周期频率输出(即6分频),当访问外部存储
9、器以1/12振荡周期输出(12分频)。从这里我们可以看到, 当系统没有进行扩展时ALE会以1/6振荡周期的固定频率输出,因此可以 做为外部时钟,或者外部定时脉冲使用。PORG为编程脉冲的输入端:在第五课单片机的内部结构及其组成中, 我们已知道,在8051单片机内部有一个4KB或8KB的程序存储器(ROM), ROM的作用就是用来存放用户需要执行的程序的,那么我们是怎样把编写好 的程序存入进这个ROM中的呢?实际上是通过编程脉冲输入才能写进去的, 这个脉冲的输入端口就是PROGoPSEN外部程序存储器读选通信号:在读外部ROM时PSEN低电平有效, 以实现外部ROM单元的读操作。(1)内部ROM
10、读取时,PSEN不动作;(2)外部ROM读取时,在每个机器周期会动作两次;(3)外部RAM读取时,两个PSEN脉冲被跳过不会输出;外接ROM时,与ROM的0E脚相接。EA/VPP访问和序存储器控制信号1、接高电平时:CPU读取内部程序存储器(ROM)扩展外部ROM:当读取内 部程序存储器超过0FFFH (8051) 1FFFH (8052)时自动读取外部ROM。2、接低电平时:CPU读取外部程序存储器(R0M)o在前面的学习中我们已 知道,8031单片机内部是没有ROM的,那么在应用8031单片机时,这个脚 是一直接低电平的。3、8751烧写内部EPROM时,利用此脚输入21V的烧写电压。RS
11、T复位信号: 当输入的信号连续2个机器周期以上高电平时即为有效,用以完成单片机 的复位初始化操作,当复位后程序计数器PC=OOOOH,即复位后将从程序存 储器的0000H单元读取第一条指令码。XTAL1和XTAL2外接晶振引脚。当 使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外 部时钟时,用于接外部时钟脉冲信号。VCC:电源+5V输入;VSS: GND接 地。AVR和PIC都是跟8051结构不同的8位单片机,因为结构不同,所以 汇编指令也有所不同,而且区别于使用CISC指令集的8051,他们都是RISC 指令集的,只有几十条指令,大部分指令都是单指令周期的指令,所以在 同样晶
12、振频率下,较8051速度要快。另PIC的8位单片机前几年是世界上 出货量最大的单片机,飞思卡尔的单片机紧随其后。ARM实际上就是32位的单片机,它的内部资源(寄存器和外设功能) 较8051和PIC、AVR都要多得多,跟计算机的CPU芯片很接近了。常用于、路由器等等。DSP其实也是一种特殊的单片机,它从8位到32位的都有。 它是专门用来计算数字信号的。在某些公式运算上,它比现行家用计算机 的最快的CPU还要快。比如说一般32位的DSP能在一个指令周期内运算完 一个32位数乘32位数积再加一个32位数。应用于某些对实时处理要求较 高的场合。第2. 4节系统扩展2. 4.1晶体管的动态扫描LED显示
13、屏的基本工作原理是动态扫描。显示控制的过程是先从数据存储器 读得字模数据,再通过单片机的串行口或并行口将数据写给LED点阵片,然后再 行扫描。动态扫描方案和静态显示方案相比节省驱动元件,但要求刷新频率高于 50Hz,以避免显示的图像或文字出现闪烁。由于刷新频率的限制,一片单片机能 控制显示元件的片数是较少的。现在大屏幕LED显示屏的应用已越来越广泛。为了对成百、上千片的LED点 阵片实现有序的、快速的显示控制,人们动了许多脑筋,双CPU、双RAM的方案, FPGA的方案等都获得了成功的应用;但是这些方案的显示控制过程还是先读后 写。本方案另开思路:用一条读指令,将读和写合在一步完成,可大大地提
14、高显 示控制的效率,且电路简单。2. 4. 1 LED显示屏的工作原理LED显示屏的基本工作原理是动态扫描。动态扫描又分为行扫描和列扫描两 种方式,常用的方式是行扫描。行扫描方式又分为8行扫描和16行扫描两种。在行扫描工作方式下,每一片LED点阵片都有一组列驱动电路,列驱动电路 中一定有一片锁存器或移位寄存器,用来锁存待显示内容的字模数据。在行扫描 工作方式下,同一排LED点阵片的同名行控制引脚是并接在一条线上的,共8条 线,最后连接在一个行驱动电路上;行驱动电路中也一定有一片锁存器或移位寄 存器,用来锁存行扫描信号。LED显示屏的列驱动电路和行驱动电路一般都采用单片机进行控制,常用的 单片机
15、是MCS51系列。LED显示屏显示的内容一般按字模的形式存放在单片机的 外部数据存储器中,字模是8位二进制数。单片机对LED显示屏的控制过程是先读后写。按LED点阵片在屏幕上的排列 顺序,单片机先对第1排的第1片LED点阵片的列驱动锁存器,写入从外部数据 存储器读得的字模数据,接着对第2片、第3片直到这一排的最后一片都写 完字模数据后,单片机再对这一排的行驱动锁存器写行扫描信号,于是第1排第 1行与字模数据相关的发光二极管点亮。接着第2排第1行、第3排第1行 直到最后一排第1行的点亮。各排第1行都点亮后,延时一段时间,然后黑屏, 这样就算完成了单片机对LED显示屏的一行扫描控制。单片机对LED
16、显示屏第2行的扫描控制、第3行的扫描控制直到第8行 的扫描控制,其过程与第1行的扫描控制过程相同。对全部8行的控制过程都完 成后,LED显示屏也就完成了 1帧图像的完整显示。虽然按这种工作方式,LED显示屏是一行一行点亮的,每次都只有一行亮, 但只要保证每行每秒钟能点亮50次以上,即刷新频率高于50Hz,那么由于人的 视觉惰性,所看到的LED显示屏显示的图像还是全屏稳定的图像。2. 4. 2LED显示屏的传统控制方法显示控制电路是按行扫描方式工作的,列控制电路分为两大类。列控制电路 中,一类是用74LS377之类的芯片作为列驱动电路的锁存器,CPU通过并行总线 给列驱动电路的锁存器写字模数据;
17、另一类是用移位寄存器74LS595之类的芯片 作为列驱动电路的锁存器,CPU通过串行总线给列驱动电路的锁存器写字模数据。 无论是并行总线的控制方式还是串行总线的控制方式,其工作过程都是先给数据 指针DPTR赋值,接着累加器A按数据指针DPTR的指向,从外部数据存储器RAM 中读得字模数据。然后,并行总线时,再给数据指针DPTR赋值,接着CPU将累 加器A中的字模数据,按数据指针DPTR的指向,写给LED点阵片列驱动电路的 锁存器;串行总线时,CPU将累加器A中的字模数据,通过串行口写给LED点阵 片列驱动电路的锁存器。一般显示控制中,使用较多的单片机是MCS51系列。假设单片机系统的晶振 频率
18、是12MHz,机器周期是1 u s,上述两种控制方式完成1片LED点阵片的显示 控制都得十几PSo本文提出的高速控制方案,完成1片LED点阵片的显示控制大约只要4 H so 按此推算,1片MCS51系列的单片机,差不多可以对600多片LED点阵片进行显 示控制。与传统的控制方法相比,显示控制的效率成倍提高。8051具有很强的扩展功能,允许扩展各种外围电路以补充片内资源不足, 适应特定应用的需要,扩展内容包括数据存储器、程序存储器、I/O接口等扩展 结构如图2.4所示:8051825连工据。I/O 接口的扩展门采集的数日多,因止匕C率瘠的萝求.uAj i/o 口 zA硒用,所以我们使用强Inte
19、l公亚产向价用可编用、彳:谕接和8255A相是供三个3面电也 允许乘用晌可、异若科加电方式传送I/O数数据存储器程序存储器I/O 接口8255A内部结构和引脚功能内部结构8255A内部由四部分电路组成。它们是A 口、B 口和C 口,A组控制器和B控 制器,数据缓冲器及读写控制逻辑。1 .A 口、B 口和C 口。A 口、B 口和C 口均为8位I/O数据口,但结构上略 有差别。A 口由一个8位的数据输出缓冲/锁存器和一个8位的数据输入缓冲/锁 存器组成。B 口由一个8位的数据输出缓冲/锁存器和一个8位的数据输入缓冲 器组成。三个端口都可以和外设相连,分别传送外设的输入/输出数据或控制信 ,息、。2
20、 . A、B组控制电路。这是两组根据CPU的命令字控制8255工作方式的 电路。A组控制A 口及C 口的高4位,B组控制B 口及C 口的低4位。3 .数据总线缓冲器。它是一个8位的双向三态驱动器,用于与单片机的数 据总线相连,传送数据或控制信息。4 .读/写控制逻辑。这部分电路接收MCS-51送来的读/写命令和选口地址, 用于控制对8255A的读/写。图2. 5 8255A芯片的内部结构图引脚功能8255A有40条引脚,采用双列直插式封装。如图2. 6所示。图2. 6 8255A引脚图.数据总线(8条):DOD7:三态双向数据总线,8255A与CPU数据传送的通道,当CPU执行输 入输出指令时
21、,通过它实现8位数据的读/写操作,控制字和状态信息也通过数 据总线传送。1 .控制总线(6条):RESET:复位信号,输入高电平有效。一般和单片机的复位相连,复位后,8255A 所有内部寄存器清0,所有口都为输入方式。在:片选信号线,当这个输入引脚为低电平时有效,表示芯片被选中,允许 8255A与CPU进行通讯。而:读信号线,当这个输入引脚为低电平时,允许8255A通过数据总线向 CPU发送数据或状态字。而:写入信号,当这个输入引脚为低电平时,允许CPU将数据或控制字写入 8255AoAO、Al:地址输入线。当=0,芯片被选中时,这两位的4种组合00、01、 10、11分别用于选择A、B、C
22、口和控制寄存器。其组合如表2. 2。表2. 2 8255A控制信号功能表CSA1A2RD薇端口地址端口功能000010011A 口读A 口0001000 HA 口写A 口0010101HB 口读B 口0011001HB 口写B 口0100102HC 口写C 口0101002HC 口读C 口0111003H控制口写控制字1X XXXXX总线高阻2 .并行I/O总线(24条):这些总线用于和外设相连,分别与A、B、C 口相 对应,用于8255A和外设之间传送数据,共分三组:PAOPA7:端口 A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8 位的数据输入锁存器。PBOPB7:端口 B输入输出
23、线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。PCOPC7:端口 C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8 位的数据输入缓冲器。3 .电源线(2条):VCC为+ 5V电源线,允许变化10%; GND为地线。(2) 8255A方式控制字8255A有两个控制字:方式控制字和C 口单一置复位控制字。用户通过程序 可以把这两个控制字送到8255A的控制寄存器(A1AO = 11B),以设定8255A的工 作方式和C 口各位状态。这两个控制字以D7位状态作为标志。8255A各端口工 作于什么方式和是输入还是输出方式,是由方式控制字决定的。方式控制字格式 如图2-7所示。D7为控制字
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 洗衣机 水位 控制
限制150内