单片机 用51单片机显示一个数码管轮流显示9到0再从0到9每隔一秒出现一次(用汇编语言)谢谢各

如题所述

ORG 0000H

MOV DPTR,#TAB

MOV P0,#0FFH

LOP:

LOOP0:MOV 20H,#9

MOV R0,#10

LOOP1:MOV A,20H; 9-0

MOVC A,@A+DPTR

MOV P0,A

DEC 20H

CALL DELL;YANSHI

DJNZ R0,LOOP1

MOV 20H,#0;0-9

MOV R0,#10

LOOP2:MOV A,20H; 0-9

MOVC A,@A+DPTR

MOV P0,A

INC 20H

CALL DELL;YANSHI

DJNZ R0,LOOP2

AJMP LOP

TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

DELL:MOV R7,#250;yanshi,SHIZHONG:1WEIMIAO,YUEWEI1s

DEL1:MOV R6,#200

DEL2:MOV R5,#10

DEL3:DJNZ R5,DEL3

DJNZ R6,DEL2

DJNZ R7,DEL1

END

追问

您能帮我改这个吗 还是上边的题

谢谢大神

追答

把程序里所有P0,改成P2就行了,都是共阳极的数码管。

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-01-07
需要知道你的单片机中LED数码管的段码才可以通过查表的方式用串口通讯方式0来完成追问

就这种的 谢谢大神帮忙了

单片机 用51单片机显示一个数码管轮流显示9到0再从0到9每隔一秒出现一 ...
MOV 20H,#0;0-9 MOV R0,#10 LOOP2:MOV A,20H; 0-9 MOVC A,@A+DPTR MOV P0,A INC 20H CALL DELL;YANSHI DJNZ R0,LOOP2 AJMP LOP TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DELL:MOV R7,#250;yanshi,SHIZHONG:1WEIMIAO,YUEWEI1s DEL1:MOV R6,#200 DEL2:MOV...

51单片机c语言设计,按键控制数码管,依次按下显示0到9循环
void delay(){ uint16 i=1000;while(i--);} void main(){ uchar n ;P2=0xfe;P1=0xff;while(1){ if(k1==0){ if(n>=9) n=0;else n++;P0=shuzu[n];while(!k1);delay();while(!k1);} } }

单片机汇编语言让数码管显示0到9
1、小建议,釆用STC的51芯片替代AT的,釆用595替代164。2、新建项目,做好准备。数码管段选表。延时函数。uchari;变量i;wk=1;打开位选,P0=0xf7;11110111第4位数码管显示,wk=0;关闭位选。while(1)\/\/死循环效果{}。3、数码管段选表。延时函数。uchari;变量i;wk=1;打开位选,P0=0x...

单片机用汇编写两个数码管显示0到99循环的程序
要实现单片机用汇编语言编写的数码管循环显示0到99的程序,首先,你需要创建一个新的项目并做好初始化准备工作。接着,创建一个数码管段选表,它将决定每个数码管的显示模式。延时函数在此过程中也至关重要,以控制数码管的刷新速度。定义一个名为i的uchar变量,初始化一个名为wk的标志位,用于控制数...

我想要实现单片机: 数码管每隔1s显示从0-9怎么实现? 全部代码。_百度知 ...
num=0; \/\/num清零 m++; \/\/m累加 } if(m==9) \/\/数码管显示9时,m清零,重新计数 { m=0;} } void Js_Scan() \/\/数码管扫描函数 { uchar j; \/\/定义j数据类型 for(j

求一个用汇编语言编写一个8051单片机的时钟程序(急急急啊)
USING 0 MOV SP, #(STACK-1) ;MOV P0,#0FFH MOV P2,#0FFH MOV TMOD,#011H ; 定时器0, 1工作模式1, 16位定时方式 MOV TH0,#0FCH MOV TL0,#017H MOV TH1,#0DCH CLR A MOV TL1,A MOV HOUR,#12 ;CLR A ;MOV MIN,A MOV SEC,A MOV ...

单片机汇编语言数码管显示0到9
先设计电路,在编写程序。下图电路,供你参考。

单片机汇编语言让数码管显示0到9
小建议,釆用STC的51芯片替代AT的,釆用595替代164。

单片机汇编语言让数码管显示0到9
LOOP LJMP MAINDISPLAY: PUSH ACC MOVC A, @A+DPTR MOV P1, A POP ACC RETDELAY:DL1:DJNZ R6, DL1DL2:DJNZ R6, DL2 DJNZ R7, DL1 RETTABLE: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 7FH, 6FHEND 再试试看。

...一个数字的显示 开关按一下 数字增加一 从0到9 汇编程序
1、P0口接共阳极数码管,P0口与数码管串接300~470欧电阻;2、P1.0接按键,低电平有效;3、晶振为12M 软件部分如下:ORG 00H LJMP MAIN ORG 100H MAIN:MOV 30H,#00H MOV DPTR,#TAB START:LCALL SHOW_DATA JB P1.0,START LCALL DELAY_50MS JNB P1.0,MOV A,30H MOV B,#09H DIV AB...

相似回答