汇编与微机原理课程设计报告
- 格式:docx
- 大小:8.44 MB
- 文档页数:28
微机接口课程设计报告
(题目:模拟自动门)
指导老师郭兰英
班级2015240204
目录
一概述 (1)
1.1 课程设计名称 (1)
1.2 课程设计要求 (1)
1.3 课程设计目的 (1)
二设计思想 (1)
三实施方案 (2)
3.1 获得传感器和“门”的状态 (2)
3.2 驱动步进电机和点阵模块 (2)
3.3 实现硬件延时 (3)
四硬件原理 (3)
4.1 中断控制器8259 (4)
4.2并行接口8255 (4)
4.3 定时/计数器8254 (5)
4.4 点阵LED显示屏 (5)
4.5 步进电机 (6)
4.6 红外距离传感器 (7)
五软件流程 (8)
六程序运行结果及分析 (11)
6.1 开门状态 (11)
6.2 关门状态 (12)
6.3 关门操作进行时中断到开门操作 (14)
6.4特殊状态 (15)
七个人感想 (16)
八附录 (18)
一、概述
1.1课程设计名称
模拟自动门
1.2课程设计要求
1)用汇编语言编程完成硬件接口功能设计。
2)硬件电路基于80x86微机接口。
3)程序功能包含:步进电机转动、点阵显示开关门、传感器检测是否有人、8254延时。
4)传感器检测有人时开门,门全开后延时几秒关门,若关门时检测到有人,立刻开门。
1.3课程设计目的
通过本课程设计,让学生对微机系统有一个较面的理解,对典型数字接口电路的应用技术有一个较深入的掌握,并对应用系统进行硬件原理和软件编程进行分析、设计和调试,达到基本掌握简单微型计算机应用系统软硬件的设计方法,提高项目开发能力的目的。要求同学分组完成课题,写出课程设计说明书,画出电路原理图,说明工作原理,编写设计程序及程序流程图。
二、设计思想
本程序主要功能是模拟商场等公共场所的自动门,实现有物体靠近并被传感器检测到时发生一系列变化的效果,模拟实现开门关门的功能。
为了尽量模拟真实场景下的自动门状态变化,本程序主要可以实现以下功能:
1、当传感器可检测范围内检测到物体,并且“门”为“关”的状态,立即“打开门”,即用一系列的硬件动作模拟自动门打开的动作和状态。
2、当“门”完全打开后一段时间后,传感器范围内检测不到物体时,立即“关闭门”, 用一系列的硬件动作模拟自动门关闭的动作和状态。
3、当“门”完全打开后一段时间后,传感器可检测范围内检测到物体,则继续维持“门”完全打开状态一段时间。
4、“门”正在关闭的过程中“有人靠近”,即传感器检测到物体,应立即终止“关门”动作,然后“开门”,即将“门”由当前状态转换到完全开的状态。
5、当传感器可检测范围内检测不到物体,并且“门”为“关”的状态,不做任何操作。
考虑到试验箱的硬件资源,本次课设用步进电机和点阵显示模块模拟门的同状态,距离传感器采用红外传感器。
三、实施方案
3.1获得传感器和“门”的状态
本次课程设计主要利用红外距离传感器检测是否有“人”靠近,即当传感器可检测范围内有物体时,传感器的OUT端会输出低电平信号。将传感器的OUT端与8255芯片的PA0引脚相连,CPU读8255 A口即可获得当前传感器的状态,该位为…1‟表示没有人,该位为…0‟表示有人。“门”的状态则是由一个单字节的内存量的第1位标记,该位为…0‟表示门为关状态,该位为…1‟表示门为开状态。
3.2驱动步进电机和点阵模块
如图3.1所示,本次课程设计用步进电机顺时针转动和点阵模块闪烁显示两个反相的箭头表示正在开门状态;如图3.2所示,用步进电机逆时针转动和点阵模块闪烁显示两个相对的箭头表示关门状态;用步进电机指针指向“开”字样和点阵模块持续显示两个反向的箭头表示门完全打开状态;用步进电机指针指向“关”字样和点阵模块持续显示两个相向的箭头表示门完全关闭状态;步进电3机用82455 B口驱动,将8255 B口的低四位与步进电机的驱动部分连接,CPU向8255 B口写相应的值即可驱动步进电机做相应的动作;点阵模块则是直接与系统总线链接,IOY0~IOY3与CS1、CS2、CS4、CS3相连,配合相应的程序即可实现箭头的显示。
图3.1关门时系统状态图3.2关门时系统状态
3.3实现硬件延时
门完全打开后,需要延时一段时间,才进行下一次检测,实现没人关门,有人则继续开门的功能。本次课程采用8254芯片计时3.5秒,门完全打开后,启动8254计时,CPU进入“忙等”状态,直到中断程序修2改标志量。由于8254芯片和点阵会同时工作,而且片选信号冲突,所以选择1通道,时钟频率选择18.432KHz,片选接IOY1。
四、硬件原理
4.1系统概述
本次课设设计的的模拟自动门所用到的硬件电路基于80x86微机接口,用到的有中断控制器8259,并行接口8255,定时/计数器8254,点阵LED显示屏,步进电机。系统连线图如下:
图4.1 系统连线图
4.2中断控制器8259
在自动门系统中,当门完全打开时需要开中断,然后打开8254计数器进行延时。中断在Intel 386EX 芯片中集成有中断控制单元(ICU),该单元包含有两个级联中断控制器,一个为主控制器,一个为从控制器。该中断控制单元就功能而言与工业上标准的82C59A 是一致的,操作方法也相同。从片的INT 连接到主片的IR2 信号上构成两片8259 的级联。在TD-PITE 实验系统中,将主控制器的IR6、IR7 以及从控制器的IR1 开放出来供用户使用,主片8259 的IR4 供系统串口使用。8259 的内部连接及外部管脚引出如图4.2,系统接线图如图4.3。
图4.2 8259内部连接及外部引脚
图4.3 8259连线图
4.3并行接口8255
并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。CPU 和接口之间的数据传送总是并行的,即可以同时传递8 位、16 位或32 位等。8255 可编程外围接口芯片具有A、B、C 三个并行接口,用+5V 单电源供电,能在三种方式下工作,本系统使用方式0,定义A口为方式0输入,B口为方式0输出。工作时,8255负责从A口读入红外传感器输出,从B口输驱动步进电机转动。