微机原理与应用 实验报告

  • 格式:doc
  • 大小:879.00 KB
  • 文档页数:29

下载文档原格式

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

《微机原理与应用》实验报告

姓名:郭爽

学号:2014012468

年级:2014

专业:电子

2016年春季学期

实验一、熟悉单片机开发环境

1、功能要求

在 P1 端口接8 个LED,并编程依次循环点亮。要求用软件延时程序控制LED 的亮灭时间,并能精确地计算与用软件测量延时时间。

2、硬件原理

3、程序清单

ORG 0000H

LJMP START

ORG 0030H

START: MOV R2,#8

MOV A,#01H LOOP1: MOV P1,A

LCALL DELAY RL A

DJNZ R2,LOOP1 MOV R2,#8

RR A

LOOP2: MOV P1,A

LCALL DELAY RR A

DJNZ R2,LOOP2 LJMP START

DELAY: MOV R5,#20 D1: MOV R6,#80

D2: MOV R7,#248 DJNZ R7,$

DJNZ R6,D2

DJNZ R5,D1

RET

END

4、实验心得

首次接触开发板,通过实验1加强了对单片机的了解,学会使用仿真软件,学会搭线的各种技巧,并且掌握了LED亮灭的原理。

实验二、并行口输入输出实验——循环彩灯控制

1、功能要求

P1 口接8 个开关,P0 口接8 个灯,每个开关对应一个灯,实时读取开

关状态,开关闭合时,灯亮。开关断开时,灯灭。

用5 个开关K0~K4,控制P0 口所接8 个灯的循环,各开关的功能要求

如下:

(1)K1~K2 分别选择灯的四种闪动方式;

(2)K3 用于控制灯的循环方向(顺时针或逆时针);

(3)K4 用于选择灯的两种循环速度;

(4)K0 用于引发外部中断,在外部中断子程序中,读取通过K1-K4 所设定

的循环彩灯的工作方式,并按所设定的工作方式控制彩灯运行。当K0 没有引发中断时,保持上一次的循环方式。

2、硬件原理

3.程序清单

ORG 0000H

LJMP MAIN

ORG 0003H

LJMP INTERRUPT DELAY2: MOV R0,#200 D4: MOV R1,#200 D5: MOV R2,#10 D6: DJNZ R2,D6

DJNZ R1 ,D5 DJNZ R0,D4

RET

ORG 0030H

MAIN: SETB EX0

SETB IT0

SETB EA

MOV A,#01H

A1: MOV P0,A

JB 20H、2,B1

JNB 20H、2,B2

A2: JB 20H、3,LOOP11 JNB 20H、3,LOOP22 B1: LCALL DELAY1

LJMP A2

B2: LCALL DELAY2

LJMP A2

LOOP11: RL A

LJMP A1

LOOP22: RR A

LJMP A1

ORG 0600H

DELAY1: MOV R0,#100

D1: MOV R1,#100

D2: MOV R2,#10

D3: DJNZ R2,D3

DJNZ R1,D2

DJNZ R0 ,D1

RET

4、实验心得

开始熟悉开发板,通过实验2加强了对单片机的了解,学会中断程序的书写方法,学会搭线的各种技巧,并且掌握了跑马灯工作的原理。

实验三、七段LED 数码管控制实验

1.功能要求

首先用万用表判断所用数码管就是共阴极还就是共阳极数码管,并测出各引脚功能,画出引脚分布图。

实验采用4 位一体的数码管,用P1 口通过驱动芯片控制段码输出信号线,

P0 口通过驱动芯片控制位选线,自主选择驱动芯片,设计实现电路,并实现以

下功能:

(1)当开关K0 接低电平时,第一位依次显示0~F,然后第二位、第三位、

第四位,再循环回第一位。

(2)当开关K0 接高电平时,四位动态显示“HELP”。

2.硬件要求

3.程序清单

ORG 0000H

LJMP START

ORG 0030H START:JB P3、0 ,LOPP JNB P3、0 ,LOOP2 LOPP: MOV R1,#4 SETB P2、2 MOV P0,#0C7H LCALL DLAY2 CLR P2、2

SETB P2、3 MOV P0,#8CH LCALL DLAY2 CLR P2、3

LJMP START

LOOP1:MOV R3,#16

LOP1: MOV P0,#0FEH

MOV DPTR,#TAB2

MOV A,R1

MOVC A,@A+DPTR MOV P2,A

JNB P3、0 ,LOOP2 MOV DPTR,#TAB1 MOV A,R3

MOVC A,@A+DPTR MOV P0,A

LCALL DELAY

DJNZ R3,LOP1

DJNZ R1,LOOP1

LJMP LOPP

LOOP2:SETB P2、0

MOV P0,#89H

LCALL DLAY2

CLR P2、0

SETB P2、1

MOV P0,#86H

LCALL DLAY2

CLR P2、1

4、实验心得