微机原理流水灯的设计

※※※※※※※※※ ※2008级学生微机原理 ※ ※

※※※

课程设计

※※※※※

※ ※ ※※

微机原理课程设计报告书

课题名称 姓 名

学 号 院、系、部 专 业 指导教师

物理与电信工程系 电子信息工程

流水彩灯的设计

2010年 7 月9日

流水灯显示实验的设计

一、设计目的

1、了解流水灯的工作原理。

2、掌握流水灯编程方法和芯片8255的逻辑功能及使用方法。 3、掌握一定的汇编语言知识,培养自己的动手操作能力。 4、学习程序设计的基本思路和方法

二、设计要求

1、设计题目

编写程序,使用8255的A 口和B 口均为输出,实现16位流水灯显示效果。 2、功能扩展

(1)、将流水灯设计成可以正着流水也可以选择倒着流水

(2)、通过开关可以对流水灯闪烁的速度进行控制,高电平时为快,低电平时为慢速。

三、设计思路

1、 总体方案设计分析

在本实验中要求我们用8255的A 口和B 口做为输出,接16个发光二极管,从而实现16位流水灯的显示效果,故基本的接线可以如下面图A 所示。在C 口的低两位接2个开关,实现2个扩展功能的控制。 ①基本流水灯显示电路

A 和B 两个端口不能同时赋值,从而在实验中我们可以用BX 进行需要赋值的数据的存储,因为BX 可以分从BH.BL 两部分进行独立的操作,在本次实验中我们用BH 对A 口进行赋值,用BL 对B 口进行赋值,通过延时一段时间再对BH ,BL 进行移位和输出,实现了流水灯的效果。

②正反方向选择

把PC.0口接在开关上,编写程序对C 端口的数据进行读取,并进行判断,使得当PC.0为高电平的时候则灯进行左移,低电平的时候则进行右移。同时B 口与A 口相反。 ③快慢速度控制

把PC.1口接在开关上,编写程序对C 端口的数据进行读取,并进行判断,使得当PC.1为高电平的时候则延时的时间缩短,使得流水灯的流水速度加快。低电平的时候则进行延时的时间变长,使得流水灯的流水速度加快。

四、电路及连线设计

1、该模块的WR 、RD 分别连到PC 总线接口模块的IOWR 、IORD 。

2、该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到PC 总线接口模块的数据(D0~D7)、地址线(A0~A7)。

3、8255模块选通线CS 连到PC 总线接口模块的IOY3。

4、8255的PA0~PA7连到发光二极管的L1~L8;8255的PB0~PB7连到发光二极管的L9~L16。5、8255的PC0、PC1分别连接在开关K0、K1

五、程序设计

程序清单如下: MY8255_A EQU 09860H MY8255_B EQU 09861H MY8255_C EQU 09862H MY8255_MODE EQU 09863H CODE SEGMENT ASSUME CS:CODE START:

MOV DX,MY8255_MODE

MOV AL,81H ;OUT DX,AL MOV CL,0

XOR BX,BX ;MOV DX,MY8255_B MOV AL,0FEH MOV BL,AL OUT DX,AL MOV DX,MY8255_A MOV AL,7FH MOV BH,AL

OUT DX,AL ;A1:

ROL BL,1

ROR BH,1 ;A3:

PUSH BX ;CALL BREAK ;CALL DELAY ;POP BX 设置A 口、B 口方式0输出,C 口低四位方式0输出将BX 清零 对A 口、B 口赋值,并将值保存在BH BL中 对BH BL做出相应的移位 保护现场

调用任意键退出程序 调用延时程序 ;恢复现场

MOV DX,MY8255_A MOV AL,BH OUT DX,AL MOV DX,MY8255_B MOV AL,BL

OUT DX,AL ;将移位后的结果输出 MOV DX,MY8255_C

IN AL,DX ;AND AL,01H ;方向

JNZ A2 JMP A1 A2:

ROL BH,1 ROR BL,1 JMP A3

DELAY PROC NEAR ;MOV CX,0FFFH K1:

MOV BX,0FFFH K2:

DEC BX CMP BX,1000H JNE K2

MOV DX,MY8255_C

IN AL,DX ;AND AL,02H ;时间变快

JNZ K3

将C 都的数据输入

查看PC0口是否有数据输入,改变流水灯的延时程序 将C 口的数据输入

查看PC1是否有输入,改变延时,使得延时的

LOOP K1 K3:

RET DELAY ENDP

BREAK PROC NEAR ;按任意键退出 MOV AH,06H MOV DL,0FFH INT 21H JE RETURN MOV AX,4C00H INT 21H RETURN:RET BREAK ENDP CODE ENDS END START

六、设计总结

这次微机原理课程设计我学到了很多在书本上所没有学到过的知识。以前在上课的时候对于编程工具的使用还处于一知半解的状态上,但是经过一段上机的实践,对于怎么去排错、查错,怎么去看每一步的运行结果,怎么去了解每个寄存器的内容以确保程序的正确性上都有了很大程度的提高。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,但总的来说还是圆满的。

七、参考文献

[1] 刘国钧,王连成.图书馆史研究[M].北京:高等教育出版社,1979:15-28,31. [2] 周明德,《微型计算机系统原理及应用》[M].北京:清华大学出版社,1996:27-30,20. [3] 李大友《微型计算机接口技术》. 清华大学出版社,2000:40-52.

[4] 楼顺天,周佳社. 微机原理与接口技术[M]. 北京:科学出版社,2006:297-298.

※※※※※※※※※ ※2008级学生微机原理 ※ ※

※※※

课程设计

※※※※※

※ ※ ※※

微机原理课程设计报告书

课题名称 姓 名

学 号 院、系、部 专 业 指导教师

物理与电信工程系 电子信息工程

流水彩灯的设计

2010年 7 月9日

流水灯显示实验的设计

一、设计目的

1、了解流水灯的工作原理。

2、掌握流水灯编程方法和芯片8255的逻辑功能及使用方法。 3、掌握一定的汇编语言知识,培养自己的动手操作能力。 4、学习程序设计的基本思路和方法

二、设计要求

1、设计题目

编写程序,使用8255的A 口和B 口均为输出,实现16位流水灯显示效果。 2、功能扩展

(1)、将流水灯设计成可以正着流水也可以选择倒着流水

(2)、通过开关可以对流水灯闪烁的速度进行控制,高电平时为快,低电平时为慢速。

三、设计思路

1、 总体方案设计分析

在本实验中要求我们用8255的A 口和B 口做为输出,接16个发光二极管,从而实现16位流水灯的显示效果,故基本的接线可以如下面图A 所示。在C 口的低两位接2个开关,实现2个扩展功能的控制。 ①基本流水灯显示电路

A 和B 两个端口不能同时赋值,从而在实验中我们可以用BX 进行需要赋值的数据的存储,因为BX 可以分从BH.BL 两部分进行独立的操作,在本次实验中我们用BH 对A 口进行赋值,用BL 对B 口进行赋值,通过延时一段时间再对BH ,BL 进行移位和输出,实现了流水灯的效果。

②正反方向选择

把PC.0口接在开关上,编写程序对C 端口的数据进行读取,并进行判断,使得当PC.0为高电平的时候则灯进行左移,低电平的时候则进行右移。同时B 口与A 口相反。 ③快慢速度控制

把PC.1口接在开关上,编写程序对C 端口的数据进行读取,并进行判断,使得当PC.1为高电平的时候则延时的时间缩短,使得流水灯的流水速度加快。低电平的时候则进行延时的时间变长,使得流水灯的流水速度加快。

四、电路及连线设计

1、该模块的WR 、RD 分别连到PC 总线接口模块的IOWR 、IORD 。

2、该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到PC 总线接口模块的数据(D0~D7)、地址线(A0~A7)。

3、8255模块选通线CS 连到PC 总线接口模块的IOY3。

4、8255的PA0~PA7连到发光二极管的L1~L8;8255的PB0~PB7连到发光二极管的L9~L16。5、8255的PC0、PC1分别连接在开关K0、K1

五、程序设计

程序清单如下: MY8255_A EQU 09860H MY8255_B EQU 09861H MY8255_C EQU 09862H MY8255_MODE EQU 09863H CODE SEGMENT ASSUME CS:CODE START:

MOV DX,MY8255_MODE

MOV AL,81H ;OUT DX,AL MOV CL,0

XOR BX,BX ;MOV DX,MY8255_B MOV AL,0FEH MOV BL,AL OUT DX,AL MOV DX,MY8255_A MOV AL,7FH MOV BH,AL

OUT DX,AL ;A1:

ROL BL,1

ROR BH,1 ;A3:

PUSH BX ;CALL BREAK ;CALL DELAY ;POP BX 设置A 口、B 口方式0输出,C 口低四位方式0输出将BX 清零 对A 口、B 口赋值,并将值保存在BH BL中 对BH BL做出相应的移位 保护现场

调用任意键退出程序 调用延时程序 ;恢复现场

MOV DX,MY8255_A MOV AL,BH OUT DX,AL MOV DX,MY8255_B MOV AL,BL

OUT DX,AL ;将移位后的结果输出 MOV DX,MY8255_C

IN AL,DX ;AND AL,01H ;方向

JNZ A2 JMP A1 A2:

ROL BH,1 ROR BL,1 JMP A3

DELAY PROC NEAR ;MOV CX,0FFFH K1:

MOV BX,0FFFH K2:

DEC BX CMP BX,1000H JNE K2

MOV DX,MY8255_C

IN AL,DX ;AND AL,02H ;时间变快

JNZ K3

将C 都的数据输入

查看PC0口是否有数据输入,改变流水灯的延时程序 将C 口的数据输入

查看PC1是否有输入,改变延时,使得延时的

LOOP K1 K3:

RET DELAY ENDP

BREAK PROC NEAR ;按任意键退出 MOV AH,06H MOV DL,0FFH INT 21H JE RETURN MOV AX,4C00H INT 21H RETURN:RET BREAK ENDP CODE ENDS END START

六、设计总结

这次微机原理课程设计我学到了很多在书本上所没有学到过的知识。以前在上课的时候对于编程工具的使用还处于一知半解的状态上,但是经过一段上机的实践,对于怎么去排错、查错,怎么去看每一步的运行结果,怎么去了解每个寄存器的内容以确保程序的正确性上都有了很大程度的提高。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,但总的来说还是圆满的。

七、参考文献

[1] 刘国钧,王连成.图书馆史研究[M].北京:高等教育出版社,1979:15-28,31. [2] 周明德,《微型计算机系统原理及应用》[M].北京:清华大学出版社,1996:27-30,20. [3] 李大友《微型计算机接口技术》. 清华大学出版社,2000:40-52.

[4] 楼顺天,周佳社. 微机原理与接口技术[M]. 北京:科学出版社,2006:297-298.


相关文章

  • 微机实验6
  • 姓 名: 专 业: 实验时间: 评定成绩:<微机实验及课程设计>实验报告 学号 61011108 东南大学 实验报告 实验六 8255 并行输入输出 学 号: 61011108 吴院电类 实 验 室: 2013年04月30日 报 ...查看


  • Proteus在[微型机原理]课程教学中的应用
  • [摘 要]本文通过对传统教学的优缺点分析,提出Proteus在<微型机原理>课程教学中的应用的需求,列举了在8086CPU与单片机的课程教学中的具体应用,论述了Proteus仿真软件在<微型机原理>课程教学中促时作用 ...查看


  • 流水灯课程设计
  • 单片微机原理与接口技术 课程设计报告 目录 1.引言.............................................................................................. ...查看


  • 微机原理与应用论文
  • <微机原理与应用>学后总结 这一学期过半了,而<微机原理与应用>也快结课了,就剩下考试了.记得刚开始学习这门课时,感觉摸不着头脑.面对着众多的术语.概念及原理性的问题不知道该如何下手.在了解课程的特点后,我发现,应该 ...查看


  • 可以调控的跑马灯
  • Hebei Normal University of Science & Technology 单片机原理 及应用课程设计 ( 2013 年至2014学年度第 2 学期) 题 目: 可以调控的走马灯 学 生 姓 名: 院(系.部): ...查看


  • 单片机实验三-流水灯实验
  • 电子信息工程系实验报告 课程名称:单片机与接口技术 实验项目名称:流水灯实验 实验时间:2013-5-9 班级:通信10 姓名:Microlab_4 学号: 实 验 目 的: 进一步熟悉keil仿真软件.proteus仿真软件的使用.了解并 ...查看


  • 单片机实训报告
  • 实训报告 题目名称:系 部:专业班级:学生姓名:学 号:指导教师:完成日期: 电气与信息工程系 2015年6月26日 新疆工程学院 实训评定意见 设计题目 单片机实训 系 部 电气与信息工程系 专业班级 学生姓名 评定意见: 指导教师(签名 ...查看


  • 中科大微机原理答案
  • 本科生期末试卷十一答案 一. 选择题 1.A 2.B 3.B 4.A 5.A 6.C 7.C 8.C .D 9.A 10.B 二.填空题 1.A .符号位S B .真值e C . 偏移值 2.A .内容 B .行地址表 C .段表.页表和快 ...查看


  • 三层电梯PLC控制系统的设计
  • 毕业设计说明书 课题名称 三层电梯PLC 控制系统的设计与调试 系 别 专 业 班 级 姓 名 学 号 指导教师 起讫时间:(共 4 周) 目录 绪论............................................. ...查看


热门内容