家用电风扇课程设计_第1页
家用电风扇课程设计_第2页
家用电风扇课程设计_第3页
家用电风扇课程设计_第4页
家用电风扇课程设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机科学与技术系计算机科学与技术系微机原理与接口技术课程设计20132014 学年第 1 学期课程设计题目课程设计题目家用电风扇课程设计院院 系系 名名 称称合肥学院-计算机科学与技术系专业专业计算机科学与技术班级班级11 计本 1 班姓名(学号)姓名(学号)指导教师指导教师2014 年 1 月目 录1 功能分析及解决方案功能分析及解决方案.21.1 功能需求分析.21.2 解决问题方法及思路.22 硬件设计硬件设计.32.1 可编程并行接口 8255.5 2.2 步进电机52.3 开关.52.4 led 灯.52.5 硬件总逻辑图及其说明.53 控制程序设计控制程序设计.63.1 控制流程

2、设计及其思路说明.63.2 程序流程图.63.3 控制程序.64 上机调试过程上机调试过程.74.1 硬件调试.74.2 软件调试.84.3 联机调试.84.4 调试结果及问题的提出.85 设计结果分析及问题讨论设计结果分析及问题讨论.95.1 课程设计及结果分析.105.2 问题讨论.105.3 收获、体会和意见.10附录附录 1 系统原理图系统原理图.111.功能分析及解决方案功能分析及解决方案1.11.1 功能需求分析功能需求分析本次课程设计任务主要模拟家用风扇的各种功能,设计一种控制器能实现对各种功能的控制,在风扇任意时刻运行时都对其实现各种功能的切换,充分体现其的可控制性。在基本的弱

3、电环境下的各种芯片实现对强电的控制的一种典型实例。利用汇编语言与硬件结合,在各种基本的接口芯片实时通信,接收对应的按键信号,再基于硬件的基础用汇编语言实现各种逻辑关系转换而输出相应的控制信号从而实现各种功能的控制与转换。1.21.2 解决问题方法及思路解决问题方法及思路设计一个家用风扇控制器。控制器面板为:按钮三个,分别为风速、类型和停止,led指示灯六个,指示风速强、中、弱,类型为睡眠、自然和正常。电扇处于停转状态时,所有指示灯不亮,只有按下“风速”键时,才会响应,进入起始工作状态;电扇在任何状态,只要按停止键,则进入停转状态。电扇处于工作状态时,有:(1) 初始状态为:风速-“弱” ,类型

4、-“正常” ;(2) 按“风速”键,其状态由“弱”“中”“强” “弱” 往复循环改变,每按一下按键改变一次;(3) 按“类型”键,其状态由“正常”“睡眠”“自然”“正常” 往复循环改变;风扇风速的弱、中、强对应于电扇的转动由慢到快。风扇类型的不同选择,分别为:(1) 正常电扇连续运转;(2) 自然电扇模拟自然风,即转 4s,停 8s;(3) 睡眠电扇慢转,产生轻柔的微风,运转 8s,停转 8s;按照风速与类型的设置输出相应的控制信号。本次课程设计任务主要基于 8086 以及各种接口芯片结合汇编语言实现对家用风扇的控制器的模拟。我主要运用 8086cpu 结合汇编语言编写的软件来实现各种信号的处

5、理与变换,以得到想要的控制信号,并用接口芯片 8255a 实现信号的输出与接收。2硬件设计硬件设计2.1 可编程并行接口可编程并行接口 82551. 8255 特性特性一个并行输入/输出的 lsi 芯片,多功能的 i/o 器件,可作为 cpu 总线与外围的接口。具有 24 个可编程设置的 i/o 口,即使 3 组 8 位的 i/o 口为 pa 口,pb 口和 pc 口。它们又可分为两组 12 位的 i/o 口,a 组包括 a 口及 c 口(高 4 位,pc4pc7),b 组包括 b 口及 c 口(低 4 位,pc0pc3)。a 组可设置为基本的 i/o 口,闪控(strobe)的 i/o 闪控

6、式,双向 i/o3 种模式;b 组只能设置为基本 i/o 或闪控式 i/o 两种模式,而这些操作模式完全由控制寄存器的控制字决定。a0,a1 为地址选择线,用来选择 8255 的 pa 口、pb 口、pc 口和控制寄存器。当 a0=0,a1=0 时,pa 口被选择;当 a0=0,a1=1 时,pb 口被选择;当 a0=1,a1=0 时,pc 口被选择;当 a0=1,a1=1 时,控制寄存器被选择。2. 8255a 的控制字的控制字8255a 有两类控制字:一类控制字用于定义个端口的工作方式,称为方式选择控制字;另一类控制子用于 c 端口的任意一位进行置位或复位操作,称为置位复位控制字。(1)

7、方式选择控制字8255a 具有三种基本工作方式,在对 8255a 进行初始化编程时,应向控制字寄存器写入方式悬着控制字,用来规定 8255a 各端口的工作方式。方式 0基本输入输出方式方式 1选通输入输出方式方式 2双向总线 i/o 方式 a 口:可工作于方式 0,1,2 任何一种b 口:只能工作于方式 0,1(不能为方式 2)c 口:分成双 4 位,可基本 i/o,还可输出 a,b 口控制信号,输入 a,b 的状态。 (2) 置位复位控制字c 口的数位常用来产生控制信号(如应答式数据传送中断请求信号)或其他应答信号,可通过置位复位控制字来使端口 c 的任一位引脚的输出单独置“1”或置“0”

8、。3.8255a 的部分技术参数的部分技术参数表表 1 1标识符最小最大测试条件输入低电平(vil)-0.5v0.8v输入高电平(vih)2.0v5v输出低电平(vol)db0.45viol=2.5ma输出低电平(vol)per0.45viol=1.7ma输出高电平(voh)db24vioh=-400a输出高电平(voh)per24vioh=-200a驱动电流-1.0ma-4.0marext=750vext=1.5v供应电流120 ma2.2 步进电机步进电机1.1.步进电机的速度控制及运动规划步进电机的速度控制及运动规划步进电机区别于其他控制用途电机的最大特点是,它可接受数字控制信号(电脉冲

9、信号)并转化成与之相对应的角位移或直线位移,因而本身就是一个完成数字模拟转化的执行元件。而且它能进行开环位置控制,输入一个脉冲信号就得到一个规定的位置增量。这样的增量位置控制系统与传统的直流伺服系统相比,其成本明显降低,几乎不必进行系统调整。因此,步进电机广泛应用于数控机床、机器人、遥控、航天等领域,特别是微型计算机和微电子技术的发展,使步进电机获得更为广泛的应用。2.2. 步进电机的工作原理步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。图 3-1 是该四相反应式步进电机工作原理【图 1】图 1四相反应式

10、步进电机工作原理图开始时,开关 sb 接通电源,sa、sc、sd 断开,b 相磁极和转子 0、3 号齿对齐,同时,转子的 1、4 号齿就和 c、d 相绕组磁极产生错齿,2、5 号齿就和 d、a 相绕组磁极产生错齿。当开关 sc 接通电源,sb、sa、sd 断开时,由于 c 相绕组的磁力线和 1、4 号齿 之间磁力线的作用,使转子转动,1、4 号齿和 c 相绕组的磁极对齐。而 0、3 号齿和 a、b 相绕组产生错齿,2、5 号齿就和 a、d 相绕组磁极产生错齿。依次类 推,a、b、c、d 四相绕组轮流供电,则转子会沿着 a、b、c、d 方向转动。四相步进电机按照通电顺序的不同,可分为单四拍、双四

11、拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。3.3.步进电机的速度特性步进电机的速度特性步进电机的转速取决于脉冲频率、转子齿数和拍数。其角速度与脉冲频率成正比,而且在时间上与脉冲同步。因而在转子齿数和运行拍数一定的情况下,只要控制脉冲频率即可获得所需速度。由于步进电机是借助它的同步转矩而启动的,为了不发生失步,启动频率是不高的。特别是随着功率的增加,转子直径增大,惯量增大,启动频率和最高运行频率可能相差 10 倍之多。为了充分发挥电机的快速性能,通常使电机在低于

12、启动频率下启动,然后逐步增加脉冲频率直到所希望的速度,所选择的变化速率要保证电机不发生失步,并尽量缩短启动加速时间。为了保证电机的定位精度,在停止以前必须使电机从最高速度逐步减小脉冲率降到能够停止的速度(等于或稍大于启动速度)。因此,步进电机拖动负载高速移动一定距离并精确定位时,一般来说都应包括“启动加速高速运行(匀速)减速停止”五个阶段,速度特性通常为梯形,如果移动的距离很短则为三角形速度特性,【图 3】图 32.3 开关开关1.功能开关对步进电机的各种模式进行控制2.功能分析对步进电机进行控制,当开关打开时程序会扫描开关获得信息然后进入相应的模式中。2.4led 灯灯1) led 在本设计

13、中的作用 本设计利用二极管能发光的特性,用于显示开关闭合。 2)led 功能分析 当开关打开时,其对应的 led 灯就会发光,给出提示。 3)led 技术参数 led 的压降一般为 1.52.0 v,其工作电流一般取 1020 ma 为宜。3 3 控制程序设计控制程序设计 3.1 控制流程设计及其思路说明控制流程设计及其思路说明8255 内部包含 3 个 8 位的输入输出端口 a、b 和 c,端口 a 和端口 b 都可以用作一个8 位的输入口或 8 位的输出口,端口 c 既可以作为一个 8 位的输入口或 8 位的输出口,又可以作为两个 4 位的输入输出口(c 口上半部分和 c 口下半部分)使用

14、,还可以配合 a 口和b 口工作,分别用来产生 a 口和 b 口的输出控制信号和输入 a 口和 b 口的端口状态信号3.2 程序流程图程序流程图开始初始化 8255a是否有风速键按下n初始化风速-“弱”,类型-“正常”风扇运行控制模块是否有键按下n是风速键按下风速控制模块序是类型键按下类型控制模块序是定时键按下定时控制模块序yyyyn是停止键按下停止控制模块序ynnny3.33.3 控制程序控制程序my8255_a equ 0ff00h ;8255a my8255_b equ 0ff01h ;8255b my8255_c equ 0ff02h ;8255c my8255_mode equ 0f

15、f03h ;8255 stack1 segment stack dw 256 dup(?) stack1 ends data segment data endscode segment assume cs:code,ds:datastart: mov dx,my8255_mode mov al,90h out dx,al movdx,my8255_c moval,00h outdx,al movdx,my8255_b moval,0ffh outdx,alstart1: mov dx,my8255_a/对 8255a 口进行扫描 inal,dx and al,00001000b cmpal,0

16、8h/对按键进行判断 jnzt1 call ziran /调用自然模式t1: mov dx,my8255_a inal,dx and al,00000111b/屏蔽按键 cmp al,00h jnz t10 call stopt10: cmp al,01h jnz t6 call qiangt6: cmp al,02h jnz t8 /al 非 02h 跳入 t8 call zhong t8: cmp al,04h jnz t9 call ruot9: jmp start1 /自然模式ziranprocnearmov dx,my8255_b /对 8255b 口进行初始化mov al,0f7h

17、out dx,almov cx,40 /循环次数进行控制t:mov di,1770hcallzhengzhuanlooptcalldl4sretendp/强风模式 qiangprocnearmov dx,my8255_b /对 8255b 口进行初始化mov al,0fehout dx,almov di,0a00hmov dx,my8255_a /扫描 8255a 口in al,dxand al,00010000bcmp al,10h /对按键进行判断jnz t2callfanzhuancmp al,01hjz t3t2:callzhengzhuant3:retendp/中风模式zhongpr

18、ocnearmov dx,my8255_b /对 8255b 口进行初始化mov al,0fdhout dx,almov di,1000hmov dx,my8255_a /扫描 8255a 口in al,dxand al,00010000bcmp al,10h /对按键进行判断jnz t4t4:callfanzhuancmp al,10hjnz t5callzhengzhuant5:retendp/停止模式stop procnearmov dx,my8255_b /对 8255b 口进行初始化mov al,0ffhout dx,almov dx,my8255_c /对 8255c 口进行初始化

19、 mov al,00h out dx,al calldl500ms /调用延时 ret endp /弱风模式ruoprocnearmov dx,my8255_b /对 8255b 口进行初始化mov al,0fbhout dx,almov di,1b00hmov dx,my8255_a /扫描 8255a 口in al,dxand al,00010000bcmp al,10h /对按键进行判断jnz a1callfanzhuana1:cmp al,10hjnz a2callzhengzhuana2:retendp/反转模式fanzhuan procnearmov dx,my8255_a /扫描

20、 8255a 口in al,dxnot almov dx,my8255_bout dx,almov dx,my8255_c mov al,09h /设置风扇的旋转方式 out dx,al calldelay mov al,0ch out dx,al calldelay mov al,06h out dx,al calldelay mov al,03h out dx,al calldelay ret endp /正转模式zhengzhuanprocnearpushdxmov dx,my8255_c /对 8255c 口进行初始化 mov al,03h out dx,al calldelay mo

21、v al,06h /设置风扇的旋转方式 out dx,al calldelay mov al,0ch out dx,al calldelay mov al,09h out dx,al calldelay pop dx ret endp/延时程序设置delay procnearpushcxmov cx,didate:loopdate pop cx ret endp dl500ms procnearpushcxmov cx,60000dl500ms1: loopdl500ms1pop cxretdl500msendpdl4sprocnearpushcxmov cx,8dl4s1:calldl500

22、msloopdl4s1pop cxretendp code ends end start 4.4.上机调试上机调试 4.14.1 硬件上机调试硬件上机调试 设计电路原理图,考虑到要实现的功能,所以使用 8255a 控制步进电机的运转,由于要考虑延时所以先使用了 8253,但是为了使实验看起来简洁就使用程序进行了延时。在了解步进电机的控制时,看到了脉宽调制法(pwm),但是经过程序也可实验程序实现所以最后未用。在各个硬件芯片之间的连接调试中,需要我注意的主要是连接的可靠性。由于本课程设计所涉及的芯片都是我们学习过的,加之我在初期的硬件逻辑设计中未出现较大错误。在硬件的调试过程中我遇到过一个主要的问题,对于 8255a 的调试,我用了我们课堂上所学的实验 8255a 的三个口 pa、pb 和 pc 进行了调试,检测两个芯片的工作是否正常。4.24.2 软件上机调试软件上机调试程序通过 8255a 对步进电机和 led 灯进行控制,a 口设置为输入端口,b、c 为输出端口,开始时未注意到端口地址问题所以 led 灯始终无法按预计的亮起,最终查阅书

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论