最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

微机原理流水灯的设计报告

来源:动视网 责编:小OO 时间:2025-09-26 20:53:38
文档

微机原理流水灯的设计报告

流水灯显示实验的设计一、设计目的1、了解流水灯的工作原理。2、掌握流水灯编程方法和芯片8255的逻辑功能及使用方法。3、掌握一定的汇编语言知识,培养自己的动手操作能力。4、学习程序设计的基本思路和方法二、设计要求1、设计题目编写程序,使用8255的A口和B口均为输出,实现16位流水灯显示效果。2、功能扩展(1)、将流水灯设计成可以正着流水也可以选择倒着流水(2)、通过开关可以对流水灯闪烁的速度进行控制,高电平时为快,低电平时为慢速。三、设计思路1、总体方案设计分析在本实验中要求我们用8255的
推荐度:
导读流水灯显示实验的设计一、设计目的1、了解流水灯的工作原理。2、掌握流水灯编程方法和芯片8255的逻辑功能及使用方法。3、掌握一定的汇编语言知识,培养自己的动手操作能力。4、学习程序设计的基本思路和方法二、设计要求1、设计题目编写程序,使用8255的A口和B口均为输出,实现16位流水灯显示效果。2、功能扩展(1)、将流水灯设计成可以正着流水也可以选择倒着流水(2)、通过开关可以对流水灯闪烁的速度进行控制,高电平时为快,低电平时为慢速。三、设计思路1、总体方案设计分析在本实验中要求我们用8255的
流水灯显示实验的设计

一、设计目的

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            ;设置A口、B口方式0输出,C口低四位方式0输出

OUT DX,AL

MOV CL,0

XOR BX,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             ;对A口、B口赋值,并将值保存在BH BL中

A1:   

      ROL BL,1

      ROR BH,1               ;对BH BL做出相应的移位

A3:

      PUSH BX                ;保护现场

CALL BREAK                  ;调用任意键退出程序

CALL DELAY                  ;调用延时程序

POP BX                       ;恢复现场

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                      ;将C都的数据输入

AND AL,01H                    ;查看PC0口是否有数据输入,改变流水灯的方向

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                    ;将C口的数据输入

AND AL,02H                  ;查看PC1是否有输入,改变延时,使得延时的时间变快

JNZ K3                       

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.

文档

微机原理流水灯的设计报告

流水灯显示实验的设计一、设计目的1、了解流水灯的工作原理。2、掌握流水灯编程方法和芯片8255的逻辑功能及使用方法。3、掌握一定的汇编语言知识,培养自己的动手操作能力。4、学习程序设计的基本思路和方法二、设计要求1、设计题目编写程序,使用8255的A口和B口均为输出,实现16位流水灯显示效果。2、功能扩展(1)、将流水灯设计成可以正着流水也可以选择倒着流水(2)、通过开关可以对流水灯闪烁的速度进行控制,高电平时为快,低电平时为慢速。三、设计思路1、总体方案设计分析在本实验中要求我们用8255的
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top