1、 1 第一章 绪 论 1.1 概述 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统 控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往 往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件 结构,以及针对具体应用对象特点的软件结合,加以完善。交通信号灯的出现, 使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有 明显效果。 1.2 设计目的 微机应用系统设计与综合实验(实践) 课程设计是自动化专业本科生必修 的一门技术基础课。通过本课程设计,让学生对微机系统有一个较全面的理解, 对典型数字接口电路的应用技术有一个
2、较深入的掌握, 并对应用系统进行硬件原 理和软件编程进行分析、设计和调试,达到基本掌握简单微型计算机应用系统软 硬件的设计方法,提高项目开发能力的目的。要求同学独立完成课题,写出课程 设计说明书,画出电路原理图,说明工作原理,画出电路印制板图, 编写设计 程序及程序流程图。希望同学们认真阅读课程设计任务书,认真查阅资料,完成 好上机调试,圆满完成本次课程设计。 1.3 设计任务和内容 设计题 10:交通灯控制功能设计(限 2-3 人) 设计要求: (1) 、编程语言为 C 语言和汇编语言; (2) 、硬件电路基于 80x86 微机接口; (3) 、程序功能要求:小键盘给定、数码管(屏幕)显示;
3、 (4) 、具备急救车应急响应功能和时间倒计时显示功能。 实验仪器与设备 (1) TPC-H 通用微机接口实验系统 1 台。 (2) IBM-PC 微型计算机 1 台。 第二章 总体设计及核心器件简介 2.1 总体设计 通过采用 8086、8255、IO 接口电路、键盘、LED 数字灯显示、发光二极管 组成交通灯演示系统。 利用 8255 与键盘扫描单元, 编写程序完成按键扫描功能, 并将倒计时时间显示在数码管上。按键可以完成置数功能和各种控制功能,同时 利用 8086 重复刷新数码管产生一秒延时,延时一秒之后,将倒计时时间减少一 2 秒,并利用刷新数码管显示出当前剩余时间,到倒计时时间为零,
4、通过利用 IO 接口电路将控制信号传送给发光二极管,使之发光或者熄灭。 2.2 CPU8086 8086 简介 8086CPU根据它的基本性能,应包括 20条地址线,16条数据线, 加上控制信号,电源和地线,芯片的引脚比较多。但由于制造工艺的 限制,8086CPU 芯片采用了 40 条引脚的双列直插式封装。 2.3 8255A 8255A 是 Intel 公司生产的可编程输入输出接口芯片,它具有 3 个 8 位的并 I/O 口,具有三种工作方式,可通过程序改变其功能,因而使用灵活,通用性 强。8255 有三种基本工作方式, 三种工作方式由工作方式控制字决定,方式控 制字由CPU通过输入/输出指
5、令来提供.三个端口中PC口被分为两个部分,上半部 分随 PA 口称为 A 组,下半部分随 PB 口称为 B 组.其中 PA 口可工作与方式 0、1 和 2,而 PB 口只能工作在方式 0 和 1。8255 共有 40 个引脚,采用双列直插式封 装。其引脚图如图 2-4 所示,各引脚功能如下:(8255A 引脚图如下:) 3 D0-D7:三态双向数据线,与单片机数据总线连接,用来传送数据信息。 CS:片选信号线,低电平有效,表示芯片被选中。 RD:读出信号线,低电平有效,控制数据的读出。 WR:写入信号线,低电平有效,控制数据的写入。 Vcc:+5V 电源。 PA0-PA7:A 口输入/输出线。
6、 PB0-PB7:B 口输入/输出线。 PC0-PC7:C 口输入/输出线。 RESET:复位信号线。 A1、A0:地址线,用来选择 8255 内部端口。 GND:地线。 2.4 键盘扫描与数码显示模块 X1X4 控制 4 位数码管的公共端,并连接到按键的一端,作为列选,确定是哪 一列的按键按下,Y1Y4 连接到按键的另一端,作为行选,用于检测哪一行的 按键按下。结合行选和列选即可得出是哪一个的按键按下,在软件设计上要注意 消除按键抖动的处理以及数码管显示的刷新。 键盘及数码管显示单元电路结构图 4 2.5 IO 接口电路模块 IO 接口电路主要是将信号传递给信号灯,使之点亮或者熄灭。 IO 接口利用三态缓冲器 74LS245,锁存器 74LS374 设计微机总线和外部设 备的数据通道, 实现微机对外部数据的读取和对输出数据的输出。 用开关及 LED 显示单元的开关和数据灯作为输入和输出显示设备, 将开关的数据读入总线或者 将总线的数据传递到数据灯。实验中我们可以利用开关控制交通灯的功能,但是 设计中要求我们使用小键盘控制,因此我们主要利用 IO 接口电路