打印

51单片机系列之二:数码管

[复制链接]
1390|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
十年砍柴|  楼主 | 2010-8-20 19:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
51单片机系列之二:数码管
一、设计任务
1、如图1,在AT89C51P0端口的8个引脚接上一个数码管,利用单片机让数码管显示一个静态的数“6
2、如图2,在AT89C51P0端口的8个引脚接上一个数码管,利用单片机让数码管连续显示0~~9数字,时间间隔0.2秒。
3、如图3,做数码管的动态显示,P0端口的8个引脚接数码管数据引脚,P2.0~~P2.45个数码管的位选引脚。让数码管依次循环显示“8 9 C 5 1, 时间间隔0.2秒。
二、电路原理图

         1:数码管显示一个静态的数“6

      2——1:单片机让数码管连续显示0~~9数字的“3

      2——2:单片机让数码管连续显示0~~9数字的“7

       3——1:数码管动态显示“8

      3——2:数码管动态显示“C
三、设计程序

//
数码管显示一个静态的数“6(设计1

MAIN:CLR
P0.0


SETB P0.1


CLR
P0.2


CLR
P0.3


CLR
P0.4


CLR
P0.5


CLR
P0.6


SETB P0.7


AJMP MAIN

END


//单片机让数码管连续显示0~~9数字,时间间隔0.2秒。(设计2


ORG 00H

START:MOV DPTR,#TABLE

S1:MOV A,00H


MOVC A,@A+DPTR


MOV P0,A


LCALL DELAY


INC DPTR


LJMP S1

DELAY:MOV R5,#20

D2: MOV R6,#20


D1: MOV R7,#250


DJNZ R7,$


DJNZ R6,D1


DJNZ R5,D2


RET

TABLE:DB 3FH,06H,5BH,4FH,66H

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


END


//
数码管的动态循环显示“8 9 C 5 1(设计3)

MAIN:MOV P0,#80H
;显示数字8


CLR P2.0


ACALL DELAY1


MOV P0,#0FFH



MOV P2,#0FFH



MOV P0,#90H
;显示数字9


CLR P2.1


ACALL DELAY1


MOV P0,#0FFH


MOV P2,#0FFH




MOV P0,#0C6H
;显示数字C


CLR P2.2


ACALL DELAY1


MOV P0,#0FFH


MOV P2,#0FFH



MOV P0,#92H
;显示数字5


CLR P2.3


ACALL DELAY1


MOV P0,#0FFH


MOV P2,#0FFH



MOV P0,#0F9H
;显示数字1


CLR P2.4


ACALL DELAY1


MOV P0,#0FFH


MOV P2,#0FFH


AJMP MAIN
;循环

DELAY1:MOV R1,10

L1:MOV R2,100


DJNZ R2,$


DJNZ R1,L1


RET

END

相关帖子

沙发
海南男人U2| | 2010-8-22 20:02 | 只看该作者
怎么用的是汇编?看不太懂

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:岂能尽如人意,但求无愧于心!

0

主题

11

帖子

1

粉丝