问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

AT89C51单片机怎么用汇编语言让4个数码管同时显示1234?

发布网友 发布时间:2022-05-01 04:32

我来回答

5个回答

热心网友 时间:2022-06-24 11:30

1、首先我们先打开keil。

2、接着,我们要定义好库函数,void main(){while(1)//不断循环显示{dispaly();}}void dispaly(){P0=smg[1];//选择显示数字几,P1=0x7f;//控制是否点亮数码管。

3、接着,我们加上一条循环语句。delay(5);//显示5毫秒P0=0XFF;//消影P0=smg[2];P1=0xbf;delay(5);P0=0XFF;P0=smg[3]。

4、最后,我们把先前定义的延时语句delayms写好。

5、最后,点击这里进行编译,生成一个hex文件。

6、如果这里无错误警告的话,就说明我们的程序写对了,那我们就可以点亮动态数码管了。

热心网友 时间:2022-06-24 11:30

ORG 00H

AJMP MAIN

ORG 30H

MAIN: LCALL DISP

MOV 20H,#1

MOV 21H,#2

MOV 22H,#3

MOV 23H,#4

AJMP MAIN

DISP: MOV A,20H  

ACALL SEG7

MOV P0,A

SETB P2.0

ACALL DLY

CLR P2.0

MOV A,21H  

ACALL SEG7

MOV P0,A

SETB P2.1

ACALL DLY

CLR P2.1

MOV A,22H 

ACALL SEG7

MOV P0,A

SETB P2.2

ACALL DLY

CLR P2.2

MOV A,23H 

ACALL SEG7

MOV P0,A

SETB P2.3

ACALL DLY

CLR P2.3

RET 

DLY: MOV R7,#2

D1: MOV R6,#40

DJNZ R6,$

DJNZ R7,D1

RET

SEG7: INC A

MOVC A,@A+PC

RET

DB        0C0H;0

DB        0F9H;1

DB        0A4H;2

DB        0B0H;3

DB        099H;4

DB        092H;5

DB        082H;6

DB        0F8H;7

DB        080H;8

DB        090H;9

END

扩展资料:

注意事项

1、至少包括4个功能:时间清零,启动计时,暂定计时,继续计时。

2、计时最小单位0.1 秒,最大计时时间999.9秒,

3、用数码管显示时间,同时要求按下任何一个功能键必须有声音提示。

4、使用方法: 设有启动键K1和暂停/清零键K2。按k1启动计时,按k2则暂停计时,再按k2则清零。

5、数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起。

另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。

通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。

热心网友 时间:2022-06-24 11:31

ORG 00H

 AJMP MAIN

 ORG 30H

MAIN: LCALL DISP

 MOV 20H,#1

 MOV 21H,#2

 MOV 22H,#3

 MOV 23H,#4

 AJMP MAIN

DISP: MOV A,20H  

 ACALL SEG7

 MOV P0,A

 SETB P2.0

 ACALL DLY

 CLR P2.0

 MOV A,21H  

 ACALL SEG7

 MOV P0,A

 SETB P2.1

 ACALL DLY

 CLR P2.1

 MOV A,22H 

 ACALL SEG7

 MOV P0,A

 SETB P2.2

 ACALL DLY

 CLR P2.2

 MOV A,23H 

 ACALL SEG7

 MOV P0,A

 SETB P2.3

 ACALL DLY

 CLR P2.3

 

 RET 

DLY: MOV R7,#2

D1: MOV R6,#40

 DJNZ R6,$

 DJNZ R7,D1

 RET

SEG7: INC A

 MOVC A,@A+PC

 RET

     DB        0C0H;0

        DB        0F9H;1

        DB        0A4H;2

        DB        0B0H;3

        DB        099H;4

        DB        092H;5

        DB        082H;6

        DB        0F8H;7

        DB        080H;8

        DB        090H;9

       

       END

热心网友 时间:2022-06-24 11:31

通常的办法是扫描显示,这样的话,用12个IO口就可以实现了,8位段码加上4位位码。程序如下:
DATEQU 30H
SCANLEDEQU 34H
ORG 0000H

LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV SP,#5FH
MOV TMOD,#01H
MOV TH0,#0F4H
MOV TL0,#048H
MOV P2,#00H
MOV SCANLED,#0
MOV 30H,#1
MOV 31H,#2
MOV 30H,#3
MOV 31H,#4
SETB EA

SETB ET0
SETB TR0
SJMP $

;--------------------
T0ISR:
CLR TR0

MOV TH0,#0F4H
MOV TL0,#048H
SETB TR0

MOV DPTR,#LEDTAB
MOV R0,#DAT

MOV A,SCANLED
ADD A,R0
MOV R0,A
MOV A,SCANLED
JNZ T001
MOV P2,#01H
SJMP T0DIS
T001:
DEC A
JNZ T002
MOV P2,#02H
SJMP T0DIS
T002:
DEC A
JNZ T003
MOV P2,#04H
SJMP T0DIS
T003:
MOV P2,#08H
T0DIS:
MOV A,@R0
MOVC A,@A+DPTR
CPL A
MOV P0,A
INC SCANLED
MOV A,SCANLED
ANL A,#03H
MOV SCANLED,A
POP ACC
RETI
;--------------------
LEDTAB:
DB 0C0H;"0"00H
DB 0F9H;"1"01H
DB 0A4H;"2"02H
DB 0B0H;"3"03H
DB 99H;"4"04H
DB 92H;"5"05H
DB 82H;"6"06H
DB 0F8H;"7"07H
DB 80H;"8"08H
DB 90H;"9"09H
;--------------------

END

热心网友 时间:2022-06-24 11:32

自己要学会仿制写程序,懂了原理之后就容易理解了,我说一下原理吧:
数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
有哪些小动物? 卸载百度贴吧之后保存的图片没了怎么恢复 ...的朋友,但我和他不在同一城市,我这样异地买保险以后理赔手续麻烦吗... 厦门哪些景点可以享受阳光海滩? 朋友说你变了,是褒义还是贬义? 这句话是贬意还是褒意 能在一起多久就在一起多久是褒义还是贬义 ,谈恋爱后结婚好吗? 之前爱奇艺有个号,是用一个旧手机绑定(旧手机号封了)刚刚不小心退出了... 前列腺癌可以彻底治愈吗 win10电脑怎么禁一部分连网Win10系统中如何禁止某个程序联网 设计电子时钟 要用AT89S51单片机的定时器实现,用4位数码管显示,用点的闪烁表示秒,我需要电路原理图 在感情中,天秤座的女生会不会很重感情? 打算做一个4位数码管显示1到9999的计数,程序和电路图在下面,为什么做出来4位望大神指点。 在感情中,天秤座的女生是如何跟男朋友相处的? 天秤座女对感情如何 4段共阴数码管,引脚和工作原理,以及动态显示的C程序。谢谢。 在感情中,天秤座的女生会不会轻易的去辜负对方? 51单片机 四位数码管如何同时显示4位不同的数字? 天秤座的女生在感情中,会不会变得很任性? 4位数码管LED84S的工作原理 在感情中,天秤座的女生会不会总有一种患得患失的感觉? 在感情中,天秤座的女生是喜欢被动还是主动? 在感情中,天秤座的女生最容易注意哪些事情? 在感情中,天秤座女生的感情之路很难吗? 在感情中,天秤座的女生优柔寡断吗? 在感情中,天秤座的女生是不是很小心眼? 在感情中,天秤座的女生都有哪些走心的表现? 在感情中,天秤座的女生在碰到感情问题的时候,是如何处理的? 天秤座女生的感情弱点有哪些? 天秤座的女生在感情中,究竟有多么的痴情? 用AT89C51单片机实现四位数码管显示数据!!用c语言程序实现!!例如显 显卡 影驰这是什么意思的?到底是哪个版本? 家用落地扇,定时,调速全坏,电机是4根线的,怎么接,可以直接连电源? 影驰显卡的比较 到底哪个好 电风扇直接接电源不要开关和定时怎么接呀? 烘干玉米用锅炉有政策吗 风扇开关坏了,不要开关!直接连接电源线路!该怎么接? 秸秆气化炉有哪些优缺点? 落地扇开关坏了,现在不要开关直接接线可以吗?具体怎么接? 影驰显卡好吗 秸秆燃气炉缺点 现在能使用生物颗粒锅炉吗 玉米秸秆煤能抵得上煤吗 秸秆怎样发电? 玉米秸秆燃烧供应暖气怎么处理。 建一个玉米杆加工厂需要什么设备,需要多少钱。做饲料或者燃烧。 秸秆燃烧的详细原理 孩子吃奶把乳房吃偏了想要纠正过来怎么办 奶吃偏了怎么办 抖音将对方拉黑,后又取消拉黑浏览了他的视频,又拉黑对方能看到我的浏览记录吗?_百度问一问