微机原理课程设计电风扇程序设计.doc
《微机原理课程设计电风扇程序设计.doc》由会员分享,可在线阅读,更多相关《微机原理课程设计电风扇程序设计.doc(20页珍藏版)》请在三一办公上搜索。
1、微机原理课程设计说明书题目: 家用电风扇的控制设计 学院: 计算机与通信工程学院 专业: 姓名: 学号: 指导教师: 2012年 8月 24 日目录前言.11注释清单说明.22芯片介绍.3 2.18253芯片.3 2.28255芯片.43设计过程.6 3.1总体设计.6 3.2硬件设计.6 3.3软件设计.6 3.3.1风速设计 .7 3.3.2类型设计 .73.3.3转头设计.74硬件框图及说明 .85软件模块及流程说明.9 5.1软件框图.9 5.2程序代码.10参考文献.17 总结体会.18前言 随着物联网时代的到来,芯片越来越显示其重要的价值,而如何将物联网引入普通家庭,让普通老百姓感
2、受到他们的实惠,针对这个问题我设计了一个简易的电风扇程序其概况如下:一.课程设计的题目是家用风扇控制器,用微机中硬件与软件相结合的方法设计出一个电风扇的控制器.二.控制器有四个按钮,分别为风速,类型,转头和停止键; 三个LED指示灯用于指示风速强、中、弱;另外三个LED指示灯用于指示类型为睡眠、自然和正常,还有一个直流电机控制是否转头.功能如下:1. 电扇处于停转状态时,所有指示灯不亮,只有按下“风速”键时电扇才会旋转。电扇在任何状态,只要按下“停止”键,则进入停转状态。2. 风速的强、中、弱分别对应于电扇转动的快速、中速和慢速.3. 初始状态为:风速“弱”,类型“正常”.4. 按“风速”键,
3、状态由“弱”“中”“强”“弱” 往复循环改变,每按一下按键改变一次状态;5. 按“类型”键,其状态由“正常”“睡眠”“自然”“正常” 往复循环改变;1) 正常电扇连续运转;2) 自然电扇模拟自然风,即转2s,停4s;3) 睡眠电扇慢转,产生轻柔的微风,运转 2s,停转6s.6. 当按下K3摇头键的时候会摇头,再按会停止摇头,可以手动选择是否摇头.三.本设计主要用到的芯片是8086,8253A和8255A. 1注释说明清单下文中所表示的字母的意思如下: K1:风速键,用来控制风速,风速包括弱风,中风,强风三种.每按一次K1键风速就循环改变一次. K2:类型键,用来控制风的类型,类型包括正常风,睡
4、眠风,自然风,每按一次K2键风种将会循环改变一次.K3:转头键,只要系统启动后按此键,风扇就会在转头与不转头之间切换. K4:停止键,一旦风扇运行按停止键就会关闭.L1:弱风指示灯L2:中风指示灯L3:强风指示灯L5:正常风指示灯L6:睡眠风指示灯L7:自然风指示灯2芯片介绍2.1 8253芯片8253是Intel公司生产的可编程间隔定时器。8253具有以下基本功能: (1) 有3个独立的16位计数器; (2) 每个计数器可按二进制或十进制(BCD)计数; (3) 每个计数器可编程工作于6种不同工作方式; (4) 8254每个计数器允许的最高计数频率为10MHz(8253为2MHz); (5)
5、 8254有读回命令(8253没有),除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容。 (6) 计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初值公式为n=fCLKifOUTi、其中fCLKi是输入时钟脉冲的频率,fOUTi是输出波形的频率。 图14-1是8254的内部结构框图和引脚图,它是由与CPU的接口、内部控制电路和三个计数器组成。8254的工作方式如下述: (1) 方式0:计数到0结束输出正跃变信号方式。 (2) 方式1:硬件可重触发单稳方式。 (3) 方式2:频率发生器方式。 (4) 方式3:方波发生器。 (5) 方式4:软件触发选通方式。 (6) 方式5:硬件
6、触发选通方式。 图14-1 8254的内部接口和引脚 8253的控制字有两个:一个用来设置计数器的工作方式,称为方式控制字;另一个用来设置读回命令,称为读回控制字。这两个控制字共用一个地址,由标识位来区分。控制字格式如表14-1所示。读回控制字格式如表14-2所示。当读回控制字的D4位为0时,由该读回控制字D1D2位指定的计数器的状态寄存器内容将被锁存到状态寄存器中。状态字格式如表14-3所示。 表14-1 8253的方式控制字格式 D7D6D5D4D3D2D1D0计数器选择读/写格式选择工作方式选择计数码制选择00计数器001计数器110计数器211读出控制字标志00锁存计数值01读/写低8
7、位10读/写高8位11先读/写低8位,再读/写高8位000方式0001方式1010方式2011方式3100方式4101方式50二进制数1十进制数 表142 8253读出控制字格式D7D6D5D4D3D2D1D0110锁存计数值0锁存状态信息计数器选择(同方式控制字)0表143 8253状态字格式D7D6D5D4D3D2D1D0OUT引脚现行状态1高电平 2低电平计数初值是否装入1无效 2计数有效计数器方式(同方式控制字)2.2 8255芯片 8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0
8、基本输入/出方式;方式1 选通输入/出方式;方式2 双向选通工作方式。8255的内部结构及引脚如图12-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图12-2所示。 图12-1 8255的内部结构及引脚 图12-2 8255控制字格式3设计过程3.1总体设计:根据题目要求,其基本功能是用四个按键来控制风速、类型,转头以及停止这四个状态的变换。当风速键按下时实现风速强、中、弱三种状态依次循环切换,由于电机控制芯片没找好,所以用三个LED指示灯来显示;当类型键按下时实现类型正常、睡眠、自然三种状态的依次循环切换,并用三个LED指示灯来显示。题目中类型键要求自然状态转2秒,停4秒;
9、睡眠状态转2秒,停转6秒,这个涉及到时间问题,可以通过硬件或者软件来实现,我们选择通过软件来实现。综上所述,可以采用硬件与软件结合的设计方法来实现基本功能。3.2硬件设计:本次实验除利用了PC机本身资源外(如中断资源),还利用了平台上的8255并行接口单元,8253计数器,LED指示灯电路,直流电机,便构成家用风扇控制电路.本次实验硬件部分主要是用可编程并行通信接口8255A来实现的。四个按键是输入,用8255A的其中一个端口作为输入,这里选择用端口A作为输入;六个LED指示灯用作输出,这里选择用端口B和端口C作为输出。8255A是有多种功能的可编程并行接口电路芯片,8255A分3个端口:端口
10、A、端口B和端口C,每个端口都是8位,共24个外设引脚,共三种输入输出工作方式。1)方式0基本输入输出方式, 适用于无条件传送和查询方式的接口电路。2)方式1选通输入输出方式, 适用于查询和中断方式的接口电路。3)方式2双向选通传送方式, 适用于与双向传送数据的外设; 适用于查询和中断方式的接口电路。本次实验我们选择方式0,只实现基本的输入、输出即可。8253A有3个计数器,这里我们选择计数器0进行计数,CLK0链接系统时钟信号,计数器0选择工作方式3工作,GATE0接PC0端口,然后将两路接入直流电机的正负极。3.3软件设计: 本设计通过编程对8255A的端口A读入的键值进行判断,再转入到相
11、应的子程序进行状态改变。最后通过端口B进行输出显示。控制系统分四个功能模块,主要包含风速设置、类型设置、默认状态显示和退出系统。3.3.1风速设置 这个模块中风速的三个状态强、中、弱之间的循环切换是通过将端口A的键值逐次加1(初始值为0,每按下一次风速键寄存器值加1),然后对3求余,取其余数分别代表这三个状态来实现的。由于对3求余的余数只有0、1、2三个值,分别代表强、中、弱,将其余数保存到寄存器中,根据寄存器中是0、1、2来判断强、中、弱风三个状态。3.3.2类型设置风的类型有:正常、自然、睡眠三种。a) 正常 电扇连续运转。b) 自然 电扇模拟自然风,即转2s,停4s。c) 睡眠 电扇慢转
12、,产生轻柔的微风,运转 2s,停转6s。自然状态和睡眠状态时间的控制是通过调用延时子程序来实现的,由于一个机器周期是10-6秒,延时程序是通过循环来实现的,让指令执行106次来实现1秒。不是很精确。3.3.3转头设置 这个模块利用8255和8253来完成,该模块有两种状态即转头和不转头,8255的PC2端口实现状态的输入,PC0端口输出到8253的GATE0端口来控制8253工作,然后通过8253来控制直流电机工作。用按的次数除以2取余数来判断是转头还是停止。4硬件系统框图及说明L7K4K3K2K1L6L5L31L21L11系统总线D0 PA0D1 PA1D2 PA2D3 PA3D4 PA4D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课程设计 电风扇 程序设计

链接地址:https://www.31ppt.com/p-2925851.html