當前位置:編程學習大全網 - 編程軟體 - 動態數碼管 匯編 60進制

動態數碼管 匯編 60進制

程序如下:

ORG?0000H

LJMP?MAIN

ORG?0100H

MAIN:

MOV?DPTR,#TAB;表首址送DPTR

MOV?R1,?#0

MOV?R2,?#0?

M1:

MOV?R0,?#50

LOOP:

CALL?DIS

DJNZ?R0,?LOOP

MOV?A,?R3

ADD?A,?#1

DAA

CJNE?A,?#60H,?SSS

CLR?A

SSS:

MOV?R3,?A;計數值.

MOV?B,?#16

DIV?AB

MOV?R2,?A

MOV?R1,?B

SJMP?M1

;-------------------------------------------------------

DIS:?;顯示程序.

MOV?A,?R2?;顯示十位.

MOVC?A,?@A+DPTR

CLR?P2.1

MOV?P1,?A

SETB?P2.0;十位的位選.

CALL?DLY

MOV?A,?R1?;個位顯示.

MOVC?A,?@A+DPTR

CLR?P2.0;關閉十位的顯示.

MOV?P1,?A

SETB?P2.1;個位的位選.

CALL?DLY

RET

;-------------------------------------------------------

TAB:DB?0xc0,0xf9,0xa4,0xb0,0x99?;***陽極0~9

DB?0x92,0x82,0xf8,0x80,0x90

DLY:MOV?R6,?#14H;10ms延時.

D1:?MOV?R7,?#0F8H

DJNZ?R7,?$

DJNZ?R6,?D1

RET

;-------------------------------------------------------

  • 上一篇:計算機專業就業前景分析
  • 下一篇:mind+可以學c++嗎
  • copyright 2024編程學習大全網