版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机科学与技术系计算机科学与技术系 微机原理与接口技术 课程设计 20132014 学年第 1 学期 课程设计题目课程设计题目家用电风扇课程设计 院院 系系 名名 称称合肥学院-计算机科学与技术系 专业专业计算机科学与技术 班级班级11 计本 1 班 姓名(学号)姓名(学号) 指导教师指导教师 2014 年 1 月 目 录 1 功能分析及解决方案功能分析及解决方案.2 1.1 功能需求分析.2 1.2 解决问题方法及思路.2 2 硬件设计硬件设计.3 2.1 可编程并行接口 8255.5 2.2 步进电机5 2.3 开关.5 2.4 led 灯.5 2.5 硬件总逻辑图及其说明.5 3 控制
2、程序设计控制程序设计.6 3.1 控制流程设计及其思路说明.6 3.2 程序流程图.6 3.3 控制程序.6 4 上机调试过程上机调试过程.7 4.1 硬件调试.7 4.2 软件调试.8 4.3 联机调试.8 4.4 调试结果及问题的提出.8 5 设计结果分析及问题讨论设计结果分析及问题讨论.9 5.1 课程设计及结果分析.10 5.2 问题讨论.10 5.3 收获、体会和意见.10 附录附录 1 系统原理图系统原理图.11 1.功能分析及解决方案功能分析及解决方案 1.11.1 功能需求分析功能需求分析 本次课程设计任务主要模拟家用风扇的各种功能,设计一种控制器能实现对各种功能的 控制,在风
3、扇任意时刻运行时都对其实现各种功能的切换,充分体现其的可控制性。在基本 的弱电环境下的各种芯片实现对强电的控制的一种典型实例。利用汇编语言与硬件结合,在 各种基本的接口芯片实时通信,接收对应的按键信号,再基于硬件的基础用汇编语言实现各 种逻辑关系转换而输出相应的控制信号从而实现各种功能的控制与转换。 1.21.2 解决问题方法及思路解决问题方法及思路 设计一个家用风扇控制器。控制器面板为:按钮三个,分别为风速、类型和停止,led 指示灯六个,指示风速强、中、弱,类型为睡眠、自然和正常。 电扇处于停转状态时,所有指示灯不亮,只有按下“风速”键时,才会响应,进入起始 工作状态;电扇在任何状态,只要
4、按停止键,则进入停转状态。 电扇处于工作状态时,有: (1) 初始状态为:风速-“弱” ,类型-“正常” ; (2) 按“风速”键,其状态由“弱”“中”“强” “弱” 往复循环改变,每 按一下按键改变一次; (3) 按“类型”键,其状态由“正常”“睡眠”“自然”“正常” 往复循环 改变; 风扇风速的弱、中、强对应于电扇的转动由慢到快。 风扇类型的不同选择,分别为: (1) 正常电扇连续运转; (2) 自然电扇模拟自然风,即转 4s,停 8s; (3) 睡眠电扇慢转,产生轻柔的微风,运转 8s,停转 8s; 按照风速与类型的设置输出相应的控制信号。 本次课程设计任务主要基于 8086 以及各种接
5、口芯片结合汇编语言实现对家用风扇的控 制器的模拟。我主要运用 8086cpu 结合汇编语言编写的软件来实现各种信号的处理与变换, 以得到想要的控制信号,并用接口芯片 8255a 实现信号的输出与接收。 2硬件设计硬件设计 2.1 可编程并行接口可编程并行接口 8255 1. 8255 特性特性 一个并行输入/输出的 lsi 芯片,多功能的 i/o 器件,可作为 cpu 总线与外围的接 口。 具有 24 个可编程设置的 i/o 口,即使 3 组 8 位的 i/o 口为 pa 口,pb 口和 pc 口。它们 又可分为两组 12 位的 i/o 口,a 组包括 a 口及 c 口(高 4 位,pc4pc
6、7),b 组包括 b 口 及 c 口(低 4 位,pc0pc3)。a 组可设置为基本的 i/o 口,闪控(strobe)的 i/o 闪控式, 双向 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
7、有两类控制字:一类控制字用于定义个端口的工作方式,称为方式选择控制字; 另一类控制子用于 c 端口的任意一位进行置位或复位操作,称为置位复位控制字。 (1) 方式选择控制字 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
8、) 置位复位控制字 c 口的数位常用来产生控制信号(如应答式数据传送中断请求信号)或其他应答信号, 可通过置位复位控制字来使端口 c 的任一位引脚的输出单独置“1”或置“0” 。 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=750
9、vext=1.5v 供应电流120 ma 2.2 步进电机步进电机 1.1.步进电机的速度控制及运动规划步进电机的速度控制及运动规划 步进电机区别于其他控制用途电机的最大特点是,它可接受数字控制信号(电脉冲信号) 并转化成与之相对应的角位移或直线位移,因而本身就是一个完成数字模拟转化的执行元件。 而且它能进行开环位置控制,输入一个脉冲信号就得到一个规定的位置增量。这样的增量位 置控制系统与传统的直流伺服系统相比,其成本明显降低,几乎不必进行系统调整。因此, 步进电机广泛应用于数控机床、机器人、遥控、航天等领域,特别是微型计算机和微电子技 术的发展,使步进电机获得更为广泛的应用。 2.2. 步进
10、电机的工作原理步进电机的工作原理 该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相 绕组按合适的时序通电,就能使步进电机步进转动。图 3-1 是该四相反应式步进电机工作原 理【图 1】 图 1四相反应式步进电机工作原理图 开始时,开关 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 相绕组的
11、磁极对齐。而 0、3 号齿和 a、b 相绕 组产生错齿,2、5 号齿就和 a、d 相绕组磁极产生错齿。依次类 推,a、b、c、d 四相绕 组轮流供电,则转子会沿着 a、b、c、d 方向转动。 四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单 四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双 四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。 3.3.步进电机的速度特性步进电机的速度特性 步进电机的转速取决于脉冲频率、转子齿数和拍数。其角速度与脉冲频率成正比,而且 在时间上与脉冲同步。因而在转子齿数和运行拍数一定的
12、情况下,只要控制脉冲频率即可获 得所需速度。由于步进电机是借助它的同步转矩而启动的,为了不发生失步,启动频率是不 高的。特别是随着功率的增加,转子直径增大,惯量增大,启动频率和最高运行频率可能相 差 10 倍之多。为了充分发挥电机的快速性能,通常使电机在低于启动频率下启动,然后逐 步增加脉冲频率直到所希望的速度,所选择的变化速率要保证电机不发生失步,并尽量缩短 启动加速时间。为了保证电机的定位精度,在停止以前必须使电机从最高速度逐步减小脉冲 率降到能够停止的速度(等于或稍大于启动速度)。因此,步进电机拖动负载高速移动一定 距离并精确定位时,一般来说都应包括“启动加速高速运行(匀速)减速停止”五
13、 个阶段,速度特性通常为梯形,如果移动的距离很短则为三角形速度特性,【图 3】 图 3 2.3 开关开关 1.功能 开关对步进电机的各种模式进行控制 2.功能分析 对步进电机进行控制,当开关打开时程序会扫描开关获得信息然后进入相应的模式中。 2.4led 灯灯 1) led 在本设计中的作用 本设计利用二极管能发光的特性,用于显示开关闭合。 2)led 功能分析 当开关打开时,其对应的 led 灯就会发光,给出提示。 3)led 技术参数 led 的压降一般为 1.52.0 v,其工作电流一般取 1020 ma 为宜。 3 3 控制程序设计控制程序设计 3.1 控制流程设计及其思路说明控制流程
14、设计及其思路说明 8255 内部包含 3 个 8 位的输入输出端口 a、b 和 c,端口 a 和端口 b 都可以用作一个 8 位的输入口或 8 位的输出口,端口 c 既可以作为一个 8 位的输入口或 8 位的输出口,又可 以作为两个 4 位的输入输出口(c 口上半部分和 c 口下半部分)使用,还可以配合 a 口和 b 口工作,分别用来产生 a 口和 b 口的输出控制信号和输入 a 口和 b 口的端口状态信号 3.2 程序流程图程序流程图 开始 初始化 8255a 是否有风速键按下 n 初始化风速-“弱”,类型-“正常” 风扇运行控制模块 是否有键按下 n 是风速键按下 风速 控制 模块 序 是
15、类型键按下 类型 控制 模块 序 是定时键按下 定时 控制 模块 序 y y y y n 是停止键按下 停止 控制 模块 序 yn n n y 3.33.3 控制程序控制程序 my8255_a equ 0ff00h ;8255a my8255_b equ 0ff01h ;8255b my8255_c equ 0ff02h ;8255c my8255_mode equ 0ff03h ;8255 stack1 segment stack dw 256 dup(?) stack1 ends data segment data ends code segment assume cs:code,ds:d
16、ata start: mov dx,my8255_mode mov al,90h out dx,al movdx,my8255_c moval,00h outdx,al movdx,my8255_b moval,0ffh outdx,al start1: mov dx,my8255_a/对 8255a 口进行扫描 inal,dx and al,00001000b cmpal,08h/对按键进行判断 jnzt1 call ziran /调用自然模式 t1: mov dx,my8255_a inal,dx and al,00000111b/屏蔽按键 cmp al,00h jnz t10 call
17、stop t10: cmp al,01h jnz t6 call qiang t6: cmp al,02h jnz t8 /al 非 02h 跳入 t8 call zhong t8: cmp al,04h jnz t9 call ruo t9: jmp start1 /自然模式 ziranprocnear mov dx,my8255_b /对 8255b 口进行初始化 mov al,0f7h out dx,al mov cx,40 /循环次数进行控制 t:mov di,1770h callzhengzhuan loopt calldl4s ret endp /强风模式 qiangprocnea
18、r mov dx,my8255_b /对 8255b 口进行初始化 mov al,0feh out dx,al mov di,0a00h mov dx,my8255_a /扫描 8255a 口 in al,dx and al,00010000b cmp al,10h /对按键进行判断 jnz t2 callfanzhuan cmp al,01h jz t3 t2:callzhengzhuan t3:ret endp /中风模式 zhongprocnear mov dx,my8255_b /对 8255b 口进行初始化 mov al,0fdh out dx,al mov di,1000h mov
19、 dx,my8255_a /扫描 8255a 口 in al,dx and al,00010000b cmp al,10h /对按键进行判断 jnz t4 t4:callfanzhuan cmp al,10h jnz t5 callzhengzhuan t5:ret endp /停止模式 stop procnear mov dx,my8255_b /对 8255b 口进行初始化 mov al,0ffh out dx,al mov dx,my8255_c /对 8255c 口进行初始化 mov al,00h out dx,al calldl500ms /调用延时 ret endp /弱风模式 r
20、uoprocnear mov dx,my8255_b /对 8255b 口进行初始化 mov al,0fbh out dx,al mov di,1b00h mov dx,my8255_a /扫描 8255a 口 in al,dx and al,00010000b cmp al,10h /对按键进行判断 jnz a1 callfanzhuan a1:cmp al,10h jnz a2 callzhengzhuan a2:ret endp /反转模式 fanzhuan procnear mov dx,my8255_a /扫描 8255a 口 in al,dx not al mov dx,my825
21、5_b out dx,al mov 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 /正转模式 zhengzhuanprocnear pushdx mov dx,my8255_c /对 8255c 口进行初始化 mov al,03h out dx,al calldelay mov al,06h /设置风扇的旋转方式 out dx,al
22、 calldelay mov al,0ch out dx,al calldelay mov al,09h out dx,al calldelay pop dx ret endp /延时程序设置 delay procnear pushcx mov cx,di date:loopdate pop cx ret endp dl500ms procnear pushcx mov cx,60000 dl500ms1: loopdl500ms1 pop cx ret dl500msendp dl4sprocnear pushcx mov cx,8 dl4s1:calldl500ms loopdl4s1 p
23、op cx ret endp 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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土地买卖合同协议
- 语文统编版一年级上册“an en in un ün”教学设计
- 计算基础技术及导论 3
- 2026年红色对联数字楹联创作与 AI 对仗系统研究
- 2026年青少年校外实践教育基地建设方案
- 2026年问题分析与解决能力培训案例集
- 体质健康管理
- 数字化时代大学生精神文化生活的引导策略
- 气管炎预防护理流程指南
- 淋巴瘤放疗后皮肤保护方法
- 三农电子商务创新创业项目
- 2025年教职人员个人总结
- 渣土运输车辆安全协议
- 薄型防火涂料施工方法方案
- 机械传动培训课
- 2025中证信息技术服务有限责任公司招聘16人考前自测高频考点模拟试题附答案
- 郑州铁路职业技术学院单招职业技能测试参考试题库(含答案)
- 鲜切花保鲜方法
- 2025年检验师资格考试模拟试题及答案
- 豆制品企业生产过程节能降耗方案
- 烟台劳动合同(标准版)
评论
0/150
提交评论