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

📄 5按键_sd卡mp3程序.lst

📁 5按键_SD卡MP3程序.rar
💻 LST
📖 第 1 页 / 共 5 页
字号:
    102B 8053      LDD	R5,Z+3
    102C 01FE      MOVW	R30,R28
    102D 8064      LDD	R6,Z+4
    102E 8075      LDD	R7,Z+5
    102F 8086      LDD	R8,Z+6
    1030 8097      LDD	R9,Z+7
    1031 2026      AND	R2,R6
    1032 2037      AND	R3,R7
    1033 2048      AND	R4,R8
    1034 2059      AND	R5,R9
    1035 01FE      MOVW	R30,R28
    1036 8220      STD	Z+0,R2
    1037 8231      STD	Z+1,R3
    1038 8242      STD	Z+2,R4
    1039 8253      STD	Z+3,R5
    103A 01FE      MOVW	R30,R28
    103B 8024      LDD	R2,Z+4
    103C 8035      LDD	R3,Z+5
    103D 8046      LDD	R4,Z+6
    103E 8057      LDD	R5,Z+7
    103F 01FE      MOVW	R30,R28
    1040 8060      LDD	R6,Z+0
    1041 8071      LDD	R7,Z+1
    1042 8082      LDD	R8,Z+2
    1043 8093      LDD	R9,Z+3
    1044 1462      CP	R6,R2
    1045 0473      CPC	R7,R3
    1046 0484      CPC	R8,R4
    1047 0495      CPC	R9,R5
    1048 F449      BNE	0x1052
    1049 E040      LDI	R20,0
    104A E050      LDI	R21,0
    104B E060      LDI	R22,0
    104C E070      LDI	R23,0
    104D 01FE      MOVW	R30,R28
    104E 8340      STD	Z+0,R20
    104F 8351      STD	Z+1,R21
    1050 8362      STD	Z+2,R22
    1051 8373      STD	Z+3,R23
    1052 01FE      MOVW	R30,R28
    1053 8100      LDD	R16,Z+0
    1054 8111      LDD	R17,Z+1
    1055 8122      LDD	R18,Z+2
    1056 8133      LDD	R19,Z+3
    1057 9660      ADIW	R28,0x10
    1058 940E13AE  CALL	pop_gset3
    105A 9624      ADIW	R28,4
    105B 9508      RET
_key_port:
    105C 2422      CLR	R2
    105D BA21      OUT	0x11,R2
    105E EF8F      LDI	R24,0xFF
    105F BB82      OUT	0x12,R24
    1060 9508      RET
_main:
    1061 DFFA      RCALL	_key_port
    1062 940E0B13  CALL	_spi_init
    1064 940E0B24  CALL	_mp3_port_init
    1066 940E0B68  CALL	_vs1011_init
    1068 940E0B68  CALL	_vs1011_init
    106A 940E11BE  CALL	_sd_port_init
    106C 940E122B  CALL	_SD_Init
    106E 940E122B  CALL	_SD_Init
    1070 940E12A7  CALL	_uart0_init
    1072 E580      LDI	R24,0x50
    1073 B98D      OUT	0x0D,R24
    1074 E081      LDI	R24,1
    1075 B98E      OUT	0x0E,R24
    1076 940E0C54  CALL	_fatInit
    1078 9020016A  LDS	R2,_Fat32Enabled
    107A 2022      TST	R2
    107B F069      BEQ	0x1089
    107C EF4F      LDI	R20,0xFF
    107D EF5F      LDI	R21,0xFF
    107E EF6F      LDI	R22,0xFF
    107F E07F      LDI	R23,0xF
    1080 935001BB  STS	_FAT_MASK+1,R21
    1082 934001BA  STS	_FAT_MASK,R20
    1084 937001BD  STS	_FAT_MASK+3,R23
    1086 936001BC  STS	_FAT_MASK+2,R22
    1088 C02F      RJMP	0x10B8
    1089 EF4F      LDI	R20,0xFF
    108A EF5F      LDI	R21,0xFF
    108B E060      LDI	R22,0
    108C E070      LDI	R23,0
    108D 935001BB  STS	_FAT_MASK+1,R21
    108F 934001BA  STS	_FAT_MASK,R20
    1091 937001BD  STS	_FAT_MASK+3,R23
    1093 936001BC  STS	_FAT_MASK+2,R22
    1095 C022      RJMP	0x10B8
    1096 E083      LDI	R24,3
    1097 E090      LDI	R25,0
    1098 939001B8  STS	_t+1,R25
    109A 938001B7  STS	_t,R24
    109C C013      RJMP	0x10B0
    109D 2422      CLR	R2
    109E 92200150  STS	0x150,R2
    10A0 910001B7  LDS	R16,_t
    10A2 911001B8  LDS	R17,_t+1
    10A4 940E0DDE  CALL	_fatGetDirEntry
    10A6 D013      RCALL	_mp3_play
    10A7 918001B7  LDS	R24,_t
    10A9 919001B8  LDS	R25,_t+1
    10AB 9601      ADIW	R24,1
    10AC 939001B8  STS	_t+1,R25
    10AE 938001B7  STS	_t,R24
    10B0 918001B7  LDS	R24,_t
    10B2 919001B8  LDS	R25,_t+1
    10B4 3382      CPI	R24,0x32
    10B5 E0E0      LDI	R30,0
    10B6 079E      CPC	R25,R30
    10B7 F328      BCS	0x109D
    10B8 CFDD      RJMP	0x1096
    10B9 9508      RET
_mp3_play:
  t1                   --> Y+1
  rate                 --> Y+1
  NextCluster          --> Y+4
  LBA                  --> Y+0
  i                    --> R10
  n                    --> R14
  data_pointer         --> R12
  FirstClust           --> Y+18
    10BA 940E12D9  CALL	push_arg4
    10BC 940E13DA  CALL	push_gset5
    10BE 9728      SBIW	R28,0x8
    10BF 01FE      MOVW	R30,R28
    10C0 8822      LDD	R2,Z+18
    10C1 8833      LDD	R3,Z+19
    10C2 8844      LDD	R4,Z+20
    10C3 8855      LDD	R5,Z+21
    10C4 01FE      MOVW	R30,R28
    10C5 8224      STD	Z+4,R2
    10C6 8235      STD	Z+5,R3
    10C7 8246      STD	Z+6,R4
    10C8 8257      STD	Z+7,R5
    10C9 C0EA      RJMP	0x11B4
    10CA 01FE      MOVW	R30,R28
    10CB 8104      LDD	R16,Z+4
    10CC 8115      LDD	R17,Z+5
    10CD 8126      LDD	R18,Z+6
    10CE 8137      LDD	R19,Z+7
    10CF 940E0C1C  CALL	_fatClustToSect
    10D1 01FE      MOVW	R30,R28
    10D2 8300      STD	Z+0,R16
    10D3 8311      STD	Z+1,R17
    10D4 8322      STD	Z+2,R18
    10D5 8333      STD	Z+3,R19
    10D6 24AA      CLR	R10
    10D7 24BB      CLR	R11
    10D8 C0AC      RJMP	0x1185
    10D9 90200150  LDS	R2,0x150
    10DB 2022      TST	R2
    10DC F481      BNE	0x10ED
    10DD 0115      MOVW	R2,R10
    10DE 2444      CLR	R4
    10DF 2455      CLR	R5
    10E0 01FE      MOVW	R30,R28
    10E1 8060      LDD	R6,Z+0
    10E2 8071      LDD	R7,Z+1
    10E3 8082      LDD	R8,Z+2
    10E4 8093      LDD	R9,Z+3
    10E5 0C62      ADD	R6,R2
    10E6 1C73      ADC	R7,R3
    10E7 1C84      ADC	R8,R4
    10E8 1C95      ADC	R9,R5
    10E9 0183      MOVW	R16,R6
    10EA 0194      MOVW	R18,R8
    10EB 940E0BFF  CALL	_ReadBlock
    10ED 9986      SBIC	0x10,6
    10EE C00C      RJMP	0x10FB
    10EF EF0A      LDI	R16,0xFA
    10F0 E010      LDI	R17,0
    10F1 940E11C0  CALL	_delay_nus
    10F3 9986      SBIC	0x10,6
    10F4 C006      RJMP	0x10FB
    10F5 E081      LDI	R24,1
    10F6 90200150  LDS	R2,0x150
    10F8 2628      EOR	R2,R24
    10F9 92200150  STS	0x150,R2
    10FB 9984      SBIC	0x10,4
    10FC C022      RJMP	0x111F
    10FD EF0A      LDI	R16,0xFA
    10FE E010      LDI	R17,0
    10FF 940E11C0  CALL	_delay_nus
    1101 9984      SBIC	0x10,4
    1102 C01C      RJMP	0x111F
    1103 9180014E  LDS	R24,0x14E
    1105 9190014F  LDS	R25,0x14F
    1107 5F8E      SUBI	R24,0xFE
    1108 4F9D      SBCI	R25,0xFD
    1109 9390014F  STS	0x14F,R25
    110B 9380014E  STS	0x14E,R24
    110D 3F80      CPI	R24,0xF0
    110E EFE0      LDI	R30,0xF0
    110F 079E      CPC	R25,R30
    1110 F038      BCS	0x1118
    1111 EF80      LDI	R24,0xF0
    1112 EF90      LDI	R25,0xF0
    1113 9390014F  STS	0x14F,R25
    1115 9380014E  STS	0x14E,R24
    1117 C007      RJMP	0x111F
    1118 9120014E  LDS	R18,0x14E
    111A 9130014F  LDS	R19,0x14F
    111C E00B      LDI	R16,0xB
    111D 940E0B2D  CALL	_vs1011_cmd_write
    111F 9985      SBIC	0x10,5
    1120 C025      RJMP	0x1146
    1121 EF0A      LDI	R16,0xFA
    1122 E010      LDI	R17,0
    1123 940E11C0  CALL	_delay_nus
    1125 9985      SBIC	0x10,5
    1126 C01F      RJMP	0x1146
    1127 9180014E  LDS	R24,0x14E
    1129 9190014F  LDS	R25,0x14F
    112B 5082      SUBI	R24,2
    112C 4092      SBCI	R25,2
    112D 9390014F  STS	0x14F,R25
    112F 9380014E  STS	0x14E,R24
    1131 E085      LDI	R24,5
    1132 E095      LDI	R25,5
    1133 9020014E  LDS	R2,0x14E
    1135 9030014F  LDS	R3,0x14F
    1137 1582      CP	R24,R2
    1138 0593      CPC	R25,R3
    1139 F028      BCS	0x113F
    113A 9390014F  STS	0x14F,R25
    113C 9380014E  STS	0x14E,R24
    113E C007      RJMP	0x1146
    113F 9120014E  LDS	R18,0x14E
    1141 9130014F  LDS	R19,0x14F
    1143 E00B      LDI	R16,0xB
    1144 940E0B2D  CALL	_vs1011_cmd_write
    1146 9983      SBIC	0x10,3
    1147 C007      RJMP	0x114F
    1148 EF0A      LDI	R16,0xFA
    1149 E010      LDI	R17,0
    114A 940E11C0  CALL	_delay_nus
    114C 9983      SBIC	0x10,3
    114D C001      RJMP	0x114F
    114E C066      RJMP	0x11B5
    114F 9982      SBIC	0x10,2
    1150 C010      RJMP	0x1161
    1151 EF0A      LDI	R16,0xFA
    1152 E010      LDI	R17,0
    1153 940E11C0  CALL	_delay_nus
    1155 9982      SBIC	0x10,2
    1156 C00A      RJMP	0x1161
    1157 918001B7  LDS	R24,_t
    1159 919001B8  LDS	R25,_t+1
    115B 9702      SBIW	R24,2
    115C 939001B8  STS	_t+1,R25
    115E 938001B7  STS	_t,R24
    1160 C054      RJMP	0x11B5
    1161 24CC      CLR	R12
    1162 24DD      CLR	R13
    1163 C019      RJMP	0x117D
    1164 9BB2      SBIS	0x16,2
    1165 C011      RJMP	0x1177
    1166 24EE      CLR	R14
    1167 C00C      RJMP	0x1174
    1168 EB8E      LDI	R24,0xBE
    1169 E091      LDI	R25,1
    116A 01F6      MOVW	R30,R12
    116B 0FE8      ADD	R30,R24
    116C 1FF9      ADC	R31,R25
    116D 8100      LDD	R16,Z+0
    116E 940E0B41  CALL	_vs1011_data_write
    1170 01C6      MOVW	R24,R12
    1171 9601      ADIW	R24,1
    1172 016C      MOVW	R12,R24
    1173 94E3      INC	R14
    1174 2D8E      MOV	R24,R14
    1175 3280      CPI	R24,0x20
    1176 F388      BCS	0x1168
    1177 01C6      MOVW	R24,R12
    1178 3F8F      CPI	R24,0xFF
    1179 E0E1      LDI	R30,1
    117A 079E      CPC	R25,R30
    117B F409      BNE	0x117D
    117C C005      RJMP	0x1182
    117D 01C6      MOVW	R24,R12
    117E 3080      CPI	R24,0
    117F E0E2      LDI	R30,2
    1180 079E      CPC	R25,R30
    1181 F310      BCS	0x1164
    1182 01C5      MOVW	R24,R10
    1183 9601      ADIW	R24,1
    1184 015C      MOVW	R10,R24
    1185 90200162  LDS	R2,_SectorsPerCluster
    1187 90300163  LDS	R3,_SectorsPerCluster+1
    1189 14A2      CP	R10,R2
    118A 04B3      CPC	R11,R3
    118B F408      BCC	0x118D
    118C CF4C      RJMP	0x10D9
    118D 01FE      MOVW	R30,R28
    118E 8104      LDD	R16,Z+4
    118F 8115      LDD	R17,Z+5
    1190 8126      LDD	R18,Z+6
    1191 8137      LDD	R19,Z+7
    1192 940E0FAA  CALL	_fatNextCluster
    1194 01FE      MOVW	R30,R28
    1195 8304      STD	Z+4,R16
    1196 8315      STD	Z+5,R17
    1197 8326      STD	Z+6,R18
    1198 8337      STD	Z+7,R19
    1199 EF46      LDI	R20,0xF6
    119A EF5F      LDI	R21,0xFF
    119B EF6F      LDI	R22,0xFF
    119C EF7F      LDI	R23,0xFF
    119D 904001BC  LDS	R4,_FAT_MASK+2
    119F 905001BD  LDS	R5,_FAT_MASK+3
    11A1 902001BA  LDS	R2,_FAT_MASK
    11A3 903001BB  LDS	R3,_FAT_MASK+1
    11A5 2224      AND	R2,R20
    11A6 2235      AND	R3,R21
    11A7 2246      AND	R4,R22
    11A8 2257      AND	R5,R23
    11A9 01FE      MOVW	R30,R28
    11AA 8064      LDD	R6,Z+4
    11AB 8075      LDD	R7,Z+5
    11AC 8086      LDD	R8,Z+6
    11AD 8097      LDD	R9,Z+7
    11AE 1462      CP	R6,R2
    11AF 0473      CPC	R7,R3
    11B0 0484      CPC	R8,R4
    11B1 0495      CPC	R9,R5
    11B2 F008      BCS	0x11B4
    11B3 C001      RJMP	0x11B5
    11B4 CF15      RJMP	0x10CA
    11B5 E003      LDI	R16,3
    11B6 E010      LDI	R17,0
    11B7 940E11C0  CALL	_delay_nus
    11B9 9628      ADIW	R28,0x8
    11BA 940E13B4  CALL	pop_gset5
    11BC 9624      ADIW	R28,4
    11BD 9508      RET
_sd_port_init:
    11BE 9AC4      SBI	0x18,4
    11BF 9508      RET
_delay_nus:
  b                    --> R20
  n                    --> R16
    11C0 940E13B7  CALL	push_gset1
    11C2 E041      LDI	R20,1
    11C3 C001      RJMP	0x11C5
    11C4 9543      INC	R20
    11C5 2E24      MOV	R2,R20
    11C6 2433      CLR	R3
    11C7 1620      CP	R2,R16
    11C8 0631      CPC	R3,R17
    11C9 F3D0      BCS	0x11C4
    11CA 940E13BA  CALL	pop_gset1
    11CC 9508      RET
_SD_Write_Command:
  retry                --> R12
  tmp                  --> R10
  arg                  --> Y+10
  cmd                  --> R14
    11CD 933A      ST	R19,-Y
    11CE 932A      ST	R18,-Y
    11CF 940E13DA  CALL	push_gset5
    11D1 2EE0      MOV	R14,R16
    11D2 24CC      CLR	R12
    11D3 EF0F      LDI	R16,0xFF
    11D4 940E0B1A  CALL	_Write_Byte_SPI
    11D6 98C4      CBI	0x18,4
    11D7 2D0E      MOV	R16,R14
    11D8 6400      ORI	R16,0x40
    11D9 940E0B1A  CALL	_Write_Byte_SPI
    11DB E188      LDI	R24,0x18
    11DC E090      LDI	R25,0
    11DD 01FE      MOVW	R30,R28
    11DE 8422      LDD	R2,Z+10
    11DF 8433      LDD	R3,Z+11
    11E0 8444      LDD	R4,Z+12
    11E1 8455      LDD	R5,Z+13
    11E2 938A      ST	R24,-Y
    11E3 0181      MOVW	R16,R2
    11E4 0192      MOVW	R18,R4
    11E5 940E140F  CALL	lsr32
    11E7 940E0B1A  CALL	_Write_Byte_SPI
    11E9 01FE      MOVW	R30,R28
    11EA 8422      LDD	R2,Z+10
    11EB 8433      LDD	R3,Z+11
    11EC 8444      LDD	R4,Z+12
    11ED 8455      LDD	R5,Z+13
    11EE 0112      MOVW	R2,R4
    11EF 2444      CLR	R4
    11F0 2455      CLR	R5
    11F1 2D02      MOV	R16,R2
    11F2 940E0B1A  CALL	_Write_Byte_SPI
    11F4 E088      LDI	R24,0x8
    11F5 E090      LDI	R25,0
    11F6 01FE      MOVW	R30,R28
    11F7 8422      LDD	R2,Z+10
    11F8 8433      LDD	R3,Z+11
    11F9 8444      LDD	R4,Z+12
    11FA 8455      LDD	R5,Z+13
    11FB 938A      ST	R24,-Y
    11FC 0181      MOVW	R16,R2
    11FD 0192      MOVW	R18,R4
    11FE 940E140F  CALL	lsr32
    1200 940E0B1A  CALL	_Write_Byte_SPI
    1202 EF4F      LDI	R20,0xFF
    1203 E050      LDI	R21,0
    1204 E060      LDI	R22,0
    1205 E070      LDI	R23,0
    1206 01FE      MOVW	R30,R28
    1207 8422      LDD	R2,Z+10
    1208 8433      LDD	R3,Z+11
    1209 8444      LDD	R4,Z+12
    120A 8455      LDD	R5,Z+13
    120B 2224      AND	R2,R20

⌨️ 快捷键说明

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