⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 soc_test.lst

📁 atmega128串口通信
💻 LST
📖 第 1 页 / 共 5 页
字号:
    038B 2433      CLR	R3
    038C E000      LDI	R16,0
    038D E011      LDI	R17,1
    038E 932F      PUSH	R18
    038F 933F      PUSH	R19
    0390 0191      MOVW	R18,R2
    0391 940E0751  CALL	empy16s
    0393 913F      POP	R19
    0394 912F      POP	R18
    0395 DE51      RCALL	_send_instruct
    0396 5F4F      SUBI	R20,0xFF
    0397 4F5F      SBCI	R21,0xFF
    0398 3141      CPI	R20,0x11
    0399 E0E0      LDI	R30,0
    039A 075E      CPC	R21,R30
    039B F334      BLT	0x0382
(0477)  
(0478) }//end HB_param_set
    039C 940E079A  CALL	pop_gset1
    039E 9508      RET
_FIR_param_set:
  i                    --> R20
    039F 940E0797  CALL	push_gset1
(0479) 
(0480) /*********************************************************
(0481) FIR参数设置
(0482) *********************************************************/
(0483) void FIR_param_set(void)
(0484) {int i;
(0485)  send_instruct(FIR_PARAM,0x3f);
    03A1 E32F      LDI	R18,0x3F
    03A2 E604      LDI	R16,0x64
    03A3 E011      LDI	R17,1
    03A4 DE42      RCALL	_send_instruct
(0486)  for(i=0;i<32;i++)
    03A5 2744      CLR	R20
    03A6 2755      CLR	R21
(0487)   send_instruct((buffer[4+i]*256),i+0x40);
    03A7 2F24      MOV	R18,R20
    03A8 5C20      SUBI	R18,0xC0
    03A9 4F3F      SBCI	R19,0xFF
    03AA E283      LDI	R24,0x23
    03AB E091      LDI	R25,1
    03AC 01FA      MOVW	R30,R20
    03AD 0FE8      ADD	R30,R24
    03AE 1FF9      ADC	R31,R25
    03AF 8020      LDD	R2,Z+0
    03B0 2433      CLR	R3
    03B1 E000      LDI	R16,0
    03B2 E011      LDI	R17,1
    03B3 932F      PUSH	R18
    03B4 933F      PUSH	R19
    03B5 0191      MOVW	R18,R2
    03B6 940E0751  CALL	empy16s
    03B8 913F      POP	R19
    03B9 912F      POP	R18
    03BA DE2C      RCALL	_send_instruct
    03BB 5F4F      SUBI	R20,0xFF
    03BC 4F5F      SBCI	R21,0xFF
    03BD 3240      CPI	R20,0x20
    03BE E0E0      LDI	R30,0
    03BF 075E      CPC	R21,R30
    03C0 F334      BLT	0x03A7
(0488)  
(0489) }//end FIR_param_set
    03C1 940E079A  CALL	pop_gset1
    03C3 9508      RET
_DDS_param_set:
  temp2                --> R10
  temp1                --> Y+0
    03C4 940E07B2  CALL	push_gset3
    03C6 9724      SBIW	R28,4
(0490) 
(0491) /*********************************************************
(0492) DDS参数设置
(0493) *********************************************************/
(0494) void DDS_param_set(void)
(0495) {long temp1;
(0496)  short temp2;
(0497) systemregH=systemregH&0b11110111;
    03C7 91800102  LDS	R24,_systemregH
    03C9 7F87      ANDI	R24,0xF7
    03CA 93800102  STS	_systemregH,R24
(0498) SYSCTL_BYTE_HIG=systemregH;
    03CC 2E28      MOV	R2,R24
    03CD 922019FF  STS	0x19FF,R2
(0499) temp1=(long)buffer[4]*256*256*256;
    03CF 90200123  LDS	R2,0x123
    03D1 2433      CLR	R3
    03D2 2444      CLR	R4
    03D3 2455      CLR	R5
    03D4 E040      LDI	R20,0
    03D5 E051      LDI	R21,1
    03D6 E060      LDI	R22,0
    03D7 E070      LDI	R23,0
    03D8 925A      ST	R5,-Y
    03D9 924A      ST	R4,-Y
    03DA 923A      ST	R3,-Y
    03DB 922A      ST	R2,-Y
    03DC 018A      MOVW	R16,R20
    03DD 019B      MOVW	R18,R22
    03DE 940E0761  CALL	empy32s
    03E0 E040      LDI	R20,0
    03E1 E051      LDI	R21,1
    03E2 E060      LDI	R22,0
    03E3 E070      LDI	R23,0
    03E4 933A      ST	R19,-Y
    03E5 932A      ST	R18,-Y
    03E6 931A      ST	R17,-Y
    03E7 930A      ST	R16,-Y
    03E8 018A      MOVW	R16,R20
    03E9 019B      MOVW	R18,R22
    03EA 940E0761  CALL	empy32s
    03EC E040      LDI	R20,0
    03ED E051      LDI	R21,1
    03EE E060      LDI	R22,0
    03EF E070      LDI	R23,0
    03F0 933A      ST	R19,-Y
    03F1 932A      ST	R18,-Y
    03F2 931A      ST	R17,-Y
    03F3 930A      ST	R16,-Y
    03F4 018A      MOVW	R16,R20
    03F5 019B      MOVW	R18,R22
    03F6 940E0761  CALL	empy32s
    03F8 01FE      MOVW	R30,R28
    03F9 8300      STD	Z+0,R16
    03FA 8311      STD	Z+1,R17
    03FB 8322      STD	Z+2,R18
    03FC 8333      STD	Z+3,R19
(0500) temp1=temp1+(long)buffer[5]*256*256;
    03FD 90200124  LDS	R2,0x124
    03FF 2433      CLR	R3
    0400 2444      CLR	R4
    0401 2455      CLR	R5
    0402 E040      LDI	R20,0
    0403 E051      LDI	R21,1
    0404 E060      LDI	R22,0
    0405 E070      LDI	R23,0
    0406 925A      ST	R5,-Y
    0407 924A      ST	R4,-Y
    0408 923A      ST	R3,-Y
    0409 922A      ST	R2,-Y
    040A 018A      MOVW	R16,R20
    040B 019B      MOVW	R18,R22
    040C 940E0761  CALL	empy32s
    040E E040      LDI	R20,0
    040F E051      LDI	R21,1
    0410 E060      LDI	R22,0
    0411 E070      LDI	R23,0
    0412 933A      ST	R19,-Y
    0413 932A      ST	R18,-Y
    0414 931A      ST	R17,-Y
    0415 930A      ST	R16,-Y
    0416 018A      MOVW	R16,R20
    0417 019B      MOVW	R18,R22
    0418 940E0761  CALL	empy32s
    041A 01FE      MOVW	R30,R28
    041B 8020      LDD	R2,Z+0
    041C 8031      LDD	R3,Z+1
    041D 8042      LDD	R4,Z+2
    041E 8053      LDD	R5,Z+3
    041F 0E20      ADD	R2,R16
    0420 1E31      ADC	R3,R17
    0421 1E42      ADC	R4,R18
    0422 1E53      ADC	R5,R19
    0423 01FE      MOVW	R30,R28
    0424 8220      STD	Z+0,R2
    0425 8231      STD	Z+1,R3
    0426 8242      STD	Z+2,R4
    0427 8253      STD	Z+3,R5
(0501) temp1=temp1+(long)buffer[6]*256;
    0428 90200125  LDS	R2,0x125
    042A 2433      CLR	R3
    042B 2444      CLR	R4
    042C 2455      CLR	R5
    042D E040      LDI	R20,0
    042E E051      LDI	R21,1
    042F E060      LDI	R22,0
    0430 E070      LDI	R23,0
    0431 925A      ST	R5,-Y
    0432 924A      ST	R4,-Y
    0433 923A      ST	R3,-Y
    0434 922A      ST	R2,-Y
    0435 018A      MOVW	R16,R20
    0436 019B      MOVW	R18,R22
    0437 940E0761  CALL	empy32s
    0439 01FE      MOVW	R30,R28
    043A 8020      LDD	R2,Z+0
    043B 8031      LDD	R3,Z+1
    043C 8042      LDD	R4,Z+2
    043D 8053      LDD	R5,Z+3
    043E 0E20      ADD	R2,R16
    043F 1E31      ADC	R3,R17
    0440 1E42      ADC	R4,R18
    0441 1E53      ADC	R5,R19
    0442 01FE      MOVW	R30,R28
    0443 8220      STD	Z+0,R2
    0444 8231      STD	Z+1,R3
    0445 8242      STD	Z+2,R4
    0446 8253      STD	Z+3,R5
(0502) temp1=temp1+(long)buffer[7];
    0447 90200126  LDS	R2,0x126
    0449 2433      CLR	R3
    044A 2444      CLR	R4
    044B 2455      CLR	R5
    044C 01FE      MOVW	R30,R28
    044D 8060      LDD	R6,Z+0
    044E 8071      LDD	R7,Z+1
    044F 8082      LDD	R8,Z+2
    0450 8093      LDD	R9,Z+3
    0451 0C62      ADD	R6,R2
    0452 1C73      ADC	R7,R3
    0453 1C84      ADC	R8,R4
    0454 1C95      ADC	R9,R5
    0455 01FE      MOVW	R30,R28
    0456 8260      STD	Z+0,R6
    0457 8271      STD	Z+1,R7
    0458 8282      STD	Z+2,R8
    0459 8293      STD	Z+3,R9
(0503) set_dds_freq(temp1);
    045A 01FE      MOVW	R30,R28
    045B 8100      LDD	R16,Z+0
    045C 8111      LDD	R17,Z+1
    045D 8122      LDD	R18,Z+2
    045E 8133      LDD	R19,Z+3
    045F DDD3      RCALL	_set_dds_freq
(0504) temp2=buffer[8]*256+buffer[9];
    0460 91200127  LDS	R18,0x127
    0462 2733      CLR	R19
    0463 E000      LDI	R16,0
    0464 E011      LDI	R17,1
    0465 940E0751  CALL	empy16s
    0467 0158      MOVW	R10,R16
    0468 90200128  LDS	R2,0x128
    046A 2433      CLR	R3
    046B 0CA2      ADD	R10,R2
    046C 1CB3      ADC	R11,R3
(0505) set_dds_scale(0x07ff);
    046D EF0F      LDI	R16,0xFF
    046E E017      LDI	R17,7
    046F DDE8      RCALL	_set_dds_scale
(0506) temp2=buffer[10]*256+buffer[11];
    0470 91200129  LDS	R18,0x129
    0472 2733      CLR	R19
    0473 E000      LDI	R16,0
    0474 E011      LDI	R17,1
    0475 940E0751  CALL	empy16s
    0477 0158      MOVW	R10,R16
    0478 9020012A  LDS	R2,0x12A
    047A 2433      CLR	R3
    047B 0CA2      ADD	R10,R2
    047C 1CB3      ADC	R11,R3
(0507) set_dds_phase(temp2);
    047D 0185      MOVW	R16,R10
    047E DDE6      RCALL	_set_dds_phase
(0508) temp1=(long)buffer[12]*256*256*256;
    047F 9020012B  LDS	R2,0x12B
    0481 2433      CLR	R3
    0482 2444      CLR	R4
    0483 2455      CLR	R5
    0484 E040      LDI	R20,0
    0485 E051      LDI	R21,1
    0486 E060      LDI	R22,0
    0487 E070      LDI	R23,0
    0488 925A      ST	R5,-Y
    0489 924A      ST	R4,-Y
    048A 923A      ST	R3,-Y
    048B 922A      ST	R2,-Y
    048C 018A      MOVW	R16,R20
    048D 019B      MOVW	R18,R22
    048E 940E0761  CALL	empy32s
    0490 E040      LDI	R20,0
    0491 E051      LDI	R21,1
    0492 E060      LDI	R22,0
    0493 E070      LDI	R23,0
    0494 933A      ST	R19,-Y
    0495 932A      ST	R18,-Y
    0496 931A      ST	R17,-Y
    0497 930A      ST	R16,-Y
    0498 018A      MOVW	R16,R20
    0499 019B      MOVW	R18,R22
    049A 940E0761  CALL	empy32s
    049C E040      LDI	R20,0
    049D E051      LDI	R21,1
    049E E060      LDI	R22,0
    049F E070      LDI	R23,0
    04A0 933A      ST	R19,-Y
    04A1 932A      ST	R18,-Y
    04A2 931A      ST	R17,-Y
    04A3 930A      ST	R16,-Y
    04A4 018A      MOVW	R16,R20
    04A5 019B      MOVW	R18,R22
    04A6 940E0761  CALL	empy32s
    04A8 01FE      MOVW	R30,R28
    04A9 8300      STD	Z+0,R16
    04AA 8311      STD	Z+1,R17
    04AB 8322      STD	Z+2,R18
    04AC 8333      STD	Z+3,R19
(0509) temp1=temp1+(long)buffer[13]*256*256;
    04AD 9020012C  LDS	R2,0x12C
    04AF 2433      CLR	R3
    04B0 2444      CLR	R4
    04B1 2455      CLR	R5
    04B2 E040      LDI	R20,0
    04B3 E051      LDI	R21,1
    04B4 E060      LDI	R22,0
    04B5 E070      LDI	R23,0
    04B6 925A      ST	R5,-Y
    04B7 924A      ST	R4,-Y
    04B8 923A      ST	R3,-Y
    04B9 922A      ST	R2,-Y
    04BA 018A      MOVW	R16,R20
    04BB 019B      MOVW	R18,R22
    04BC 940E0761  CALL	empy32s
    04BE E040      LDI	R20,0
    04BF E051      LDI	R21,1
    04C0 E060      LDI	R22,0
    04C1 E070      LDI	R23,0
    04C2 933A      ST	R19,-Y
    04C3 932A      ST	R18,-Y
    04C4 931A      ST	R17,-Y
    04C5 930A      ST	R16,-Y
    04C6 018A      MOVW	R16,R20
    04C7 019B      MOVW	R18,R22
    04C8 940E0761  CALL	empy32s
    04CA 01FE      MOVW	R30,R28
    04CB 8020      LDD	R2,Z+0
    04CC 8031      LDD	R3,Z+1
    04CD 8042      LDD	R4,Z+2
    04CE 8053      LDD	R5,Z+3
    04CF 0E20      ADD	R2,R16
    04D0 1E31      ADC	R3,R17
    04D1 1E42      ADC	R4,R18
    04D2 1E53      ADC	R5,R19
    04D3 01FE      MOVW	R30,R28
    04D4 8220      STD	Z+0,R2
    04D5 8231      STD	Z+1,R3
    04D6 8242      STD	Z+2,R4
    04D7 8253      STD	Z+3,R5
(0510) temp1=temp1+(long)buffer[14]*256;
    04D8 9020012D  LDS	R2,0x12D
    04DA 2433      CLR	R3
    04DB 2444      CLR	R4
    04DC 2455      CLR	R5
    04DD E040      LDI	R20,0
    04DE E051      LDI	R21,1
    04DF E060      LDI	R22,0
    04E0 E070      LDI	R23,0
    04E1 925A      ST	R5,-Y
    04E2 924A      ST	R4,-Y
    04E3 923A      ST	R3,-Y
    04E4 922A      ST	R2,-Y
    04E5 018A      MOVW	R16,R20
    04E6 019B      MOVW	R18,R22
    04E7 940E0761  CALL	empy32s
    04E9 01FE      MOVW	R30,R28
    04EA 8020      LDD	R2,Z+0
    04EB 8031      LDD	R3,Z+1
    04EC 8042      LDD	R4,Z+2
    04ED 8053      LDD	R5,Z+3
    04EE 0E20      ADD	R2,R16
    04EF 1E31      ADC	R3,R17
    04F0 1E42      ADC	R4,R18
    04F1 1E53      ADC	R5,R19
    04F2 01FE      MOVW	R30,R28
    04F3 8220      STD	Z+0,R2
    04F4 8231      STD	Z+1,R3
    04F5 8242      STD	Z+2,R4
    04F6 8253      STD	Z+3,R5
(0511) temp1=temp1+(long)buffer[15];
    04F7 9020012E  LDS	R2,0x12E
    04F9 2433      CLR	R3
    04FA 2444      CLR	R4
    04FB 2455      CLR	R5
    04FC 01FE      MOVW	R30,R28
    04FD 8060      LDD	R6,Z+0
    04FE 8071      LDD	R7,Z+1
    04FF 8082      LDD	R8,Z+2
    0500 8093      LDD	R9,Z+3
    0501 0C62      ADD	R6,R2
    0502 1C73      ADC	R7,R3
    0503 1C84      ADC	R8,R4
    0504 1C95      ADC	R9,R5
    0505 01FE      MOVW	R30,R28
    0506 8260      STD	Z+0,R6
    0507 8271      STD	Z+1,R7
    0508 8282      STD	Z+2,R8
    0509 8293      STD	Z+3,R9
(0512) set_dds_increment(temp1);
    050A 01FE      MOVW	R30,R28
    050B 8100      LDD	R16,Z+0
    050C 8111      LDD	R17,Z+1
    050D 8122      LDD	R18,Z+2
    050E 8133      LDD	R19,Z+3
    050F DD5E      RCALL	_set_dds_increment
(0513) NOP5();
    0510 DB7F      RCALL	_NOP5

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -