📄 compass.asm
字号:
?L25F4:
; }
; if(com_timing_count == 32)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?162.1:
ld AL,@$com_timing_count
cmp AL,#32
bne ?L29F4
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?163.1:
; compass_Dout_Set = 1;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?164.1:
ld AL,@$fd+H'10f
or AL,#4096
st AL,@$fd+H'10f
?L29F4:
; }
; com_timing_count ++;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?166.1:
ld AL,@$com_timing_count
add AL,#1
st AL,@$com_timing_count
bra ?L59F4
?L15F4:
; }
;
; else if(com_timing_count == 33)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?169.1:
ld AL,@$com_timing_count
cmp AL,#33
bne ?L35F4
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?170.1:
; com_acknowledge_time ++;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?171.1:
ld AL,@$com_acknowledge_time
add AL,#1
st AL,@$com_acknowledge_time
; if(com_acknowledge_time >= COM_ACKNOWLEDGE_50MS - 4)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?172.1:
ld AL,@$com_acknowledge_time
cmp AL,#66
bcs ?L38F4
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?173.1:
; compass_Dout_Dis = 1;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?174.1:
ld AL,@$fd+H'10f
or AL,#-32768
st AL,@$fd+H'10f
?L38F4:
; }
; if(com_acknowledge_time >= COM_ACKNOWLEDGE_50MS)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?176.1:
ld AL,@$com_acknowledge_time
cmp AL,#70
bcs ?L42F4
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?177.1:
; com_acknowledge_time = 0;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?178.1:
ld AL,#0
st AL,@$com_acknowledge_time
; com_timing_count ++;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?179.1:
ld AL,@$com_timing_count
add AL,#1
st AL,@$com_timing_count
?L42F4:
bra ?L59F4
?L35F4:
; }
; }
; else if(com_timing_count < 75)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?182.1:
ld AL,@$com_timing_count
cmp AL,#75
bcc ?L48F4
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?183.1:
; rg.io.gp12_15_out = IO_GP12_15_OUT_CLR12_MASK | IO_GP12_15_OUT_SET12_MASK;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?184.1:
ld AL,#3
st AL,@$rg+H'110
; if(com_timing_count % 2 != 0)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?185.1:
ld AL,@$com_timing_count
and AL,#1
beq ?L56F4
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?186.1:
; if(compass_Dout_In)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?187.1:
ld AL,@$fd+H'116
asr #6
and AL,#1
beq ?L54F4
; com_heading_buf = (com_heading_buf << 1) | 0x01; // read "1"
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?188.1:
ld AL,@$com_heading_buf+H'1
ld AH,@$com_heading_buf
asl #1
or AL,#1
st AL,@$com_heading_buf+H'1
st AH,@$com_heading_buf
bra ?L56F4
?L54F4:
; else
; com_heading_buf = com_heading_buf << 1; // read "0"
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?190.1:
ld AL,@$com_heading_buf+H'1
ld AH,@$com_heading_buf
asl #1
st AL,@$com_heading_buf+H'1
st AH,@$com_heading_buf
?L56F4:
?L51F4:
; }
; com_timing_count ++;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?192.1:
ld AL,@$com_timing_count
add AL,#1
st AL,@$com_timing_count
bra ?L59F4
?L48F4:
; }
; else
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?195.1:
;
; compass_Sclk_Clr = 1;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?197.1:
ld AL,@$fd+H'110
or AL,#2
st AL,@$fd+H'110
; compass_Din_Clr = 1;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?198.1:
ld AL,@$fd+H'110
or AL,#32
st AL,@$fd+H'110
; compass_Dout_En = 1;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?199.1:
ld AL,@$fd+H'10f
or AL,#16384
st AL,@$fd+H'10f
; compass_Dout_Set = 1;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?200.1:
ld AL,@$fd+H'10f
or AL,#4096
st AL,@$fd+H'10f
;
; *((int*)(&compass_receiv)) = (int)(com_heading_buf);
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?202.1:
ld AL,@$com_heading_buf+H'1
st AL,@$compass_receiv
;
; //if((int)(com_heading_buf >> 16) != (Com_distortion + Com_heading2 + Com_heading1 + Com_heading0) & 0x000f)
; // com_heading = 0xffff;
; //if((Com_distortion != 0) && (Com_distortion != 2))
; // return(0);
;
; //else
; com_heading = (unsigned int)(Com_heading2 * 100 + Com_heading1 * 10 + Com_heading0);
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?210.1:
ld AL,@$compass_receiv
asr #8
and AL,#15
st AL,@$?irq_scratchpad?+5 ; %r2
ld AL,#100
ld AH,@$?irq_scratchpad?+5 ; %r2
bsr $__mh?
st AL,@(1,Y) ; %r16
ld AL,@$compass_receiv
asr #4
and AL,#15
st AL,@$?irq_scratchpad?+5 ; %r2
ld AL,#10
ld AH,@$?irq_scratchpad?+5 ; %r2
bsr $__mh?
add AL,@(1,Y) ; %r16
ld AH,@$compass_receiv
and AH,#15
st AH,@$?irq_scratchpad?+5 ; %r2
add AL,@$?irq_scratchpad?+5 ; %r2
st AL,@$com_heading
; if(com_heading >= 360)
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?211.1:
ld AL,@$com_heading
cmp AL,#360
bcs ?L61F4
; {
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?212.1:
; com_heading = 0;
^compass___compass.'D:\GPS\software\GPS_A_C\compass.c'.?213.1:
ld AL,#0
st AL,@$com_heading
?L61F4:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -