微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 帮忙看一下源程序是否有问题

帮忙看一下源程序是否有问题

时间:10-02 整理:3721RD 点击:
数字电压表仿真时,调节发现数码管数值不会变想看一下源程序是否有错,求解。

ORG 0000H

SJMP START

ORG 0030H

;******************

;初始化变量

;******************

START:  CLR A

MOV 30H,A

MOV 31H,A

MOV 32H,A

MOV 33H,A

MOV 34H,A

MOV A,#0FFH

MOV P0,A

MOV P1,A

MOV P2,A

MOV P3,A

LOOP:   NOP

NOP

NOP

LCALL DISPLAY

LCALL ADC

LCALL PROC1

LCALL DISPLAY

NOP

NOP

NOP

SJMP LOOP

;*********************

;;AD转换子程序查询方式

;*********************

ADC:    MOV DPTR,#7FF8H

MOVX @DPTR,A

NOP

NOP

NOP

JNB P3.2,$

MOV DPTR,#7FF8H

MOVX A,@DPTR

MOV 30H,A

MOV DPTR,#7FF8H ;再次启动

MOVX @DPTR,A

RET

;*********************

;数据处理子程序

;*********************

PROC1:  MOV A,30H

MOV B,#51

div AB

MOV 34H,A

XCH A,B

MOV B,#10

MUL AB

JB OV,BCD1

MOV B,#51

div AB

MOV 33H,A

XCH A,B

AJMP BCD2

BCD1:   MOV B,#51

div AB

ADD A,#5

MOV 33H,A

XCH A,B

ADD A,#5

BCD2:   MOV B,#10

MUL AB

JB OV,BCD3

MOV B,#51

div AB

MOV 32H,A

AJMP BCD4

BCD3:   MOV B,#51

div AB

ADD A,#5

MOV 32H,A

XCH A,B

ADD A,#5

BCD4:   MOV B,#51

div AB

ADD A,#5

MOV 31H,A

AJMP BCD5

BCD5:   RET

;*******************

;显示子程序

;*******************

DISPLAY:MOV A,#0FEH

MOV P2,A

MOV A,34H

MOV DPTR,#TABLE

MOVC A,@A+DPTR

ORL A,#80H  ;加小数点

MOV P1,A

LCALL DELAY

MOV A, #0FDH

MOV P2,A

MOV A,33H

MOV DPTR, #TABLE

MOVC A,@A+DPTR

MOV P1,A

LCALL DELAY

MOV A, #0FBH

MOV P2,A

MOV A,32H

MOV DPTR, #TABLE

MOVC A,@A+DPTR

MOV P1,A

LCALL DELAY

MOV A, #0F7H

MOV P2,A

MOV A,31H

MOV DPTR, #TABLE

MOVC A,@A+DPTR

MOV P1,A

LCALL DELAY

RET

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

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

DELAY:  MOV   TMOD,#01H

MOV   TH0,#0FCH

MOV   TL0,#18H

SETB  TR0

LOOP1:  JBC   TF0,NOOP

SJMP  LOOP1

NOOP:  0 CLR   TR0

RET

;MOV R6,#94H

;D0:     MOV R7,#0f9H

;D1:     DJNZ R7,D1

;        DJNZ R6,D0

;       RET

END



卖糕的~~~~怎么是汇编语言啊?好久没看过了,平时都是C语言啊。

哇塞,汇编,只能等资深人士来解答了

上一篇:开箱初体验
下一篇:NV32F100x开箱体验

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top