微机原理课程设计南京工程学院电气工程讲义.docx

上传人:b****3 文档编号:4564472 上传时间:2023-05-07 格式:DOCX 页数:19 大小:231.17KB
下载 相关 举报
微机原理课程设计南京工程学院电气工程讲义.docx_第1页
第1页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第2页
第2页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第3页
第3页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第4页
第4页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第5页
第5页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第6页
第6页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第7页
第7页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第8页
第8页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第9页
第9页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第10页
第10页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第11页
第11页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第12页
第12页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第13页
第13页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第14页
第14页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第15页
第15页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第16页
第16页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第17页
第17页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第18页
第18页 / 共19页
微机原理课程设计南京工程学院电气工程讲义.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

微机原理课程设计南京工程学院电气工程讲义.docx

《微机原理课程设计南京工程学院电气工程讲义.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计南京工程学院电气工程讲义.docx(19页珍藏版)》请在冰点文库上搜索。

微机原理课程设计南京工程学院电气工程讲义.docx

微机原理课程设计南京工程学院电气工程讲义

南京工程学院

课程设计报告书

 

课程名称微机原理及应用A

院系电力工程学院

专业电气工程及其自动化

班级

学生姓名

学号

设计地点

起止日期

指导教师

目录

Ⅰ.带数码管显示的交通灯模拟控制系统设计(任务书)

一、设计目的

二、课程设计题目及要求

三、课程设计任务及工作量的要求

四、主要参考文献

五、课程设计进度安排

六、成绩考核办法

Ⅱ.带数码管显示的交通灯模拟控制系统设计(报告书)

一、设计概述及目的

二、设计要求

三、设计内容

四、引脚图、接线图、程序运行图

五、心得体会

带数码管显示的交通灯模拟控制系统设计(任务书)

1.课程设计应达到的目的

 

1)通过一个微机应用实例建立微机系统的整体概念。

2)学习掌握微机系统的硬件、软件的工作原理以及两者间的配合关系和方法。

3)掌握8088应用系统的设计方法,掌握可编程接口芯片8255、8253、8259的应用和编程方法,做到理论联系实际。

4)进一步掌握8086/8088汇编语言程序设计方法及程序调试方法。

 

2.课程设计题目及要求

课题名称带数码管显示的交通灯模拟控制系统设计

在STARES598PCI实验系统的基础上,应用可编程并行接口8255、定时/计数器8253、可编程中断控制器8259等I/O接口芯片,设计一个十字路口交通信号灯模拟控制系统。

完成以下要求:

1)设计并绘制系统的电路原理图

2)绘制具备相关功能的程序流程图

3)根据设计的流程图编写汇编语言源程序

4)在STARES598PCI实验系统上调试运行程序,完成设计功能要求。

具体的交通灯模拟控制系统的功能及设计任务见附页。

 

 

3.课程设计任务及工作量的要求〔包括课程设计计算说明书、图纸、实物样品等要求〕

本次课程设计进行交通信号灯模拟控制系统的设计。

预习要求:

1)预习《微机原理及接口技术实验指导书》附录B中实验仪硬件环境及星研集成环境软件的操作方法。

2)复习《微机原理及接口技术实验指导书》中第2部分实验一、二、三、四等8255、8253、8259实验。

预习指导书中第4部分课程设计题目一和课程设计题目二,并在星研实验装置上调试实现。

3)预习本任务书,根据设计任务,预先画出电路原理图、程序流程图,编写程序。

设计报告要求:

1)画出接口部分电路原理图,并阐述系统工作原理。

2)绘制程序流程图(Visio绘制)、给出源程序清单。

3)调试过程描述和结果说明。

4)设计、调试过程中遇到的问题和解决方法以及整个课程设计的心得。

5)要求用WORD撰写报告,上交打印报告和电子稿(全班刻盘)。

4.主要参考文献

1、李干林,李升.微机原理及接口技术实验指导书.北京:

北京大学出版社.

2、李继灿.新编16/32位微型计算机原理及应用(第4版).北京:

清华大学出版社.

5.课程设计进度安排

起止日期

工作内容

3月10日前

3月11日

3月12日~3月14日

3月15日

任务布置,预习,绘制程序流程图,编写源程序

在星研实验装置上调试预习实验内容

在星研实验装置上进行设计内容调试

验收答辩,撰写论文

6.成绩考核办法

实验表现占30%,验收答辩占30%,设计报告占40%。

教研室审查意见:

同意。

 

教研室主任签字:

鞠阳

2013年3月6日

院(系、部、中心)意见:

同意。

主管领导签字:

李祖明

2013年3月6日

 

带数码管显示的交通灯模拟控制系统设计(报告书)

一、设计概述及目的

在STARES598PCI实验系统的基础上,应用可编程并行接口8255、定时/计数器8253、可编程中断控制器8259等I/O接口芯片,设计一个十字路口交通信号灯模拟控制系统。

通过设计一个十字路口交通灯系统掌握8255、8253、8259等接口芯片的编程和应用方法,做到理论联系实际。

二、设计要求

要求绘制流程图、编写源程序,并在实验系统上调试通过程序。

三、设计内容

1、十字路口交通信号灯设置

某十字路口交通信号灯系统在4个路口均装设红、绿2个灯,并装设数码管显示倒计时。

图1交通信号灯设置

实验时用LED(发光二极管)代替十字路口的红绿灯。

2、交通信号灯亮灭规律

交通信号灯系统初始状态为所有红灯闪烁N1秒钟(不必在数码管显示);之后东西向车行道绿灯亮,车辆放行N秒钟,此时南北向车行道红灯亮,之后转为南北向车行道放行N秒钟,如此循环重复。

要求数码管能够显示倒计时。

参数选择:

N=20s/25s…85s/90s(每隔5s取一个秒数)

N1≤10s,闪烁次数为3~8次

每组自行选择N、N1(及闪烁次数)。

3、设计分析

设有一个十字路口,其道路为南北方向和东西方向,南北、东西各用一组发光二极管表示,路口交通信号灯的亮灭规律如下:

(1)非工作状态:

南北、东西方向黄灯以0.5s的时间间隔亮灭,红灯、绿灯灭。

时间数码管无显示。

(2)工作状态下:

1南北绿灯亮(18s),东西红灯亮(其他信号灯灭)。

2南北黄灯亮(2s),东西红灯亮(其他信号灯灭)。

3南北红灯亮(18s),东西绿灯亮(其他信号灯灭)。

4南北红灯亮(2s),东西黄灯亮(其他信号灯灭)。

5转①循环。

采用数码管显示20s递减到01s,再循环。

4、详解设计

(1)由人工控制模拟装置输入状态信号“工作状态/非工作状态”的开关信号,由控制拨动开关K连接到8255的PC7输入口。

(2)模拟装置交通灯灯光由试验仪的LED发光二极管显示,设计可由8255A口输出信号实现,见表4-1。

 

表4-1带时间显示的十字路口交通信号模拟装置及8255A输入/输出信号一览表(供参考)

8255-PB输出方式

PCH输入方式

8255-PA输出方式

PCL输出方式

引脚

输出信号

引脚

输入信号

引脚

输出信号

引脚

数码管的位码选择

PB7

驱动数码管

PC7

开关工作/非工作

PA7

 

 

PB6

PC6

 

PA6

东西红灯

 

PB5

PC5

8253-OUT2

PA5

东西黄灯

 

PB4

PC4

 

PA4

东西绿灯

 

PB3

 

 

PA3

 

PC3

PB2

 

 

PA2

南北红灯

PC2

PB1

 

 

PA1

南北黄灯

PC1

PB0

 

 

PA0

南北绿灯

PC0

注:

①8255-PA输出方式可根据实验设备红绿黄灯的具体位置改变。

②采用软件延时时,则8255的PC5不接用8253-OUT2。

 

(3)定时:

采用软件延时或者采用8253计数器2方式0进行定时,从而确定时间。

(8253计数器2的输出OUT2可接入8255的PC5输入。

(4)时间显示采用试验仪的数码管显示,4个数码管的位码选择(低电平有效)由8255的PC3~PC0来确定。

显示内容由8255的B口接线到数码管数据线来确定。

3、程序流程

实验主流程图如图4.1所示。

数据段主要内容如下。

(1)4种LED发光二极管显示如下:

①南北:

红灯。

东西:

绿灯。

②南北:

红灯。

东西:

黄灯。

③南北:

绿灯。

东西:

红灯。

④南北:

黄灯。

东西:

红灯。

(2)0~9数码管显示如下:

DB:

3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH。

工作状态循环子程序内容参考提示如下。

循环:

查询“工作/非工作”输入的开关信号,该信号为“1”为继续,为“0”为返回主程序调用非工作子程序。

输出:

①南北为红灯,东西为绿灯,数码管位码确定→BL(两个数码管显示),循环调用18次延时1s子程序。

输出:

②南北为红灯,东西为黄灯,调用2次延时1s子程序。

输出:

③南北为绿灯,东西为红灯,数码管位码确定→BL(两个数码管显示),循环调用18次延时1s子程序。

输出:

④南北为黄灯,东西为红灯,调用2次延时1s子程序。

注意①:

延时1s子程序中显示时间的内容每次需改变(如时间20放在AL中,下一秒减1为10),用DAS指令调整。

②:

数码管位码,PCL某位为0则选中对应的数码管。

非工作状态循环子程序内容参考提示如下。

循环:

查询“工作/非工作”开关信号,该信号为“0”则继续,为“1”则返回主程序调用工作子程序。

调用延时0.5s子程序,黄灯灭。

调用延时0.5s子程序,黄灯亮。

动态显示子程序参考提示如下。

(1)位码输出→PCL;

(2)取显示数据查表转换成为段码(如时间20先显示2)→B口;

(3)采用软件延时5ms;

如下为延时约5ms程序(设8088主频为6MHz):

LP2:

MOVSI,3AAH

LP1:

PUSHF

POPF

DECSI

JNZLP1;延时5ms

(4)位码右移1位输出→PCL;

(5)取显示数据查表转换成为段码(如时间20再显示0)→B口;

(6)返回。

源程序如下。

DATASEGMENT

K8255AEQU0F000H;8255的A口

K8255BEQU0F001H

K8255CEQU0F002H

K8255CTRLEQU0F003H

NBDXDB0EBH,0DBH,0BEH,0BDH;4种LED发光二极管显示状态

TABLE1DB3FH,06H,5BH,4FH,66H,;0~9数码显示

6DH,7DH,07H,7FH,6FH

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

;=============================主程序==================

MAIN:

MOVAX,DATA;数据段、堆栈段初始化

MOVDS,AC

MOVDX,K8255CTRL

MOVAL,88H

OUTDX,AL;8255工作方式初始化

MOVAL,0FFH;8255输出数据初始化

MOVDX,K8255A

OUTDX,AL

MOVDX,K8255C

OUTDX,AL

TEST1:

MOVDX,K8255C

INAL,DX;检测工作/非工作开关状态

ANDAL,80H

JZLL

CALLGONGZUO

LL:

CALLFEIGZ

JMPTEST1

;===========================工作循环子程序=============

GONGZUOPROC

SS1:

MOVDX,K8255C

INAL,DX

ANDAL,80H

JNZMM

RET;查询工作/非工作开关状态

MM:

MOVSI,OFFSERNBDX

MOVAL,[SI]

MOVDX,K8255A

OUTDX,AL;LED显示第①种状态

MOVCX,18;18次调用1s延时子程序

MOVBL,0FEH;数码管位码确定

MOVAL,20H;显示时间内容

NN:

PUSHCX

MOVCX,100;确定延时1s系数

CALLDELAY;调用1s延时

POPCX

DECAL;显示时间内容减1

DAS

LOOPNN

MOVSI,OFFSETNBDX

MOVAL,[SI+1]

MOVDX,K8255A

OUTDX,AL;LED显示第②种状态

MOVAL,02;显示时间内容

MOVCX,100;确定延时1s系数

CALLDELAY;调用1s延时

DECAL

MOVCX,100;确定延时1s系数

CALLDELAY;调用1s延时

MOVSI,OFFSETNBDX

MOVAL,[SI+2]

MOVDX,K8255A

OUTDX,AL;LED显示第③种状态

MOVCX,18;18次调用1s延时子程序

MOVbL,11111011B;数码管位码确定111111011B

MOVAL,20H;显示时间内容

PUSHCX

MOVCX,100;确定延时1s系数

CALLDELAY;调用1s延时

POPCX

DECAL;显示时间内容减1

DAS

LOOPPP

MOVSI,OFFSETNBDX

MOVAL,[SI+3]

MOVDX,K8255A

OUTDX,AL;LED显示第④种状态

MOVAL,02;显示时间内容

MOVCX,100;确定延时1s系数

CALLDELAY;调用1s延时

DECAL

MOVCX,100;确定延时1s系数

JMPSS1

GONGZUOENDP

;==========================非工作子程序===================

FEIGZPROC

RRMOVDX,K8255C

INAL,DX

ANDAL,80H

JZTT

RET;查询工作/非工作开关状态

TT:

MOVAL,0FFH

MOVDX,K8255A

OUTDX,AL;黄灯灭

MOVCX,100

PP1:

CALLDELAY5ms

LOOPPP1

MOVBL,0FFH

MOVAL,BL

MOVDX,K8255C

OUTDX,AL;熄灭数码管

MOVAL,11011101B

MOVDX,K8255A

OUTDX,AL;黄灯亮

MOVCX,100

PP2:

CALLDELAY5ms

LOOPPP2

JMPRR

FEIGZENDP

;==========================延时1s子程序==================

DELAYPROC

LP:

CALLDELAY5ms

CALLDISPLAY1;调用动态显示子程序

LOOPLP;10ms周期计数

RET

DELAYENDP

;==========================动态显示子程序=================

DISPLAY1PROC

PUSHAX

MOVAL,BL

MOVDX,K8255C

OUTDX,AL

POPAX

MOVBH,AL

PUSHAX

SHRBH,1

SHRBH,1

SHRBH,1

SHRBH,1;截取显示时间的高位

MOVAX,OFFSETTABLE1;显示缓冲区首地址

ADDAL,BH

MOVSI,AX

MOVAL,[SI]

MOVDX,K8255B

OUTDX,AL;显示时间的高位

CALLDELAY5ms

MOVAL,BL

ROLAL,1

MOVDX,K8255C

OUTDX,AL;位码右移1位输出→PCL

POPAX

MOVBH,AL

PUSHAX

ANDBH,0FH;截取显示时间的低位

MOVAX,OFFSETTABLE1;显示缓冲区首地址

ADDAL,BH

MOVSI,AX

MOVAL,[SI]

MOVDX,K8255B

OUTDX,AL;显示时间低位

POPAX

RET

DISPLAY1ENDP

DISPLAY5msPROC

LP2:

MOVSI,3AAH

LP1;PUSHF

POPF

DECSI

JNZLP1;延时5ms

RET

DELAY

DELAY5msENDP

CODEENDS

ENDMAIN

四、引脚图、接线图、程序运行图

 

五、心得体会

3月11日至3月15日,我们进行了为期一周的微机课程设计,此次课题设计任务是要设计一个带数码管显示的交通灯模拟控制系统。

这次课程设计对于我来说,是一个巨大的挑战,因为我深知自己微机原理这门课并不是学的很好,有很多薄弱的地方,所以在设计周前,我先认真预习《微机原理及接口技术实验指导书》,也查了很多关于此次课程设计的资料,比如说要了解8086芯片中各个引脚的功能,怎么样去使用8255这个可编程并行接口芯片,怎么样使用8253来定时及输出一定频率的脉冲。

在查资料的过程中,我深刻体会到了微机原理及应用是一门理论性和实践性很强的课程,能够培养我们的微机软,硬件设计与应用能力、工程意识和创新能力。

因此,如果我们想真正学会这门课程,必须在重视理论基础知识学习的同时,还要认真重视实验学习,通过课程设计来增强我们的动手解决实际问题的能力。

或许是我的汇编语言学得不够好,我只能借助参考资料,查每一条指令的作用与功能。

在查询过程中,我发现汇编语言是一种很神奇的语言,每一条指令都值得推敲,例如:

MOVAL,88H中,88H是指,对于8255A的控制字格式,我们选择A组方式选择为方式0,端口A为输出,端口C(上半部)为输入,B组方式选择为方式0,端口B为输出,端口C(下半部)为输出,所以,写入方式控制字为10001000,将其转换为十六进制数即为88H。

经过一周的学习与实践,我体会到学习理论知识固然重要,但在你学完了之后,你不在实践中运用你所学的知识,是不行的,过一段时间后,你可能什么都记不起来了,正如我校校训所言“学以致用”,实践是检验真理的唯一标准,或许在学的时候心里有一个概念,但是在把这个知识投入到运用与实践当中时,可能就真的不会用了,在这次课程设计中我深刻感受到了这一点。

以前学过的知识,怎么想都想不起来了,一心想依赖课本。

可是如果我们学以致用,在实践的过程中,这些知识会自然而然的印在我们的脑海里。

通过此次课程设计,我逐渐掌握了8255、8253等可编程接口芯片及实验箱中数码管、LED等电路的应用,学会了汇编语言应用程序的设计和调试方法,最重要的是,我懂得了学以致用的重要性和必要性,在以后的学习和工作中,我会把理论与实践结合起来,做到活学活用!

最后,感谢老师对我们的悉心指导!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 人力资源管理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2