基于hctl-2020的光栅尺位移测量
时间:10-02
整理:3721RD
点击:
lz单片机新手 ,最近在做 用hctl-2020芯片对光栅尺输出的脉冲进行处理
程序如下:
ORG 0000H
LJMP MAIN
ORG 0003H
AJMP ZD0
ORG 0013H
AJMP ZD1
ORG 001BH
AJMP SERVE
ORG 0030H
MAIN:MOV TMOD,#10H ;主程序
MOV TH1,#0FFH
MOV TL1,#9AH
SETB ET1
SETB ET0
SETB EA
ANJIAN:JB P0.0,$
ACALL DLY ;步进电机控制程序
JB P0.0,ANJIAN
SETB EX1
SETB EX0
CPL TR1
SJMP ANJIAN
SERVE:MOV TH1,#0FFH
MOV TL1,#9AH
CPL P0.3
RETI
ZD1: CPL P0.1
ACALL READ
CLR EX1
SETB EX0
RETI
ZD0:
CLR P1.4 ;重新读数 RST
SETB P1.0 ;SEL
SETB P1.4 ;RST
acall dly
CPL P0.1
CLR EX0
SETB EX1
RETI
READ: MOV R0,#00H ;HCTL-2020读数程序
MOV R1,#00H
CLR P1.2 ;OE
CLR P1.0 ;SEL
ACALL DLY
MOV R0,P2
SETB P1.0 ;SEL
ACALL DLY
MOV R1,P2
SETB P1.2
ACALL DELAY
RET
DELAY: MOV R7,#0A7H ;延时程序
DL1: MOV R6,#0A8H
DL0: MOV R5,#10H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
NOP
NOP
RET
DLY: MOV R7,#9FH
LOOP3:MOV R6,#0FFH
LOOP4:DJNZ R6,LOOP4
DJNZ R7,LOOP3
RET
END
最终测得如下数据:
R0 R1
FF 20
00 50
00 88
FF 9F
FF FF
FF 7F
FF 3F
00 20
00 08
00 E0
光栅尺分辨率5um 测试行程143.000~144.000之间 测试滚珠丝杆重复定位精度
望大神帮我看看,换算结果貌似有点不对,是怎么回事
程序如下:
ORG 0000H
LJMP MAIN
ORG 0003H
AJMP ZD0
ORG 0013H
AJMP ZD1
ORG 001BH
AJMP SERVE
ORG 0030H
MAIN:MOV TMOD,#10H ;主程序
MOV TH1,#0FFH
MOV TL1,#9AH
SETB ET1
SETB ET0
SETB EA
ANJIAN:JB P0.0,$
ACALL DLY ;步进电机控制程序
JB P0.0,ANJIAN
SETB EX1
SETB EX0
CPL TR1
SJMP ANJIAN
SERVE:MOV TH1,#0FFH
MOV TL1,#9AH
CPL P0.3
RETI
ZD1: CPL P0.1
ACALL READ
CLR EX1
SETB EX0
RETI
ZD0:
CLR P1.4 ;重新读数 RST
SETB P1.0 ;SEL
SETB P1.4 ;RST
acall dly
CPL P0.1
CLR EX0
SETB EX1
RETI
READ: MOV R0,#00H ;HCTL-2020读数程序
MOV R1,#00H
CLR P1.2 ;OE
CLR P1.0 ;SEL
ACALL DLY
MOV R0,P2
SETB P1.0 ;SEL
ACALL DLY
MOV R1,P2
SETB P1.2
ACALL DELAY
RET
DELAY: MOV R7,#0A7H ;延时程序
DL1: MOV R6,#0A8H
DL0: MOV R5,#10H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
NOP
NOP
RET
DLY: MOV R7,#9FH
LOOP3:MOV R6,#0FFH
LOOP4:DJNZ R6,LOOP4
DJNZ R7,LOOP3
RET
END
最终测得如下数据:
R0 R1
FF 20
00 50
00 88
FF 9F
FF FF
FF 7F
FF 3F
00 20
00 08
00 E0
光栅尺分辨率5um 测试行程143.000~144.000之间 测试滚珠丝杆重复定位精度
望大神帮我看看,换算结果貌似有点不对,是怎么回事
哪位好心人帮帮忙啊
怎么没有好心人来解答啊
有人会吗
这个汇编真心看不懂啊