微机原理与接口技术B实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

重庆交通大学

学生实验报告

实验课程名称微机原理与接口技术B

开课实验室机电自动控制实验室

学院年级专业班

学生姓名学号

开课时间2017 至2018 学年第 1 学期

注:实验成果考核方式采用非实验报告形式的,可自行制定

实验二 Protues软件使用

一.实验目的:

掌握单片机仿真软件。

二.实验器材:

PC 机一台

三.实验内容:

任务A:闪烁灯

1、任务要求:如图2.1所示,在P1.0 端口上接一个发光二极管D1,使D1 在不停地一亮一灭,一亮一灭的时间间隔为0.2秒。

2、电路原理图:

图2.1电路原理图

任务B:模拟开关灯

1、任务要求:如图2.2所示,监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开,L1熄灭。

2、电路原理图:

图2.2电路原理图

任务C:多路开关状态指示

1、任务要求:如图2.3所示,AT89S51单片机的P1.0-P1.3接四个发光二极管L1-L4,P1.4-P1.7接了四个开关K1-K4,编程将开关的状态反映到发光二极管上。(开关闭合,对应的灯亮,开关断开,对应的灯灭)。

2、电路原理图:

图2.3电路原理图

四.实验代码:

任务A:

ORG 0 //起始地址为00H

START: CLR P1.0 //p1.0置零,开关灯亮

LCALL DELAY //延时0.2s

SETB P1.0 //p1.0置1,开关灭

LCALL DELAY //延时0.2s

LJMP START //主程序为死循环

DELAY: MOV R5,#20 //延时子程序,延时0.2秒

D1: MOV R6,#20 //赋值R6为20

D2: MOV R7,#248 //赋值R7为248

DJNZ R7,$

DJNZ R6,D2

DJNZ R5,D1

RET //子程序返回

END //程序结束

任务B:

ORG 00H

START: JB P3.0,LIG // JB 指定位1转移

CLR P1.0 //开关按下,把p1.0置零,灯亮

SJMP START //主程序为判断开关状态,点亮灯的死循环LIG: SETB P1.0 //开关未按下,把p1.0置1,灯灭

SJMP START //跳转至主程序

END //程序结束

任务C:

ORG 00H

START: MOV A,P1 //一次把p1端口的状态全部读入

ANL A,#0F0H //取高四位状态来显示

RR A //右循环

RR A

RR A

RR A

ORl A,#0F0H //或命令

MOV P1,A //把A的值赋给p1口

SJMP START //跳转至主程序

END //程序结束

五.实验结果:

任务A仿真结果实验结果实现了P1.0接的发光二极管一亮一灭。

任务B仿真结果

实验结果实现了P3.0接的开关控制p1.0接的发光二极管的亮灭。

任务C仿真结果

实验结果实现了p1.0-p1.3接的开关分别控制p1.4-p1.7接的发光二极管的亮灭。

六.实验调试分析

这次是第一次微机实验,对于理论课并没有学得很好的我,其实是对这次实验是充满期待的,希望能在试验中恍然大悟理论课所讲的内容。这节课主要讲的是编程软件和仿真软件,让我初步感受到了单片机的神奇,可以通过不同的接口和元器件实现多种功能。虽然课上没有把软件完全熟练,但课后仔细琢磨了一下,达到了基本可以独立操作的水平。

实验三 p1口亮灯实验

一.实验目的

通过实验了解单片机最小系统;掌握P1口作为输入输出方式使用时,CPU 对P1口的操作方法。

二.实验器材

PC机一台单片机开发板一台

三.实验内容

1、任务要求:

任务1:任务1:在P1.0端口上接一个发光二极管D1

任务2:在P1.0端口上接一个发光二极管D1,使D1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒。

任务3:在P1.3端口上接一个发光二极管D4,使D4在不停地一亮一灭,一亮一灭的时间间隔为0.1秒。(自己编写程序)

任务4:监视开关s1(接在P3.4端口上),用发光二极管D4(接在单片机P1.3端口上)显示开关状态,如果开关合上,D1亮,开关打开,D1熄灭。

任务5:监视开关s1、S2、S3、s4(接在P3.4,P3.5,P3.6,P3.7端口上),用发光二极管D4、D5、D6、D7(接在单片机P1.3-P1.6端口上)显示开关状态,S1-S4分别控制D4-D7的开关(开关闭合,对应的灯亮,开关断开,对应的灯灭)(自己编写程序)

2、实验电路图(参考开发板原理图):

四.实验代码:

任务1:

ORG 0

START: CLR P1.0 //置零

LJMP START //跳转至主程序

END //程序结束

任务2:

ORG 0

START: CLR P1.0 //置零

LCALL DELAY //无条件转移至延时子程序SETB P1.0 //将p1.0口置为高电平

LCALL DELAY //无条件转移至延时子程序LJMP START //跳转至主程序

DELAY: MOV R5,#20 //延时子程序,延时0.2秒D1: MOV R6,#20 //赋值R6为20

D2: MOV R7,#248 //赋值R7为248

DJNZ R7,$

DJNZ R6,D2

DJNZ R5,D1

RET //子程序返回

END //程序结束

任务3:

ORG 0

相关文档
最新文档