📄 rtctempcompensation.asm
字号:
DBG110:
jmp ta1_isr_L1
DBG111:
; case 2:
ta1_isr_L5:
; TACCTL1 &= ~ (0x0010) ;
DBG112:
and #0xffef,&0x164
DBG113:
; break;
jmp ta1_isr_L1
DBG114:
; case 4:
ta1_isr_L6:
; TACCTL2 &= ~ (0x0010) ;
DBG115:
and #0xffef,&0x166
DBG116:
; break;
jmp ta1_isr_L1
DBG117:
; case 10:
ta1_isr_L7:
; TACTL &= ~ (0x0001) ;
DBG118:
bic #0x1,&0x160
DBG119:
; break;
jmp ta1_isr_L1
DBG120:
ta1_isr_L2:
mov &0x12e,r12
; swcode: switch has 4 cases - min 0 max 10
cmp #0x0,r12
jeq ta1_isr_L4
cmp #0x2,r12
jeq ta1_isr_L5
cmp #0x4,r12
jeq ta1_isr_L6
cmp #0xa,r12
jeq ta1_isr_L7
jmp ta1_isr_L3
ta1_isr_L1:
; }
; _BIC_SR_IRQ( ( (0x0080) + (0x0040) + (0x0010) ) ) ;
DBG121:
bic #0xd0,0x2(sp)
DBG123:
DBG122:
; EXIT
; .temp1 at stkloc 0 (0x0) size 2
pop r12
reti
.dbgseg dbg_syms
.long 0x0
.long DBG37
.long 0x2
.long 0x0
.long 0x10002
.long 0x0
.long DBG38
.long 0x2
.long 0x0
.long 0x10002
.long 0x504e5f5f
.long 0x534d5241
.long 0x0
.long 0x0
.long 0x10002
.long 0x66652e
.long 0x0
.long DBG123
.long 0x0
.long 0x1650001
.long 0x0
.long 0x1d4
.long 0x0
.long 0x0
.long 0x0
.pseg RtcTempCompensation_code
DBG100:
.dbgseg dbg_syms
.long 0x5f316174
.long 0x727369
.long DBG100
.long 0x0
.long 0xff0001
; }
; uint16 Filter_holdoff = 0;
.iseg RtcTempCompensation_idata
.zero 0x1
.align 0x2
.align 0x2
.data 0x0
.dseg RtcTempCompensation_data
.bss 0x1
.align 0x2
.global _Filter_holdoff
_Filter_holdoff:
.bss 0x2
; Filter_holdoff size 2
; sint32 ReadingFiltered;
; sint16 AnalogueInput;
; sint16 AnalogueOutput;
; void UpdateFilter(void)
.dbgseg dbg_syms
DBG99:
.long 0x0
.long DBG128
.long _UpdateFilter
.long 0x40
.long 0x1020001
.long DBG103
.long DBG125-DBG126
.long DBG127
.long DBG124
.long 0x0
.pseg RtcTempCompensation_code
DBG126:
.dbgseg dbg_syms
DBG103:
.long 0x66622e
.long 0x0
.long DBG126
.long 0x0
.long 0x1650001
.long 0x0
.long 0x1f1
.long 0x0
.long DBG129
.long 0x0
.dbgseg dbg_line
DBG127:
.long DBG99
.long 0x0
.long _UpdateFilter
.long 0x1
.long DBG131
.long 0x2
.long DBG132
.long 0x7
.long DBG133
.long 0x9
.long DBG134
.long 0xa
.long DBG135
.long 0xb
.long DBG136
.long 0xc
.long DBG137
.long 0xd
.long DBG138
.long 0xe
.long DBG139
.long 0x10
.long DBG140
.long 0x11
.long DBG141
.long 0x12
.long DBG142
.long 0x13
.long DBG143
.long 0x14
.pseg RtcTempCompensation_code
.global _UpdateFilter
_UpdateFilter:
push r4
push r5
DBG132:
DBG131:
DBG130:
; ENTRY
; {
; ReadingFiltered = ( (ReadingFiltered*( 8 -1)) + (((sint32)AnalogueInput) <<8) ) / 8 ;
mov &_AnalogueInput,r5
mov #0x0,r4
cmp #0x0,r5
jge UpdateFilter_LL2
mov #-0x1,r4
UpdateFilter_LL2:
xor.b r5,r4
xor r5,r4
swpb r4
and.b #0xff,r5
swpb r5
mov &_ReadingFiltered,r13
mov &_ReadingFiltered+0x2,r12
mov #0x7,r15
mov #0x0,r14
DBG144:
call #__smult32
DBG145:
add r5,r13
addc r4,r12
mov #0x8,r15
mov #0x0,r14
DBG146:
call #__sdiv32
DBG147:
mov r13,&_ReadingFiltered
mov r12,&_ReadingFiltered+0x2
DBG133:
; if (Filter_holdoff > 5* 8 )
mov #0x28,r14
cmp &_Filter_holdoff,r14
jc UpdateFilter_L1
DBG135:
DBG134:
; {
; AnalogueOutput = (sint16) ((ReadingFiltered+128) >> 8);
mov #0x8,r14
add #0x80,r13
addc #0x0,r12
UpdateFilter_LL3:
rra r12
rrc r13
dec r14
jnz UpdateFilter_LL3
UpdateFilter_LL4:
mov r13,&_AnalogueOutput
DBG137:
DBG136:
; }
jmp UpdateFilter_LL5
UpdateFilter_L1:
; else
; {
DBG138:
; AnalogueOutput = AnalogueInput;
DBG139:
mov &_AnalogueInput,&_AnalogueOutput
DBG140:
; ReadingFiltered = ((sint32) AnalogueInput) << 8;
mov r5,&_ReadingFiltered
mov r4,&_ReadingFiltered+0x2
DBG141:
; Filter_holdoff++;
add #0x1,&_Filter_holdoff
DBG142:
UpdateFilter_L2:
; }
DBG143:
UpdateFilter_LL5:
; EXIT
; .temp2 at stkloc 0 (0x0) size 4
DBG148:
pop r5
pop r4
ret
.dbgseg dbg_syms
.long 0x0
.long DBG37
.long 0x4
.long 0x0
.long 0x10002
.long 0x0
.long DBG38
.long 0x2
.long 0x0
.long 0x10002
.long 0x504e5f5f
.long 0x534d5241
.long 0x0
.long 0x0
.long 0x10002
DBG42:
.long 0x62622e
.long 0x0
.long DBG144
.long 0x0
.long 0x1640001
.long 0x0
.long 0x9
.long 0x0
.long DBG149
.long 0x0
.long 0x0
.long DBG41
.long 0x0
.long 0x0
.long 0x10002
.long 0x62652e
.long 0x0
.long DBG145
.long 0x0
.long 0x1640001
.long 0x0
.long 0x9
.long 0x0
.long 0x0
.long 0x0
DBG149:
.long 0x62622e
.long 0x0
.long DBG146
.long 0x0
.long 0x1640001
.long 0x0
.long 0x9
.long 0x0
.long DBG150
.long 0x0
.long 0x0
.long DBG41
.long 0x0
.long 0x0
.long 0x10002
.long 0x62652e
.long 0x0
.long DBG147
.long 0x0
.long 0x1640001
.long 0x0
.long 0x9
.long 0x0
.long 0x0
.long 0x0
.long 0x66652e
.long 0x0
.long DBG148
.long 0x0
.long 0x1650001
.long 0x0
.long 0x204
.long 0x0
.long 0x0
.long 0x0
.pseg RtcTempCompensation_code
DBG125:
.dbgseg dbg_syms
.long 0x0
.long DBG128
.long DBG125
.long 0x0
.long 0xff0001
; }
.dseg RtcTempCompensation_bss
.align 0x2
RtcTempCompensation_V3:
.align 0x2
.global _ReadingFiltered
_ReadingFiltered:
.bss 0x4
; ReadingFiltered size 4
.align 0x2
.global _RtcCorrectionTime
_RtcCorrectionTime:
.bss 0x2
; RtcCorrectionTime size 2
.align 0x2
.global _AnalogueInput
_AnalogueInput:
.bss 0x2
; AnalogueInput size 2
.align 0x2
.global _AnalogueOutput
_AnalogueOutput:
.bss 0x2
; AnalogueOutput size 2
.extern _bcd_add_short
.extern _minutes
.extern _seconds
.extern _hours
.extern _getTemp
.extern __smult32
.extern __sdiv32
.extern __sdiv16
.extern _tempF
.dbgseg dbg_syms
DBG129:
DBG150:
DBG124:
DBG4:
.long 0x7073
.long 0x0
.long 0x1
.long 0x0
.long 0x16cfffe
.long 0x0
.long 0x100001
.long 0x0
.long 0x0
.long 0x0
.long 0x52
.long 0x0
.long 0x2
.long 0x0
.long 0x16cfffe
.long 0x0
.long 0x100010
.long 0x0
.long 0x0
.long 0x0
.long 0x746e6973
.long 0x3233
.long 0x0
.long 0x5
.long 0xdfffe
.long 0x746e6975
.long 0x3233
.long 0x0
.long 0xf
.long 0xdfffe
.long 0x746e6973
.long 0x3631
.long 0x0
.long 0x3
.long 0xdfffe
.long 0x0
.long DBG151
.long _Filter_holdoff
.long 0xd
.long 0x20002
.long 0x746e6975
.long 0x3631
.long 0x0
.long 0xd
.long 0xdfffe
.long 0x0
.long DBG152
.long _ReadingFiltered
.long 0x5
.long 0x20002
.long 0x0
.long DBG153
.long _UpdateTempCorrectionFlag
.long 0xc
.long 0x20002
.long 0x0
.long DBG154
.long _RtcCorrectionTime
.long 0xd
.long 0x20002
.long 0x0
.long DBG155
.long _FrequencyCorrectionTable
.long 0x6c
.long 0x1020002
.long 0x0
.long 0x830209
.long 0x83
.long 0x0
.long 0x0
.long 0x65747962
.long 0x0
.long 0x0
.long 0xc
.long 0xdfffe
.long 0x0
.long DBG156
.long _SampledAdcRawValue
.long 0xd
.long 0x20002
.long 0x0
.long DBG157
.long _AnalogueInput
.long 0x3
.long 0x20002
.long 0x0
.long DBG158
.long _AnalogueOutput
.long 0x3
.long 0x20002
.long 0x666f652e
.long 0x0
.long 0x0
.long 0x0
.long 0x67fffe
.dbgseg dbg_strs
.align 0x2
.long 0x1a4
DBG37:
.long 0x5f5f4652
.long 0x414d4553
.long 0x495a4500
DBG151:
.long 0x46696c74
.long 0x65725f68
.long 0x6f6c646f
.long 0x66660000
DBG152:
.long 0x52656164
.long 0x696e6746
.long 0x696c7465
.long 0x72656400
DBG128:
.long 0x55706461
.long 0x74654669
.long 0x6c746572
.long 0x0
DBG153:
.long 0x55706461
.long 0x74655465
.long 0x6d70436f
.long 0x72726563
.long 0x74696f6e
.long 0x466c6167
.long 0x0
DBG41:
.long 0x5f5f5641
.long 0x525f4152
.long 0x47535f53
.long 0x495a4500
DBG5:
.long 0x433a5c44
.long 0x6f63756d
.long 0x656e7473
.long 0x20616e64
.long 0x20536574
.long 0x74696e67
.long 0x735c416c
.long 0x6c205573
.long 0x6572735c
.long 0x446f6375
.long 0x6d656e74
.long 0x735c5449
.long 0x20436f6e
.long 0x74657374
.long 0x5c4d7920
.long 0x456e7472
.long 0x6965735c
.long 0x52544320
.long 0x54656d70
.long 0x65726174
.long 0x75726520
.long 0x436f6d70
.long 0x656e7361
.long 0x74696f6e
.long 0x5c517561
.long 0x64726176
.long 0x6f785c52
.long 0x74635465
.long 0x6d70436f
.long 0x6d70656e
.long 0x73617469
.long 0x6f6e2e63
.long 0x0
DBG154:
.long 0x52746343
.long 0x6f727265
.long 0x6374696f
.long 0x6e54696d
.long 0x65000000
DBG155:
.long 0x46726571
.long 0x75656e63
.long 0x79436f72
.long 0x72656374
.long 0x696f6e54
.long 0x61626c65
.long 0x0
DBG156:
.long 0x53616d70
.long 0x6c656441
.long 0x64635261
.long 0x7756616c
.long 0x75650000
DBG38:
.long 0x5f5f5341
.long 0x5645445f
.long 0x41524753
.long 0x5f53495a
.long 0x45000000
DBG43:
.long 0x52746343
.long 0x6f727265
.long 0x6374696f
.long 0x6e496e64
.long 0x65780000
DBG10:
.long 0x55706461
.long 0x7465436f
.long 0x72726563
.long 0x74696f6e
.long 0x0
DBG157:
.long 0x416e616c
.long 0x6f677565
.long 0x496e7075
.long 0x74000000
DBG158:
.long 0x416e616c
.long 0x6f677565
.long 0x4f757470
.long 0x75740000
DBG48:
.long 0x496e6974
.long 0x69616c69
.long 0x73655469
.long 0x6d657241
.long 0x31000000
.iseg _idesc
.align 0x2
.data RtcTempCompensation_V1
.data RtcTempCompensation_V2
.data 0x6
.data 0x0
.data RtcTempCompensation_V3
.data 0xa
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -