📄 mmc_test.asm
字号:
;// ASM code generated by mikroVirtualMachine for PIC - V. 3.0.0.0
; Date/Time: 2.6.2005 15:15:05
; Info: http://www.mikroelektronika.co.yu
;// ADDRESS OPCODE ASM
; ----------------------------------------------
$0000 $EFC6 F003 GOTO MMC_test_main
$0008 $ spilib_s_b_spi_read:
$0008 $0100 MOVLB 0
$000A $0102 MOVLB 2
$000C $5173 MOVF spilib_s_b_spi_read_param_input, W, 1
$000E $6EC9 MOVWF SSPBUF, 0
$0010 $ spilib_s_b_L_24:
$0010 $0E00 MOVLW 0
$0012 $B0C7 BTFSC SSPSTAT, 0, 0
$0014 $0E01 MOVLW 1
$0016 $6E01 MOVWF STACK_1, 0
$0018 $0E00 MOVLW 0
$001A $5C01 SUBWF STACK_1, W, 0
$001C $E103 BNZ spilib_s_b_L_26
$001E $ spilib_s_b_L_25:
$001E $0EFF MOVLW 255
$0020 $6E02 MOVWF STACK_2, 0
$0022 $D001 BRA spilib_s_b_L_27
$0024 $ spilib_s_b_L_26:
$0024 $6A02 CLRF STACK_2, 0
$0026 $ spilib_s_b_L_27:
$0026 $0EFF MOVLW 255
$0028 $5C02 SUBWF STACK_2, W, 0
$002A $E102 BNZ spilib_s_b_L_29
$002C $ spilib_s_b_L_28:
$002C $0000 nop
$002E $D7F0 BRA spilib_s_b_L_24
$0030 $ spilib_s_b_L_29:
$0030 $50C9 MOVF SSPBUF, W, 0
$0032 $6F72 MOVWF spilib_s_b_spi_read_local_result, 1
$0034 $0012 RETURN
$0036 $ mmclib_mmc_spi:
$0036 $0102 MOVLB 2
$0038 $5171 MOVF mmclib_mmc_spi_param_data_out, W, 1
$003A $6F73 MOVWF spilib_s_b_spi_read_param_input, 1
$003C $EC04 F000 CALL spilib_s_b_spi_read
$0040 $5172 MOVF spilib_s_b_spi_read_local_result, W, 1
$0042 $6F70 MOVWF mmclib_mmc_spi_local_result, 1
$0044 $0012 RETURN
$0046 $ usartlib_u_a_usart_write:
$0046 $0102 MOVLB 2
$0048 $ usartlib_u_a_L_6:
$0048 $0E00 MOVLW 0
$004A $B2AC BTFSC TXSTA, 1, 0
$004C $0E01 MOVLW 1
$004E $6E01 MOVWF STACK_1, 0
$0050 $0E00 MOVLW 0
$0052 $5C01 SUBWF STACK_1, W, 0
$0054 $E103 BNZ usartlib_u_a_L_8
$0056 $ usartlib_u_a_L_7:
$0056 $0EFF MOVLW 255
$0058 $6E02 MOVWF STACK_2, 0
$005A $D001 BRA usartlib_u_a_L_9
$005C $ usartlib_u_a_L_8:
$005C $6A02 CLRF STACK_2, 0
$005E $ usartlib_u_a_L_9:
$005E $0EFF MOVLW 255
$0060 $5C02 SUBWF STACK_2, W, 0
$0062 $E102 BNZ usartlib_u_a_L_11
$0064 $ usartlib_u_a_L_10:
$0064 $0000 nop
$0066 $D7F0 BRA usartlib_u_a_L_6
$0068 $ usartlib_u_a_L_11:
$0068 $5166 MOVF usartlib_u_a_usart_write_param_data, W, 1
$006A $6EAD MOVWF TXREG, 0
$006C $0012 RETURN
$006E $ spilib_s_b_spi_init_advanced:
$006E $0102 MOVLB 2
$0070 $0ED7 MOVLW 215
$0072 $6E94 MOVWF TRISC, 0
$0074 $6AC6 CLRF SSPCON1, 0
$0076 $50C6 MOVF SSPCON1, W, 0
$0078 $1166 IORWF spilib_s_b_spi_init_advanced_param_master, W, 1
$007A $6EC6 MOVWF SSPCON1, 0
$007C $50C6 MOVF SSPCON1, W, 0
$007E $1168 IORWF spilib_s_b_spi_init_advanced_param_clock_idle, W, 1
$0080 $6EC6 MOVWF SSPCON1, 0
$0082 $50C7 MOVF SSPSTAT, W, 0
$0084 $1167 IORWF spilib_s_b_spi_init_advanced_param_data_sample, W, 1
$0086 $6EC7 MOVWF SSPSTAT, 0
$0088 $0E00 MOVLW 0
$008A $5D68 SUBWF spilib_s_b_spi_init_advanced_param_clock_idle, W, 1
$008C $E003 BZ spilib_s_b_L_1
$008E $ spilib_s_b_L_0:
$008E $0EFF MOVLW 255
$0090 $6E01 MOVWF STACK_1, 0
$0092 $D001 BRA spilib_s_b_L_3
$0094 $ spilib_s_b_L_1:
$0094 $6A01 CLRF STACK_1, 0
$0096 $ spilib_s_b_L_3:
$0096 $0EFF MOVLW 255
$0098 $5C01 SUBWF STACK_1, W, 0
$009A $E10C BNZ spilib_s_b_L_5
$009C $ spilib_s_b_L_4:
$009C $0E00 MOVLW 0
$009E $5D69 SUBWF spilib_s_b_spi_init_advanced_param_low_to_high, W, 1
$00A0 $E103 BNZ spilib_s_b_L_7
$00A2 $ spilib_s_b_L_6:
$00A2 $0EFF MOVLW 255
$00A4 $6E01 MOVWF STACK_1, 0
$00A6 $D001 BRA spilib_s_b_L_9
$00A8 $ spilib_s_b_L_7:
$00A8 $6A01 CLRF STACK_1, 0
$00AA $ spilib_s_b_L_9:
$00AA $0EFF MOVLW 255
$00AC $5C01 SUBWF STACK_1, W, 0
$00AE $E101 BNZ spilib_s_b_L_11
$00B0 $ spilib_s_b_L_10:
$00B0 $8CC7 BSF SSPSTAT, 6, 0
$00B2 $ spilib_s_b_L_11:
$00B2 $ spilib_s_b_L_8:
$00B2 $D00B BRA spilib_s_b_L_2
$00B4 $ spilib_s_b_L_5:
$00B4 $0E01 MOVLW 1
$00B6 $5D69 SUBWF spilib_s_b_spi_init_advanced_param_low_to_high, W, 1
$00B8 $E103 BNZ spilib_s_b_L_13
$00BA $ spilib_s_b_L_12:
$00BA $0EFF MOVLW 255
$00BC $6E01 MOVWF STACK_1, 0
$00BE $D001 BRA spilib_s_b_L_15
$00C0 $ spilib_s_b_L_13:
$00C0 $6A01 CLRF STACK_1, 0
$00C2 $ spilib_s_b_L_15:
$00C2 $0EFF MOVLW 255
$00C4 $5C01 SUBWF STACK_1, W, 0
$00C6 $E101 BNZ spilib_s_b_L_17
$00C8 $ spilib_s_b_L_16:
$00C8 $8CC7 BSF SSPSTAT, 6, 0
$00CA $ spilib_s_b_L_17:
$00CA $ spilib_s_b_L_14:
$00CA $ spilib_s_b_L_2:
$00CA $8AC6 BSF SSPCON1, 5, 0
$00CC $0012 RETURN
$00CE $ mmclib_mmc_send_command:
$00CE $0102 MOVLB 2
$00D0 $501C MOVF mmclib_main_global_portaddress_1, W, 0
$00D2 $6EE9 MOVWF FSR0L, 0
$00D4 $501D MOVF mmclib_main_global_portaddress_2, W, 0
$00D6 $6EEA MOVWF FSR0H, 0
$00D8 $50EF MOVF INDF0, W, 0
$00DA $101E IORWF mmclib_main_global_mask1, W, 0
$00DC $6EEF MOVWF INDF0, 0
$00DE $0EFF MOVLW 255
$00E0 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$00E2 $EC1B F000 CALL mmclib_mmc_spi
$00E6 $501C MOVF mmclib_main_global_portaddress_1, W, 0
$00E8 $6EE9 MOVWF FSR0L, 0
$00EA $501D MOVF mmclib_main_global_portaddress_2, W, 0
$00EC $6EEA MOVWF FSR0H, 0
$00EE $50EF MOVF INDF0, W, 0
$00F0 $141F ANDWF mmclib_main_global_mask0, W, 0
$00F2 $6EEF MOVWF INDF0, 0
$00F4 $0E40 MOVLW 0x40
$00F6 $256A ADDWF mmclib_mmc_send_command_param_partial_cmm, W, 1
$00F8 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$00FA $EC1B F000 CALL mmclib_mmc_spi
$00FE $516E MOVF mmclib_mmc_send_command_param_address_4, W, 1
$0100 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$0102 $EC1B F000 CALL mmclib_mmc_spi
$0106 $516D MOVF mmclib_mmc_send_command_param_address_3, W, 1
$0108 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$010A $EC1B F000 CALL mmclib_mmc_spi
$010E $516C MOVF mmclib_mmc_send_command_param_address_2, W, 1
$0110 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$0112 $EC1B F000 CALL mmclib_mmc_spi
$0116 $516B MOVF mmclib_mmc_send_command_param_address_1, W, 1
$0118 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$011A $EC1B F000 CALL mmclib_mmc_spi
$011E $516F MOVF mmclib_mmc_send_command_param_crc, W, 1
$0120 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$0122 $EC1B F000 CALL mmclib_mmc_spi
$0126 $0EFF MOVLW 255
$0128 $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$012A $EC1B F000 CALL mmclib_mmc_spi
$012E $5170 MOVF mmclib_mmc_spi_local_result, W, 1
$0130 $6F67 MOVWF mmclib_mmc_send_command_local_res, 1
$0132 $6B68 CLRF mmclib_mmc_send_command_local_timeout_1, 1
$0134 $6B69 CLRF mmclib_mmc_send_command_local_timeout_2, 1
$0136 $ mmclib_L_0:
$0136 $0E00 MOVLW 0
$0138 $5D67 SUBWF mmclib_mmc_send_command_local_res, W, 1
$013A $E003 BZ mmclib_L_2
$013C $ mmclib_L_1:
$013C $0EFF MOVLW 255
$013E $6E01 MOVWF STACK_1, 0
$0140 $D001 BRA mmclib_L_3
$0142 $ mmclib_L_2:
$0142 $6A01 CLRF STACK_1, 0
$0144 $ mmclib_L_3:
$0144 $0E01 MOVLW 1
$0146 $5D67 SUBWF mmclib_mmc_send_command_local_res, W, 1
$0148 $E003 BZ mmclib_L_5
$014A $ mmclib_L_4:
$014A $0EFF MOVLW 255
$014C $6E02 MOVWF STACK_2, 0
$014E $D001 BRA mmclib_L_6
$0150 $ mmclib_L_5:
$0150 $6A02 CLRF STACK_2, 0
$0152 $ mmclib_L_6:
$0152 $5001 MOVF STACK_1, W, 0
$0154 $1402 ANDWF STACK_2, W, 0
$0156 $6E00 MOVWF STACK_0, 0
$0158 $0E20 MOVLW 32
$015A $6E04 MOVWF STACK_4, 0
$015C $0E4E MOVLW 78
$015E $5D69 SUBWF mmclib_mmc_send_command_local_timeout_2, W, 1
$0160 $E102 BNZ mmclib_L_9
$0162 $5004 MOVF STACK_4, W, 0
$0164 $5D68 SUBWF mmclib_mmc_send_command_local_timeout_1, W, 1
$0166 $ mmclib_L_9:
$0166 $E203 BC mmclib_L_8
$0168 $ mmclib_L_7:
$0168 $0EFF MOVLW 255
$016A $6E03 MOVWF STACK_3, 0
$016C $D001 BRA mmclib_L_10
$016E $ mmclib_L_8:
$016E $6A03 CLRF STACK_3, 0
$0170 $ mmclib_L_10:
$0170 $5003 MOVF STACK_3, W, 0
$0172 $1600 ANDWF STACK_0, F, 0
$0174 $0EFF MOVLW 255
$0176 $5C00 SUBWF STACK_0, W, 0
$0178 $E10A BNZ mmclib_L_12
$017A $ mmclib_L_11:
$017A $0EFF MOVLW 255
$017C $6F71 MOVWF mmclib_mmc_spi_param_data_out, 1
$017E $EC1B F000 CALL mmclib_mmc_spi
$0182 $5170 MOVF mmclib_mmc_spi_local_result, W, 1
$0184 $6F67 MOVWF mmclib_mmc_send_command_local_res, 1
$0186 $2B68 INCF mmclib_mmc_send_command_local_timeout_1, F, 1
$0188 $B4D8 BTFSC STATUS, Z, 0
$018A $2B69 INCF mmclib_mmc_send_command_local_timeout_2, F, 1
$018C $D7D4 BRA mmclib_L_0
$018E $ mmclib_L_12:
$018E $5167 MOVF mmclib_mmc_send_command_local_res, W, 1
$0190 $6F66 MOVWF mmclib_mmc_send_command_local_result, 1
$0192 $0012 RETURN
$0194 $ delays_delay_1us:
$0194 $0102 MOVLB 2
$0196 $0000 nop
$0198 $0000 nop
$019A $0012 RETURN
$019C $ delays_delay_5500us:
$019C $0102 MOVLB 2
$019E $0E0F MOVLW 15
$01A0 $6E00 MOVWF STACK_0, 0
$01A2 $0EFF MOVLW 255
$01A4 $6E01 MOVWF STACK_1, 0
$01A6 $ delays_L_8:
$01A6 $2E00 DECFSZ STACK_0, F, 0
$01A8 $D001 BRA delays_L_9
$01AA $D003 BRA delays_L_10
$01AC $ delays_L_9:
$01AC $2E01 DECFSZ STACK_1,F, 0
$01AE $D7FE BRA delays_L_9
$01B0 $D7FA BRA delays_L_8
$01B2 $ delays_L_10:
$01B2 $0E3E MOVLW 62
$01B4 $6E00 MOVWF STACK_0, 0
$01B6 $ delays_L_11:
$01B6 $2E00 DECFSZ STACK_0, F, 0
$01B8 $D7FE BRA delays_L_11
$01BA $0000 NOP
$01BC $0012 RETURN
$01BE $ delays_delay_50us:
$01BE $0102 MOVLB 2
$01C0 $0E21 MOVLW 33
$01C2 $6E00 MOVWF STACK_0, 0
$01C4 $ delays_L_2:
$01C4 $2E00 DECFSZ STACK_0, F, 0
$01C6 $D7FE BRA delays_L_2
$01C8 $0012 RETURN
$01CA $ usartlib_u_a_usart_init:
$01CA $0102 MOVLB 2
$01CC $8AAC BSF TXSTA, 5, 0
$01CE $0E90 MOVLW 144
$01D0 $6EAB MOVWF RCSTA, 0
$01D2 $8E94 BSF TRISC, 7, 0
$01D4 $9C94 BCF TRISC, 6, 0
$01D6 $ usartlib_u_a_L_0:
$01D6 $0E00 MOVLW 0
$01D8 $BA9E BTFSC PIR1, 5, 0
$01DA $0E01 MOVLW 1
$01DC $6E01 MOVWF STACK_1, 0
$01DE $0E01 MOVLW 1
$01E0 $5C01 SUBWF STACK_1, W, 0
$01E2 $E103 BNZ usartlib_u_a_L_2
$01E4 $ usartlib_u_a_L_1:
$01E4 $0EFF MOVLW 255
$01E6 $6E02 MOVWF STACK_2, 0
$01E8 $D001 BRA usartlib_u_a_L_3
$01EA $ usartlib_u_a_L_2:
$01EA $6A02 CLRF STACK_2, 0
$01EC $ usartlib_u_a_L_3:
$01EC $0EFF MOVLW 255
$01EE $5C02 SUBWF STACK_2, W, 0
$01F0 $E103 BNZ usartlib_u_a_L_5
$01F2 $ usartlib_u_a_L_4:
$01F2 $50AE MOVF RCREG, W, 0
$01F4 $6F58 MOVWF usartlib_u_a_usart_init_local_i, 1
$01F6 $D7EF BRA usartlib_u_a_L_0
$01F8 $ usartlib_u_a_L_5:
$01F8 $0012 RETURN
$01FA $ MMC_test_usart_out:
$01FA $0102 MOVLB 2
$01FC $6B58 CLRF mmc_test_usart_out_local_im, 1
$01FE $515A MOVF mmc_test_usart_out_param_text_1, W, 1
$0200 $6EE9 MOVWF FSR0L, 0
$0202 $515B MOVF mmc_test_usart_out_param_text_2, W, 1
$0204 $6EEA MOVWF FSR0H, 0
$0206 $50EF MOVF INDF0, W, 0
$0208 $6F59 MOVWF mmc_test_usart_out_local_jm, 1
$020A $ MMC_test_L_14:
$020A $0E00 MOVLW 0
$020C $5D59 SUBWF mmc_test_usart_out_local_jm, W, 1
$020E $E003 BZ MMC_test_L_16
$0210 $ MMC_test_L_15:
$0210 $0EFF MOVLW 255
$0212 $6E01 MOVWF STACK_1, 0
$0214 $D001 BRA MMC_test_L_17
$0216 $ MMC_test_L_16:
$0216 $6A01 CLRF STACK_1, 0
$0218 $ MMC_test_L_17:
$0218 $0EFF MOVLW 255
$021A $5C01 SUBWF STACK_1, W, 0
$021C $E110 BNZ MMC_test_L_19
$021E $ MMC_test_L_18:
$021E $5159 MOVF mmc_test_usart_out_local_jm, W, 1
$0220 $6F66 MOVWF usartlib_u_a_usart_write_param_data, 1
$0222 $EC23 F000 CALL usartlib_u_a_usart_write
$0226 $2B58 INCF mmc_test_usart_out_local_im, F, 1
$0228 $515A MOVF mmc_test_usart_out_param_text_1, W, 1
$022A $6EE9 MOVWF FSR0L, 0
$022C $515B MOVF mmc_test_usart_out_param_text_2, W, 1
$022E $6EEA MOVWF FSR0H, 0
$0230 $5158 MOVF mmc_test_usart_out_local_im, W, 1
$0232 $26E9 ADDWF FSR0L, F, 0
$0234 $E301 BNC $+2
$0236 $2AEA INCF FSR0H, F, 0
$0238 $50EF MOVF INDF0, W, 0
$023A $6F59 MOVWF mmc_test_usart_out_local_jm, 1
$023C $D7E6 BRA MMC_test_L_14
$023E $ MMC_test_L_19:
$023E $0012 RETURN
$0240 $ mmclib_mmc_init:
$0240 $0102 MOVLB 2
$0242 $0E01 MOVLW 1
$0244 $6E1E MOVWF mmclib_main_global_mask1, 0
$0246 $515C MOVF mmclib_mmc_init_param_pin, W, 1
$0248 $6E00 MOVWF STACK_0, 0
$024A $ mmclib_L_13:
$024A $0E00 MOVLW 0
$024C $5C00 SUBWF STACK_0, W, 0
$024E $E004 BZ mmclib_L_14
$0250 $361E RLCF mmclib_main_global_mask1, F, 0
$0252 $901E BCF mmclib_main_global_mask1, 0, 0
$0254 $2E00 DECFSZ STACK_0, F, 0
$0256 $D7F9 BRA mmclib_L_13
$0258 $ mmclib_L_14:
$0258 $501E MOVF mmclib_main_global_mask1, W, 0
$025A $6E00 MOVWF STACK_0, 0
$025C $1E00 COMF STACK_0, F, 0
$025E $5000 MOVF STACK_0, W, 0
$0260 $6E1F MOVWF mmclib_main_global_mask0, 0
$0262 $515A MOVF mmclib_mmc_init_param_port_1, W, 1
$0264 $6E1C MOVWF mmclib_main_global_portaddress_1, 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -