刚学汇编真的很费力,望高手帮助小弟
DS18B20 数码管动态扫描只要调用tem温度采集就是不显示.高手帮我看看吧DQ EQU P3.3
TEMP EQU 36H
ORG 0000H
AJMP MAIN
ORG 0020H
MAIN: Lcall TEM // 温度采集子程序
LCALL DOWITH //数据处理子程序
MOV R7,#200
B5: MOV DPTR,#TABL //数码管显示子程序
MOV A,31H
MOV P2,#0FEH
MOVC A,@A+DPTR
MOV P0,A
LCALL DELAY_10MS
MOV A,30H
MOV P2,#0FDH
MOVC A,@A+DPTR
MOV P0,A
ACALL DELAY_10MS
DJNZ R7,B5
AJMP MAIN
TABL: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;
TEM: LCALL INIT_1820//温度采集子程序
MOV A,#0CCH
LCALL WRITE
LCALL INIT_1820
MOV A,#44H
LCALL WRITE
mov r5,#20
m5: LCALL DELAY_10MS
djnz r5,m5
LCALL INIT_1820
MOV A,#0CCH
LCALL WRITE
LCALL INIT_1820
MOV A,#0BEH
LCALL WRITE
LCALL INIT_1820
LCALL READ
RET
INIT_1820:SETB DQ //初始化子程序
NOP
NOP
M3: CLR DQ
MOV R3,#35
LCALL DELAY1
SETB DQ
MOV R3,#3
LCALL DELAY1
JNB DQ,M2
AJMP M3
M2: MOV R3,#10
LCALL DELAY1
SETB DQ
NOP
NOP
RET
WRITE: CLR C //写入子程序
MOV R2,#8
L1: CLR DQ
MOV R3,#4
DJNZ R3,$
RRC A
MOV DQ,C
MOV R3,#40
DJNZ R3,$
SETB DQ
NOP
NOP
DJNZ R2,L1
RET
READ: MOV R1,#2 //读子程序
MOV R0,#30H
MOV R2,#8
CLR DQ
NOP
CLR C
CLR A
M4: SETB DQ
MOV R3,#2
DJNZ R3,$
MOV C,DQ
RRC A
MOV R3,#25
DJNZ R3,$
NOP
DJNZ R2,M4
MOV @R0,A
INC R0
DJNZ R1,READ
SETB DQ
nop
RET
DOWITH:MOV A,30H //数据处理子程序
ANL A,#0F0H
SWAP A
MOV TEMP,A
MOV A,35H
ANL A,#07H
SWAP A
ORL A,TEMP
mov temp,A
MOV B,#10
DIV AB
MOV 31H,A
MOV 30H,B
RET
DELAY1:MOV R2,#5 //20Us延时,改变R3可改变延时时间
M1: NOP
DJNZ R2,M1
DJNZ R3,DELAY1
RET
DELAY_10ms: MOV R7,#10
W2: MOV R6,#250
W1: NOP
NOP
DJNZ R6,W1
DJNZ R7,W2
RET
end 楼主你就谦虚吧。这还叫新手。 对单片机没兴趣,只能帮你顶一下,等高人出现了。 为什么和我们学的汇编不同? 额。这个是自己写的嘛,{:5_101:} 高手,小弟能力有限,帮不了你!!!{:5_100:} 能力有限。。。单片机相关的。。。 还是围观等高人来回答吧{:5_108:} 楼主这个笑话一点都不好笑啊,看你编程,你都是新手,那我们还用得着混的吗?? 这叫刚学啊? 你说你是新手,这让我情何以堪啊。。。 你说你是新手,这让我情何以堪啊。。。
lulee 发表于 2011-3-24 17:25 http://www.fishc.com/dz/images/common/back.gif
这让我情何以堪啊。。。这让我情何以堪啊。。。
这让我情何以堪啊。。。
:dizzy: 我说主楼啊、、你也忒不厚道了吧。。。。看到你的帖子在下想去殉情呐 写那么多看着就晕 很难理解啊!!!头痛!!! 完全是专家来到的…………{:2_25:}
页:
[1]