微机原理跑马灯课设报告..docVIP

  • 268
  • 0
  • 约8.28千字
  • 约 20页
  • 2017-01-12 发布于重庆
  • 举报
微机原理跑马灯课设报告.

微机原理 课程设计说明书 设计题目:跑马灯 学 院 计算机科学与工程学院 专 业 计算机科学与技术专业 班 级 学 生 学 号 同组者 指导教师 2014 年 春季 学期 目录 一、 实验简介 3 1、基本要求 3 2、设计提示 3 3、进一步设计要求 3 二、 实验原理 3 1、 实验原理描述 3 2、8254芯片 4 2.1、8254芯片组成部分 4 2.2、8254芯片工作方式 4 3、8255芯片 5 3.1、8255芯片的组成部分 5 3.2、8255芯片工作方式 6 4、实验原理图 7 三、 实验流程图与源程序 7 1、 流程图 7 1.1、 主程序流程图 8 1.2 Appmain 子程序流程图 8 1.3 灯跳转阶段流程图 10 2、源程序(见附录) 11 四、 实验结果与测试 11 五、 实验提高与扩展 11 六、 个人心得与体会 12 附录 13 实验简介: 1、基本要求: 采用8254精确定时,LED的点亮规律为LED7---LED0,每一个LED的点亮时间间隔由逻辑电平开关K1、K2、K3选择,K1的时间间隔为0.5s,K2的时间间隔为1.0s,K3的时间间隔为1.5s。当主机键盘按下任意键时停止演示。 2、设计提示: 采用8255的A口接LED灯,B口接逻辑电平开关K1、K2与K3。在8254的中断服务程序中完成对灯的控制,主程序检测灯的变化,改变点亮LED的时间间隔。 3、进一步设计要求: 将LED的点亮规律变为LED7---LED0---LED7。 实验原理: 实验原理描述: 该实验中跑马灯采用8255和8254芯片来实现,利用8254芯片来做定时器,采用8254的方式3(方波发声器),因此在8254芯中采用级联的方法,以此来控制跑马灯中实现0.5s,1.0s,1.5s的效果片;在8255芯片中将A口当做输出口连接LED灯,B口一个输入口来掌控三个逻辑开关的打开与关闭,选择三种不同的时间间隔,C7口作为另一个输入口连接着8254芯片的OUT1口来读从8254芯片传来的三种不同大小的频率之一,以此来实现具有三种不同时间间隔跳转的跑马灯。 2、8254芯片: 2.1、8254芯片组成部分: (1)数据总线缓冲器: 数据总线缓冲器是一个三态、双向8位寄存器主要作用是与cpu进行数据交换,8位数据线D7~D0与CPU的系统数据总线连接,构成CPU和8254之间信息传送的通道,CPU通过数据总线缓冲器向8254写入控制命令、计数初始值或读取计数值。 (2)读写逻辑: 读写逻辑是芯片的控制部分,编程人员通过控制信号的选择来选择芯片的工作方式。读/写控制逻辑用来接收CPU系统总线的读、写控制信号和端口选择信号,用于控制8254内部寄存器的读/写操作。 (3)控制字寄存器: 控制寄存器是一个只能写不能读的8位寄存器,系统通过指令将控制字写入控制寄存器,设定8254的不同工作方式。 (4)计数器; 8254内部有三个结构完全相同而又相互独立的16位减“1”计数器,每个计数器有六种工作方式,各自可按照编程设定的方式工作。 2.2、8254芯片工作方式: 8254芯片共有六种工作方式,分别对应与六种不同的用途。 (1)方式0:计数结束中断方式,写入N后开始计数计数器为0 ,OUT输出H. (2)方式1:可编程单稳态,外部GATE触发 OUT输出单拍负脉冲宽度N个CLK. (3)方式2:速率发生器,每N个CLK输一个宽度为一个CLK周期的负脉冲 ,不断重复. (4)方式3:方波发生器,N=偶,N/2个1,N/2个0N=奇,(N+1)/2个1,(N-1)/2个0 不断重复. (5)方式4:软触发选通,写入N后开始计数计数器为0,OUT输出一个宽度为CLK周期的负脉冲. (6)方式5:硬触发选通,写入N后GATE上升沿,开始计数计数器为0 ,写入N后GATE上升沿,开始计数计数器为0 ,OUT输出一个宽度为CLK,周期的负脉冲,OUT输出一个宽度为CLK,周期的负脉冲. 本次课设中,只是使用到了8254的工作方式3,将其当做一个方波发生器来使用,为8255提供固定频率的方波信号,8255以此来控制灯的点亮情况。使用8254的计数0和计数器1来进行级联,从out1中输出方波信号。 3、8255芯片: 3.1、8255芯片的组成部分:

文档评论(0)

1亿VIP精品文档

相关文档