📄 ytep_rf.s
字号:
///////////////////////////////////////////////////////////////////////////////
// /
// 06/Dec/2008 17:12:54 /
// IAR ARM ANSI C/C++ Compiler V5.11.0.20622/W32 EVALUATION /
// Copyright 1999-2007 IAR Systems. All rights reserved. /
// /
// Cpu mode = thumb /
// Endian = little /
// Source file = E:\ELE\yten\pro\message\ytep_RF.c /
// Command line = E:\ELE\yten\pro\message\ytep_RF.c -D EMB_FLASH -lCN /
// E:\ELE\yten\pro\Debug\List\ -lb /
// E:\ELE\yten\pro\Debug\List\ -o /
// E:\ELE\yten\pro\Debug\Obj\ --no_cse --no_unroll /
// --no_inline --no_code_motion --no_tbaa --no_clustering /
// --no_scheduling --debug --endian little --cpu /
// Cortex-M3 -e --fpu None --dlib_config "C:\Program /
// Files\IAR Systems\Embedded Workbench 5.0 /
// Evaluation\ARM\INC\DLib_Config_Normal.h" -I /
// E:\ELE\yten\pro\ -I E:\ELE\yten\pro\..\LIBRARY\INC\ -I /
// "C:\Program Files\IAR Systems\Embedded Workbench 5.0 /
// Evaluation\ARM\INC\" --section .text=.XML -On /
// List file = E:\ELE\yten\pro\Debug\List\ytep_RF.s /
// /
// /
///////////////////////////////////////////////////////////////////////////////
NAME ytep_RF
PUBLIC CHK_RF
PUBLIC IsrReceive
PUBLIC IsrSend
PUBLIC cal_crc
SECTION `.XML`:CODE:NOROOT(2)
THUMB
IsrReceive:
MOVS R1,R0
MOVS R0,#+1
MOVS R2,R0
LDRB R0,[R1, #+23]
CMP R0,#+0
BNE.N ??IsrReceive_0
LDRB R0,[R1, #+22]
CMP R0,#+0
BEQ.N ??IsrReceive_1
??IsrReceive_0:
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
MOVS R3,#+0
STRB R3,[R0, #+0]
LDR.N R0,??IsrReceive_2+0x4 ;; ??IR
MOVS R3,#+0
STRB R3,[R0, #+0]
MOVS R0,#+0
B.N ??IsrReceive_3
??IsrReceive_1:
LDR.N R0,??IsrReceive_2+0x8 ;; 0x40010808
LDR R0,[R0, #+0]
LSLS R0,R0,#+30
BMI.N ??IsrReceive_4
MOVS R0,#+0
MOVS R2,R0
??IsrReceive_4:
LDR.N R0,??IsrReceive_2+0xC ;; 0x40011008
LDR R0,[R0, #+0]
LSLS R0,R0,#+30
BMI.N ??IsrReceive_5
MOVS R0,#+0
MOVS R2,R0
??IsrReceive_5:
LDR.N R0,??IsrReceive_2+0xC ;; 0x40011008
LDR R0,[R0, #+0]
LSLS R0,R0,#+29
BMI.N ??IsrReceive_6
MOVS R0,#+0
MOVS R2,R0
??IsrReceive_6:
LDR.N R0,??IsrReceive_2+0x10 ;; 0x40010c08
LDR R0,[R0, #+0]
LSLS R0,R0,#+22
BMI.N ??IsrReceive_7
MOVS R0,#+0
MOVS R2,R0
??IsrReceive_7:
LDR.N R0,??DataTable1 ;; 0x40010c0c
LDR R0,[R0, #+0]
MVNS R3,#+256
ANDS R3,R3,R0
LDR.N R0,??DataTable1 ;; 0x40010c0c
STR R3,[R0, #+0]
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
LDRB R0,[R0, #+0]
CMP R0,#+0
BNE.N ??IsrReceive_8
UXTB R2,R2 ;; ZeroExtS R2,R2,#+24,#+24
CMP R2,#+0
BEQ.N ??IsrReceive_8
LDR.N R0,??IsrReceive_2+0x4 ;; ??IR
LDRB R0,[R0, #+0]
CMP R0,#+30
BCC.N ??IsrReceive_9
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
MOVS R3,#+1
STRB R3,[R0, #+0]
LDR.N R0,??IsrReceive_2+0x14 ;; ??IR + 2
MOVS R3,#+0
STRB R3,[R0, #+0]
LDR.N R0,??IsrReceive_2+0x18 ;; ??IR + 4
MOVS R3,#+0
STRB R3,[R0, #+0]
LDR.N R0,??IsrReceive_2+0x1C ;; ??IR + 3
MOVS R3,#+0
STRB R3,[R0, #+0]
??IsrReceive_9:
LDR.N R0,??IsrReceive_2+0x4 ;; ??IR
MOVS R3,#+0
STRB R3,[R0, #+0]
LDR.N R0,??IsrReceive_2+0x20 ;; ??IR + 1
MOVS R3,#+0
STRB R3,[R0, #+0]
??IsrReceive_8:
UXTB R2,R2 ;; ZeroExtS R2,R2,#+24,#+24
CMP R2,#+0
BNE.N ??IsrReceive_10
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
LDRB R0,[R0, #+0]
CMP R0,#+0
BNE.N ??IsrReceive_10
LDR.N R0,??IsrReceive_2+0x4 ;; ??IR
LDRB R0,[R0, #+0]
ADDS R0,R0,#+1
LDR.N R3,??IsrReceive_2+0x4 ;; ??IR
STRB R0,[R3, #+0]
??IsrReceive_10:
UXTB R2,R2 ;; ZeroExtS R2,R2,#+24,#+24
CMP R2,#+0
BNE.N ??IsrReceive_11
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
LDRB R0,[R0, #+0]
CMP R0,#+0
BEQ.N ??IsrReceive_11
LDR.N R0,??IsrReceive_2+0x24 ;; ??IR + 6
LDRB R0,[R0, #+0]
CMP R0,#+0
BEQ.N ??IsrReceive_12
LDR.N R0,??IsrReceive_2+0x24 ;; ??IR + 6
MOVS R3,#+0
STRB R3,[R0, #+0]
LDR.N R0,??IsrReceive_2+0x14 ;; ??IR + 2
LDRB R0,[R0, #+0]
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
LSLS R0,R0,#+1
LDR.N R3,??IsrReceive_2+0x14 ;; ??IR + 2
STRB R0,[R3, #+0]
LDR.N R0,??IsrReceive_2+0x20 ;; ??IR + 1
LDRB R0,[R0, #+0]
CMP R0,#+8
BCC.N ??IsrReceive_13
LDR.N R0,??IsrReceive_2+0x14 ;; ??IR + 2
LDRB R0,[R0, #+0]
ORRS R0,R0,#0x1
LDR.N R3,??IsrReceive_2+0x14 ;; ??IR + 2
STRB R0,[R3, #+0]
??IsrReceive_13:
LDR.N R0,??IsrReceive_2+0x1C ;; ??IR + 3
LDRB R0,[R0, #+0]
ADDS R0,R0,#+1
LDR.N R3,??IsrReceive_2+0x1C ;; ??IR + 3
STRB R0,[R3, #+0]
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
CMP R0,#+8
BCC.N ??IsrReceive_14
LDR.N R0,??IsrReceive_2+0x18 ;; ??IR + 4
LDRB R0,[R0, #+0]
LDR.N R3,??IsrReceive_2+0x14 ;; ??IR + 2
LDRB R3,[R3, #+0]
STRB R3,[R1, R0]
LDR.N R0,??IsrReceive_2+0x18 ;; ??IR + 4
LDRB R0,[R0, #+0]
ADDS R0,R0,#+1
LDR.N R3,??IsrReceive_2+0x18 ;; ??IR + 4
STRB R0,[R3, #+0]
LDR.N R0,??IsrReceive_2+0x1C ;; ??IR + 3
MOVS R3,#+0
STRB R3,[R0, #+0]
??IsrReceive_14:
MOVS R0,#+0
LDR.N R3,??IsrReceive_2+0x20 ;; ??IR + 1
STRB R0,[R3, #+0]
LDR.N R3,??IsrReceive_2+0x4 ;; ??IR
STRB R0,[R3, #+0]
B.N ??IsrReceive_11
??IsrReceive_12:
LDR.N R0,??IsrReceive_2+0x4 ;; ??IR
LDRB R0,[R0, #+0]
ADDS R0,R0,#+1
LDR.N R3,??IsrReceive_2+0x4 ;; ??IR
STRB R0,[R3, #+0]
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
CMP R0,#+20
BCC.N ??IsrReceive_11
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
MOVS R3,#+0
STRB R3,[R0, #+0]
??IsrReceive_11:
UXTB R2,R2 ;; ZeroExtS R2,R2,#+24,#+24
CMP R2,#+0
BEQ.N ??IsrReceive_15
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
LDRB R0,[R0, #+0]
CMP R0,#+0
BEQ.N ??IsrReceive_15
LDR.N R0,??IsrReceive_2+0x24 ;; ??IR + 6
MOVS R3,#+1
STRB R3,[R0, #+0]
LDR.N R0,??IsrReceive_2+0x20 ;; ??IR + 1
LDRB R0,[R0, #+0]
ADDS R0,R0,#+1
LDR.N R3,??IsrReceive_2+0x20 ;; ??IR + 1
STRB R0,[R3, #+0]
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
CMP R0,#+30
BCS.N ??IsrReceive_16
LDR.N R0,??IsrReceive_2+0x18 ;; ??IR + 4
LDRB R0,[R0, #+0]
CMP R0,#+7
BCC.N ??IsrReceive_15
??IsrReceive_16:
LDR.N R0,??IsrReceive_2 ;; ??IR + 5
MOVS R3,#+0
STRB R3,[R0, #+0]
MOVS R0,#+1
STRB R0,[R1, #+22]
??IsrReceive_15:
MOVS R0,#+0
??IsrReceive_3:
BX LR ;; return
DATA
??IsrReceive_2:
DC32 ??IR + 5
DC32 ??IR
DC32 0x40010808
DC32 0x40011008
DC32 0x40010c08
DC32 ??IR + 2
DC32 ??IR + 4
DC32 ??IR + 3
DC32 ??IR + 1
DC32 ??IR + 6
SECTION `.XML`:CODE:NOROOT(2)
DATA
??DataTable1:
DC32 0x40010c0c
SECTION `.bss`:DATA:NOROOT(2)
??IR:
DS8 8
SECTION `.XML`:CODE:NOROOT(2)
THUMB
IsrSend:
MOVS R1,R0
LDRB R0,[R1, #+23]
CMP R0,#+0
BNE.N ??IsrSend_0
MOVS R0,#+0
LDR.N R3,??IsrSend_1 ;; ??IS + 3
STRB R0,[R3, #+0]
LDR.N R3,??IsrSend_1+0x4 ;; ??IS + 5
STRB R0,[R3, #+0]
MOVS R0,#+0
B.N ??IsrSend_2
??IsrSend_0:
LDR.N R0,??IsrSend_1+0x8 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x100
LDR.N R3,??IsrSend_1+0x8 ;; 0x40010c0c
STR R0,[R3, #+0]
LDR.N R0,??IsrSend_1+0x4 ;; ??IS + 5
LDRB R0,[R0, #+0]
CMP R0,#+0
BNE.N ??IsrSend_3
LDR.N R0,??IsrSend_1 ;; ??IS + 3
LDRB R0,[R0, #+0]
CMP R0,#+4
BCS.N ??IsrSend_4
LDR.N R0,??IsrSend_1+0xC ;; 0x4001100c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x800
LDR.N R3,??IsrSend_1+0xC ;; 0x4001100c
STR R0,[R3, #+0]
B.N ??IsrSend_5
??IsrSend_4:
LDR.N R0,??IsrSend_1+0xC ;; 0x4001100c
LDR R0,[R0, #+0]
MVNS R3,#+2048
ANDS R3,R3,R0
LDR.N R0,??IsrSend_1+0xC ;; 0x4001100c
STR R3,[R0, #+0]
??IsrSend_5:
LDR.N R0,??IsrSend_1 ;; ??IS + 3
LDRB R0,[R0, #+0]
ADDS R0,R0,#+1
LDR.N R3,??IsrSend_1 ;; ??IS + 3
STRB R0,[R3, #+0]
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
CMP R0,#+43
BCC.N ??IsrSend_6
LDR.N R0,??IsrSend_1+0x4 ;; ??IS + 5
MOVS R3,#+1
STRB R3,[R0, #+0]
MOVS R0,#+0
LDR.N R3,??IsrSend_1 ;; ??IS + 3
STRB R0,[R3, #+0]
LDR.N R3,??IsrSend_1+0x10 ;; ??IS + 4
STRB R0,[R3, #+0]
??IsrSend_6:
MOVS R0,#+0
B.N ??IsrSend_2
??IsrSend_3:
LDR.N R0,??IsrSend_1+0x4 ;; ??IS + 5
LDRB R0,[R0, #+0]
CMP R0,#+0
BEQ.N ??IsrSend_7
LDR.N R0,??IsrSend_1+0x10 ;; ??IS + 4
LDRB R0,[R0, #+0]
LSLS R0,R0,#+31
BMI.N ??IsrSend_8
LDR.N R0,??IsrSend_1+0xC ;; 0x4001100c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x800
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -