单片机动态显示实验报告

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

单片机实验报告

姓名:林康

班级:1120603

学号:201120060325

实验题目:实验五动态显示

一.实验任务及要求

(1)使用单片机并行口做动态数码显示,把片内30H~32H单元的内容静态显示来。

二. 编程思路

(1)动态显示是一位一位地轮流点亮各位的数码管,因此需要分时送出段选码和位选码,每次控制一个数码管显示,而且是先送段选码锁存后在送位选码点亮相应的数码管。通过调节延时程序能够控制数码管显示数据的间隔,其余的和静态显示基本相似。

三. 实验电路及连线方法

动态显示

连线方法:电路由2 片74LS573,1 个六字一体的共阴数码管组成。由U15 输出段选码,U16做位选码,与单片机的采用I/O 口连接方式,短路片J22 连接P2.0,J23 连接P2.3,做输出信号锁存。(实际电路连d7-d6-d5-d4-d3-d2-d1-d0→h-c-d-e-g-b-a-f)。PW12 是电源端。

开始

初始化

((R0))→A,取A低四位,查其笔型码送入P0口

P2.0置1,然后清零

通过74LS573输入段选码,把位选码送入P0口

P2.1置1,然后清零

延时1毫秒

((R0))→A,取A高四位,查其笔型码送入P0口

P2.0置1,然后清零

通过74LS573输入段选码,把位选码送入P0口

P2.1置1,然后清零

延时1毫秒

R0自加1

R7自减1

R7=0?

结束

ORG 0000

LP3: MOV 32H,#12H

MOV 31H,#34H

MOV 30H,#56H

MOV R0,#30H

MOV R6,#0DFH

MOV R7,#03

MOV DPTR,#TAB

CLR P2.0

CLR P2.1

LP0: CLR A

MOV A,@R0

ANL A,#0FH

MOVC A,@A+DPTR

MOV P0,A

SETB P2.0

CLR P2.0

MOV P0,#00

MOV A,R6

MOV P0,A

SETB P2.1

CLR P2.1

RR A

MOV R6,A

DEL0: MOV R5,#250

LP1: NOP

NOP

DJNZ R5,LP1

CLR A

MOV A,@R0

ANL A,#0F0H

SWAP A

MOVC A,@A+DPTR

MOV P0,A

SETB P2.0

CLR P2.0 MOV P0,#00

MOV A,R6

MOV P0,A

SETB P2.1

CLR P2.1

RR A

MOV R6,A

INC R0

DEL1: MOV R5,#250

LP2: NOP

NOP

DJNZ R5,LP2

DJNZ R7,LP0

SJMP LP3

TAB: DB

77H,44H,3EH,6EH,4DH,6BH,7BH,46H,7FH,6FH,5FH,79H,33H,7CH,3BH,1BH END

六.调试结果

30H-32H单元依次输入12,34,56,数码管从左到右依次显示6 5 4 3 2 1 结果与预期符合。

七.结果分析

(1)动态显示并不是指显示上是动的。

(2)本次实验的程序比较复杂,编程时要比较细心,分模块编写,以便调试。

(3)通过这次实验我了解了动态显示的调试方法,收获很大!

相关文档
最新文档