linux 动态扫描 数码管,数码管动态扫描显示01234567程序(三种方案)

描述

数码管由于价格便宜,使用简单,在电器特别是家电领域(比如空调、热水器和冰箱等)得到了极为广泛的应用。在高校电子信息类专业单片机的教学过程中,数码管动态显示及实现方法是学生普遍反映较难掌握的内容。鉴于此,本文为大家带来三个数码管动态扫描显示01234567程序介绍。

数码管动态扫描显示01234567程序一

原理图

8个数码管它的数据线并联接到JP5, 位控制由8个PNP型三级管驱动后由JP8引出。

027b044db63c5e523500e647ec0f60d8.png

程序流程图

947da0d31b341e8427911d48adb69f87.png

汇编语言参考程序

ORG 0000H

AJMP MAIN

ORG 0080H

MAIN:

CLR P2.0 选中第一个数码管

MOV P0,#28H 显示0

LCALL DELAY 调用延时ORG

MOV P0,#0FFH 关显示

SETB P2.0

CLR P2.1 选中第二个数码管

MOV P0,#7EH 显示1

LCALL DELAY

MOV P0,#0FFH

SETB P2.1

CLR P2.2 选中第三个数码管

MOV P0,#0A2H 显示2

LCALL DELAY

MOV P0,#0FFH

SETB P2.2

CLR P2.3 选中第四个数码管

MOV P0,#62H 显示3

LCALL DELAY

MOV P0,#0FFH

SETB P2.3

CLR P2.4 选中第五个数码管

MOV P0,#74H 显示4

LCALL DELAY

MOV P0,#0FFH

SETB P2.4

CLR P2.5 选中第六个数码管

MOV P0,#61H 显示5

LCALL DELAY

MOV P0,#0FFH

SETB P2.5

CLR P2.6 选中第七个数码管

MOV P0,#21H 显示6

LCALL DELAY

MOV P0,#0FFH

SETB P2.6

CLR P2.7 选中第八个数码管

MOV P0,#7AH 显示7

LCALL DELAY

SETB P2.7

MOV P0,#0FFH

AJMP MAIN 重新开始

DELAY: 延时子程序

MOV R7,#2

D1: MOV R6,#25

D2: DJNZ R6,D2

DJNZ R7,D1

RET

END

c语言参考程序

#includep="">>

#define uchar unsigned char //宏定义,为方便编程

#define uint unsigned int

#define DIGI P0 //宏定义,将P1口定义为数码管

#define SELECT

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值