📄 savetask.lst
字号:
83:driver/SaveTask.c **** if (AddrVal > 247 || AddrVal == 0)
319 .LM35:
320 0146 2150 subi r18,lo8(-(-1))
321 0148 273F cpi r18,lo8(-9)
322 014a 18F0 brlo .L7
84:driver/SaveTask.c **** { AddrVal = 1; }
324 .LM36:
325 014c 81E0 ldi r24,lo8(1)
326 014e 8093 0000 sts AddrVal,r24
327 .L7:
85:driver/SaveTask.c **** BaudAndData &= 0x13;
329 .LM37:
330 0152 3371 andi r19,lo8(19)
331 0154 3093 0000 sts BaudAndData,r19
332 /* epilogue: frame size=11 */
333 0158 2B96 adiw r28,11
334 015a 0FB6 in __tmp_reg__,__SREG__
335 015c F894 cli
336 015e DEBF out __SP_H__,r29
337 0160 0FBE out __SREG__,__tmp_reg__
338 0162 CDBF out __SP_L__,r28
339 0164 DF91 pop r29
340 0166 CF91 pop r28
341 0168 0895 ret
342 /* epilogue end (size=9) */
343 /* function LoadFunData size 127 (108) */
348 .Lscope1:
350 .global Save_Calibrate
352 Save_Calibrate:
86:driver/SaveTask.c **** }
87:driver/SaveTask.c **** //-----------------------------------------
88:driver/SaveTask.c ****
89:driver/SaveTask.c **** void Save_Calibrate(void)
90:driver/SaveTask.c **** {
354 .LM38:
355 /* prologue: frame size=4 */
356 016a CF93 push r28
357 016c DF93 push r29
358 016e CDB7 in r28,__SP_L__
359 0170 DEB7 in r29,__SP_H__
360 0172 2497 sbiw r28,4
361 0174 0FB6 in __tmp_reg__,__SREG__
362 0176 F894 cli
363 0178 DEBF out __SP_H__,r29
364 017a 0FBE out __SREG__,__tmp_reg__
365 017c CDBF out __SP_L__,r28
366 /* prologue end (size=10) */
91:driver/SaveTask.c **** uchar AD_Buf[4];
92:driver/SaveTask.c ****
93:driver/SaveTask.c **** CS_AD_A = 0;
368 .LM39:
369 017e AD98 cbi 53-0x20,5
94:driver/SaveTask.c **** Rd5460A(AD_Buf,0x20); //读电流偏移校准寄存器
371 .LM40:
372 0180 60E2 ldi r22,lo8(32)
373 0182 CE01 movw r24,r28
374 0184 0196 adiw r24,1
375 0186 00D0 rcall Rd5460A
95:driver/SaveTask.c **** CS_AD_A = 1;
377 .LM41:
378 0188 AD9A sbi 53-0x20,5
96:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0x40,3);
380 .LM42:
381 018a 43E0 ldi r20,lo8(3)
382 018c 60E4 ldi r22,lo8(64)
383 018e 70E0 ldi r23,hi8(64)
384 0190 CE01 movw r24,r28
385 0192 0196 adiw r24,1
386 0194 00D0 rcall Write_EEProm_block
97:driver/SaveTask.c ****
98:driver/SaveTask.c **** CS_AD_A = 0;
388 .LM43:
389 0196 AD98 cbi 53-0x20,5
99:driver/SaveTask.c **** Rd5460A(AD_Buf,0x04); //读电流增益校准寄存器
391 .LM44:
392 0198 64E0 ldi r22,lo8(4)
393 019a CE01 movw r24,r28
394 019c 0196 adiw r24,1
395 019e 00D0 rcall Rd5460A
100:driver/SaveTask.c **** CS_AD_A = 1;
397 .LM45:
398 01a0 AD9A sbi 53-0x20,5
101:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0x50,3);
400 .LM46:
401 01a2 43E0 ldi r20,lo8(3)
402 01a4 60E5 ldi r22,lo8(80)
403 01a6 70E0 ldi r23,hi8(80)
404 01a8 CE01 movw r24,r28
405 01aa 0196 adiw r24,1
406 01ac 00D0 rcall Write_EEProm_block
102:driver/SaveTask.c **** //-----------------------------------------------
103:driver/SaveTask.c **** CS_AD_A = 0;
408 .LM47:
409 01ae AD98 cbi 53-0x20,5
104:driver/SaveTask.c **** Rd5460A(AD_Buf,0x22); //读电压偏移校准寄存器
411 .LM48:
412 01b0 62E2 ldi r22,lo8(34)
413 01b2 CE01 movw r24,r28
414 01b4 0196 adiw r24,1
415 01b6 00D0 rcall Rd5460A
105:driver/SaveTask.c **** CS_AD_A = 1;
417 .LM49:
418 01b8 AD9A sbi 53-0x20,5
106:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0x60,3);
420 .LM50:
421 01ba 43E0 ldi r20,lo8(3)
422 01bc 60E6 ldi r22,lo8(96)
423 01be 70E0 ldi r23,hi8(96)
424 01c0 CE01 movw r24,r28
425 01c2 0196 adiw r24,1
426 01c4 00D0 rcall Write_EEProm_block
107:driver/SaveTask.c ****
108:driver/SaveTask.c **** CS_AD_A = 0;
428 .LM51:
429 01c6 AD98 cbi 53-0x20,5
109:driver/SaveTask.c **** Rd5460A(AD_Buf,0x08); //读电压增益校准寄存器
431 .LM52:
432 01c8 68E0 ldi r22,lo8(8)
433 01ca CE01 movw r24,r28
434 01cc 0196 adiw r24,1
435 01ce 00D0 rcall Rd5460A
110:driver/SaveTask.c **** CS_AD_A = 1;
437 .LM53:
438 01d0 AD9A sbi 53-0x20,5
111:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0x70,3);
440 .LM54:
441 01d2 43E0 ldi r20,lo8(3)
442 01d4 60E7 ldi r22,lo8(112)
443 01d6 70E0 ldi r23,hi8(112)
444 01d8 CE01 movw r24,r28
445 01da 0196 adiw r24,1
446 01dc 00D0 rcall Write_EEProm_block
112:driver/SaveTask.c **** //-----------------------------------------------
113:driver/SaveTask.c ****
114:driver/SaveTask.c ****
115:driver/SaveTask.c **** CS_AD_B = 0;
448 .LM55:
449 01de A898 cbi 53-0x20,0
116:driver/SaveTask.c **** Rd5460A(AD_Buf,0x20); //读电流偏移校准寄存器
451 .LM56:
452 01e0 60E2 ldi r22,lo8(32)
453 01e2 CE01 movw r24,r28
454 01e4 0196 adiw r24,1
455 01e6 00D0 rcall Rd5460A
117:driver/SaveTask.c **** CS_AD_B = 1;
457 .LM57:
458 01e8 A89A sbi 53-0x20,0
118:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0x80,3);
460 .LM58:
461 01ea 43E0 ldi r20,lo8(3)
462 01ec 60E8 ldi r22,lo8(128)
463 01ee 70E0 ldi r23,hi8(128)
464 01f0 CE01 movw r24,r28
465 01f2 0196 adiw r24,1
466 01f4 00D0 rcall Write_EEProm_block
119:driver/SaveTask.c ****
120:driver/SaveTask.c **** CS_AD_B = 0;
468 .LM59:
469 01f6 A898 cbi 53-0x20,0
121:driver/SaveTask.c **** Rd5460A(AD_Buf,0x04); //读电流增益校准寄存器
471 .LM60:
472 01f8 64E0 ldi r22,lo8(4)
473 01fa CE01 movw r24,r28
474 01fc 0196 adiw r24,1
475 01fe 00D0 rcall Rd5460A
122:driver/SaveTask.c **** CS_AD_B = 1;
477 .LM61:
478 0200 A89A sbi 53-0x20,0
123:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0x90,3);
480 .LM62:
481 0202 43E0 ldi r20,lo8(3)
482 0204 60E9 ldi r22,lo8(144)
483 0206 70E0 ldi r23,hi8(144)
484 0208 CE01 movw r24,r28
485 020a 0196 adiw r24,1
486 020c 00D0 rcall Write_EEProm_block
124:driver/SaveTask.c **** //-------------------------------------------------
125:driver/SaveTask.c **** CS_AD_B = 0;
488 .LM63:
489 020e A898 cbi 53-0x20,0
126:driver/SaveTask.c **** Rd5460A(AD_Buf,0x22); //读电压偏移校准寄存器
491 .LM64:
492 0210 62E2 ldi r22,lo8(34)
493 0212 CE01 movw r24,r28
494 0214 0196 adiw r24,1
495 0216 00D0 rcall Rd5460A
127:driver/SaveTask.c **** CS_AD_B = 1;
497 .LM65:
498 0218 A89A sbi 53-0x20,0
128:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0xA0,3);
500 .LM66:
501 021a 43E0 ldi r20,lo8(3)
502 021c 60EA ldi r22,lo8(160)
503 021e 70E0 ldi r23,hi8(160)
504 0220 CE01 movw r24,r28
505 0222 0196 adiw r24,1
506 0224 00D0 rcall Write_EEProm_block
129:driver/SaveTask.c ****
130:driver/SaveTask.c **** CS_AD_B = 0;
508 .LM67:
509 0226 A898 cbi 53-0x20,0
131:driver/SaveTask.c **** Rd5460A(AD_Buf,0x08); //读电压增益校准寄存器
511 .LM68:
512 0228 68E0 ldi r22,lo8(8)
513 022a CE01 movw r24,r28
514 022c 0196 adiw r24,1
515 022e 00D0 rcall Rd5460A
132:driver/SaveTask.c **** CS_AD_B = 1;
517 .LM69:
518 0230 A89A sbi 53-0x20,0
133:driver/SaveTask.c **** Write_EEProm_block(AD_Buf,(uint *)0xB0,3);
520 .LM70:
521 0232 43E0 ldi r20,lo8(3)
522 0234 60EB ldi r22,lo8(176)
523 0236 70E0 ldi r23,hi8(176)
524 0238 CE01 movw r24,r28
525 023a 0196 adiw r24,1
526 023c 00D0 rcall Write_EEProm_block
527 /* epilogue: frame size=4 */
528 023e 2496 adiw r28,4
529 0240 0FB6 in __tmp_reg__,__SREG__
530 0242 F894 cli
531 0244 DEBF out __SP_H__,r29
532 0246 0FBE out __SREG__,__tmp_reg__
533 0248 CDBF out __SP_L__,r28
534 024a DF91 pop r29
535 024c CF91 pop r28
536 024e 0895 ret
537 /* epilogue end (size=9) */
538 /* function Save_Calibrate size 115 (96) */
543 .Lscope2:
545 .global LoadCalibration
547 LoadCalibration:
134:driver/SaveTask.c **** }
135:driver/SaveTask.c ****
136:driver/SaveTask.c **** //----------------------------------------------
137:driver/SaveTask.c ****
138:driver/SaveTask.c **** void LoadCalibration(void)
139:driver/SaveTask.c **** {
549 .LM71:
550 /* prologue: frame size=4 */
551 0250 AF92 push r10
552 0252 BF92 push r11
553 0254 CF92 push r12
554 0256 DF92 push r13
555 0258 EF92 push r14
556 025a FF92 push r15
557 025c 0F93 push r16
558 025e 1F93 push r17
559 0260 CF93 push r28
560 0262 DF93 push r29
561 0264 CDB7 in r28,__SP_L__
562 0266 DEB7 in r29,__SP_H__
563 0268 2497 sbiw r28,4
564 026a 0FB6 in __tmp_reg__,__SREG__
565 026c F894 cli
566 026e DEBF out __SP_H__,r29
567 0270 0FBE out __SREG__,__tmp_reg__
568 0272 CDBF out __SP_L__,r28
569 /* prologue end (size=18) */
140:driver/SaveTask.c **** uchar temp[4];
141:driver/SaveTask.c ****
142:driver/SaveTask.c **** temp[0] = 0x60;
571 .LM72:
572 0274 30E6 ldi r19,lo8(96)
573 0276 A32E mov r10,r19
574 0278 A982 std Y+1,r10
143:driver/SaveTask.c **** Read_EEProm_block(&temp[1],(uint *)0x40,3);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -