📄 rtctempcompensation.lst
字号:
1203 ta1_isr_L4:
1204 ; break;
1205 DBG110:
0114 173c 1206 jmp ta1_isr_L1
1207 DBG111:
1208 ; case 2:
1209 ta1_isr_L5:
1210 ; TACCTL1 &= ~ (0x0010) ;
1211 DBG112:
0116 b2f0efff6401 1212 and #0xffef,&0x164
1213 DBG113:
1214 ; break;
011c 133c 1215 jmp ta1_isr_L1
1216 DBG114:
1217 ; case 4:
1218 ta1_isr_L6:
1219 ; TACCTL2 &= ~ (0x0010) ;
1220 DBG115:
011e b2f0efff6601 1221 and #0xffef,&0x166
1222 DBG116:
1223 ; break;
0124 0f3c 1224 jmp ta1_isr_L1
1225 DBG117:
1226 ; case 10:
1227 ta1_isr_L7:
1228 ; TACTL &= ~ (0x0001) ;
1229 DBG118:
0126 92c36001 1230 bic #0x1,&0x160
1231 DBG119:
1232 ; break;
012a 0c3c 1233 jmp ta1_isr_L1
1234 DBG120:
1235 ta1_isr_L2:
012c 1c422e01 1236 mov &0x12e,r12
1237 ; swcode: switch has 4 cases - min 0 max 10
0130 0c93 1238 cmp #0x0,r12
0132 f027 1239 jeq ta1_isr_L4
0134 2c93 1240 cmp #0x2,r12
0136 ef27 1241 jeq ta1_isr_L5
0138 2c92 1242 cmp #0x4,r12
013a f127 1243 jeq ta1_isr_L6
013c 3c900a00 1244 cmp #0xa,r12
0140 f227 1245 jeq ta1_isr_L7
0142 e83f 1246 jmp ta1_isr_L3
1247 ta1_isr_L1:
1248 ; }
1249 ; _BIC_SR_IRQ( ( (0x0080) + (0x0040) + (0x0010) ) ) ;
1250 DBG121:
0144 b1c0d0000200 1251 bic #0xd0,0x2(sp)
1252 DBG123:
1253 DBG122:
1254 ; EXIT
1255 ; .temp1 at stkloc 0 (0x0) size 2
014a 3c41 1256 pop r12
014c 0013 1257 reti
1258 .dbgseg dbg_syms
03fc 00000000 1259 .long 0x0
0400 00000004 1260 .long DBG37
0404 00000002 1261 .long 0x2
0408 00000000 1262 .long 0x0
040c 00010002 1263 .long 0x10002
0410 00000000 1264 .long 0x0
0414 00000134 1265 .long DBG38
0418 00000002 1266 .long 0x2
041c 00000000 1267 .long 0x0
0420 00010002 1268 .long 0x10002
0424 504e5f5f 1269 .long 0x504e5f5f
0428 534d5241 1270 .long 0x534d5241
042c 00000000 1271 .long 0x0
0430 00000000 1272 .long 0x0
0434 00010002 1273 .long 0x10002
0438 0066652e 1274 .long 0x66652e
043c 00000000 1275 .long 0x0
0440 0000014a 1276 .long DBG123
0444 00000000 1277 .long 0x0
0448 01650001 1278 .long 0x1650001
044c 00000000 1279 .long 0x0
0450 000001d4 1280 .long 0x1d4
0454 00000000 1281 .long 0x0
0458 00000000 1282 .long 0x0
045c 00000000 1283 .long 0x0
1284 .pseg RtcTempCompensation_code
1285 DBG100:
1286 .dbgseg dbg_syms
0460 5f316174 1287 .long 0x5f316174
0464 00727369 1288 .long 0x727369
0468 0000014e 1289 .long DBG100
046c 00000000 1290 .long 0x0
0470 00ff0001 1291 .long 0xff0001
1292 ; }
1293 ; uint16 Filter_holdoff = 0;
1294 .iseg RtcTempCompensation_idata
0003 1295 .zero 0x1
0004 1296 .align 0x2
0004 1297 .align 0x2
0004 0000 1298 .data 0x0
1299 .dseg RtcTempCompensation_data
0003 1300 .bss 0x1
0004 1301 .align 0x2
1302 .global _Filter_holdoff
1303 _Filter_holdoff:
0004 1304 .bss 0x2
1305 ; Filter_holdoff size 2
1306 ; sint32 ReadingFiltered;
1307 ; sint16 AnalogueInput;
1308 ; sint16 AnalogueOutput;
1309 ; void UpdateFilter(void)
1310 .dbgseg dbg_syms
1311 DBG99:
0474 00000000 1312 .long 0x0
0478 00000030 1313 .long DBG128
047c 0000014e 1314 .long _UpdateFilter
0480 00000040 1315 .long 0x40
0484 01020001 1316 .long 0x1020001
0488 0000049c 1317 .long DBG103
048c 00000078 1318 .long DBG125-DBG126
0490 000002a0 1319 .long DBG127
0494 00000604 1320 .long DBG124
0498 00000000 1321 .long 0x0
1322 .pseg RtcTempCompensation_code
1323 DBG126:
1324 .dbgseg dbg_syms
1325 DBG103:
049c 0066622e 1326 .long 0x66622e
04a0 00000000 1327 .long 0x0
04a4 0000014e 1328 .long DBG126
04a8 00000000 1329 .long 0x0
04ac 01650001 1330 .long 0x1650001
04b0 00000000 1331 .long 0x0
04b4 000001f1 1332 .long 0x1f1
04b8 00000000 1333 .long 0x0
04bc 00000604 1334 .long DBG129
04c0 00000000 1335 .long 0x0
1336 .dbgseg dbg_line
1337 DBG127:
02a0 00000474 1338 .long DBG99
02a4 00000000 1339 .long 0x0
02a8 0000014e 1340 .long _UpdateFilter
02ac 00000001 1341 .long 0x1
02b0 00000152 1342 .long DBG131
02b4 00000002 1343 .long 0x2
02b8 00000152 1344 .long DBG132
02bc 00000007 1345 .long 0x7
02c0 0000018e 1346 .long DBG133
02c4 00000009 1347 .long 0x9
02c8 00000198 1348 .long DBG134
02cc 0000000a 1349 .long 0xa
02d0 00000198 1350 .long DBG135
02d4 0000000b 1351 .long 0xb
02d8 000001ac 1352 .long DBG136
02dc 0000000c 1353 .long 0xc
02e0 000001ac 1354 .long DBG137
02e4 0000000d 1355 .long 0xd
02e8 000001ae 1356 .long DBG138
02ec 0000000e 1357 .long 0xe
02f0 000001ae 1358 .long DBG139
02f4 00000010 1359 .long 0x10
02f8 000001b4 1360 .long DBG140
02fc 00000011 1361 .long 0x11
0300 000001bc 1362 .long DBG141
0304 00000012 1363 .long 0x12
0308 000001c0 1364 .long DBG142
030c 00000013 1365 .long 0x13
0310 000001c0 1366 .long DBG143
0314 00000014 1367 .long 0x14
1368 .pseg RtcTempCompensation_code
1369 .global _UpdateFilter
1370 _UpdateFilter:
014e 0412 1371 push r4
0150 0512 1372 push r5
1373 DBG132:
1374 DBG131:
1375 DBG130:
1376 ; ENTRY
1377 ; {
1378 ; ReadingFiltered = ( (ReadingFiltered*( 8 -1)) + (((sint32)AnalogueInput) <<8) ) / 8 ;
0152 15420600 1379 mov &_AnalogueInput,r5
0156 0443 1380 mov #0x0,r4
0158 0593 1381 cmp #0x0,r5
015a 0134 1382 jge UpdateFilter_LL2
015c 3443 1383 mov #-0x1,r4
1384 UpdateFilter_LL2:
015e 44e5 1385 xor.b r5,r4
0160 04e5 1386 xor r5,r4
0162 8410 1387 swpb r4
0164 75f3 1388 and.b #0xff,r5
0166 8510 1389 swpb r5
0168 1d420000 1390 mov &_ReadingFiltered,r13
016c 1c420200 1391 mov &_ReadingFiltered+0x2,r12
0170 3f400700 1392 mov #0x7,r15
0174 0e43 1393 mov #0x0,r14
1394 DBG144:
0176 b0120000 1395 call #__smult32
1396 DBG145:
017a 0d55 1397 add r5,r13
017c 0c64 1398 addc r4,r12
017e 3f42 1399 mov #0x8,r15
0180 0e43 1400 mov #0x0,r14
1401 DBG146:
0182 b0120000 1402 call #__sdiv32
1403 DBG147:
0186 824d0000 1404 mov r13,&_ReadingFiltered
018a 824c0200 1405 mov r12,&_ReadingFiltered+0x2
1406 DBG133:
1407 ; if (Filter_holdoff > 5* 8 )
018e 3e402800 1408 mov #0x28,r14
0192 1e920400 1409 cmp &_Filter_holdoff,r14
0196 0b2c 1410 jc UpdateFilter_L1
1411 DBG135:
1412 DBG134:
1413 ; {
1414 ; AnalogueOutput = (sint16) ((ReadingFiltered+128) >> 8);
0198 3e42 1415 mov #0x8,r14
019a 3d508000 1416 add #0x80,r13
019e 0c63 1417 addc #0x0,r12
1418 UpdateFilter_LL3:
01a0 0c11 1419 rra r12
01a2 0d10 1420 rrc r13
01a4 1e83 1421 dec r14
01a6 fc23 1422 jnz UpdateFilter_LL3
1423 UpdateFilter_LL4:
01a8 824d0800 1424 mov r13,&_AnalogueOutput
1425 DBG137:
1426 DBG136:
1427 ; }
01ac 093c 1428 jmp UpdateFilter_LL5
1429 UpdateFilter_L1:
1430 ; else
1431 ; {
1432 DBG138:
1433 ; AnalogueOutput = AnalogueInput;
1434 DBG139:
01ae 924206000800 1435 mov &_AnalogueInput,&_AnalogueOutput
1436 DBG140:
1437 ; ReadingFiltered = ((sint32) AnalogueInput) << 8;
01b4 82450000 1438 mov r5,&_ReadingFiltered
01b8 82440200 1439 mov r4,&_ReadingFiltered+0x2
1440 DBG141:
1441 ; Filter_holdoff++;
01bc 92530400 1442 add #0x1,&_Filter_holdoff
1443 DBG142:
1444 UpdateFilter_L2:
1445 ; }
1446 DBG143:
1447 UpdateFilter_LL5:
1448 ; EXIT
1449 ; .temp2 at stkloc 0 (0x0) size 4
1450 DBG148:
01c0 3541 1451 pop r5
01c2 3441 1452 pop r4
01c4 3041 1453 ret
1454 .dbgseg dbg_syms
04c4 00000000 1455 .long 0x0
04c8 00000004 1456 .long DBG37
04cc 00000004 1457 .long 0x4
04d0 00000000 1458 .long 0x0
04d4 00010002 1459 .long 0x10002
04d8 00000000 1460 .long 0x0
04dc 00000134 1461 .long DBG38
04e0 00000002 1462 .long 0x2
04e4 00000000 1463 .long 0x0
04e8 00010002 1464 .long 0x10002
04ec 504e5f5f 1465 .long 0x504e5f5f
04f0 534d5241 1466 .long 0x534d5241
04f4 00000000 1467 .long 0x0
04f8 00000000 1468 .long 0x0
04fc 00010002 1469 .long 0x10002
1470 DBG42:
0500 0062622e 1471 .long 0x62622e
0504 00000000 1472 .long 0x0
0508 00000176 1473 .long DBG144
050c 00000000 1474 .long 0x0
0510 01640001 1475 .long 0x1640001
0514 00000000 1476 .long 0x0
0518 00000009 1477 .long 0x9
051c 00000000 1478 .long 0x0
0520 00000564 1479 .long DBG149
0524 00000000 1480 .long 0x0
0528 00000000 1481 .long 0x0
052c 0000005c 1482 .long DBG41
0530 00000000 1483 .long 0x0
0534 00000000 1484 .long 0x0
0538 00010002 1485 .long 0x10002
053c 0062652e 1486 .long 0x62652e
0540 00000000 1487 .long 0x0
0544 0000017a 1488 .long DBG145
0548 00000000 1489 .long 0x0
054c 01640001 1490 .long 0x1640001
0550 00000000 1491 .long 0x0
0554 00000009 1492 .long 0x9
0558 00000000 1493 .long 0x0
055c 00000000 1494 .long 0x0
0560 00000000 1495 .long 0x0
1496 DBG149:
0564 0062622e 1497 .long 0x62622e
0568 00000000 1498 .long 0x0
056c 00000182 1499 .long DBG146
0570 00000000 1500 .long 0x0
0574 01640001 1501
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -