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

📄 mmc_test.lst

📁 mmc/sd卡的实现源码
💻 LST
📖 第 1 页 / 共 5 页
字号:
$0262	$5C01	SUBWF	STACK_1, W, 0
$0264	$E110	BNZ	MMC_test_L_19
$0266	$	MMC_test_L_18:
$0266	$5159	MOVF	mmc_test_usart_out_local_jm, W, 1
$0268	$6F66	MOVWF	usartlib_u_a_usart_write_param_data, 1
$026A	$EC22	F000	CALL	usartlib_u_a_usart_write
$026E	$2B58	INCF	mmc_test_usart_out_local_im, F, 1
$0270	$515A	MOVF	mmc_test_usart_out_param_text_1, W, 1
$0272	$6EE9	MOVWF	FSR0L, 0
$0274	$515B	MOVF	mmc_test_usart_out_param_text_2, W, 1
$0276	$6EEA	MOVWF	FSR0H, 0
$0278	$5158	MOVF	mmc_test_usart_out_local_im, W, 1
$027A	$26E9	ADDWF	FSR0L, F, 0
$027C	$E301	BNC	$+2
$027E	$2AEA	INCF	FSR0H, F, 0
$0280	$50EF	MOVF	INDF0, W, 0
$0282	$6F59	MOVWF	mmc_test_usart_out_local_jm, 1
$0284	$D7E6	BRA	MMC_test_L_14
$0286	$	MMC_test_L_19:
$0286	$0012	RETURN
$0288	$	usartlib_u_a_usart_init:
$0288	$8AAC	BSF	TXSTA, 5, 0
$028A	$0E90	MOVLW	144
$028C	$6EAB	MOVWF	RCSTA, 0
$028E	$8E94	BSF	TRISC, 7, 0
$0290	$9C94	BCF	TRISC, 6, 0
$0292	$	usartlib_u_a_L_0:
$0292	$0E00	MOVLW	0
$0294	$BA9E	BTFSC	PIR1, 5, 0
$0296	$0E01	MOVLW	1
$0298	$6E01	MOVWF	STACK_1, 0
$029A	$0E01	MOVLW	1
$029C	$5C01	SUBWF	STACK_1, W, 0
$029E	$E103	BNZ	usartlib_u_a_L_2
$02A0	$	usartlib_u_a_L_1:
$02A0	$0EFF	MOVLW	255
$02A2	$6E02	MOVWF	STACK_2, 0
$02A4	$D001	BRA	usartlib_u_a_L_3
$02A6	$	usartlib_u_a_L_2:
$02A6	$6A02	CLRF	STACK_2, 0
$02A8	$	usartlib_u_a_L_3:
$02A8	$0EFF	MOVLW	255
$02AA	$5C02	SUBWF	STACK_2, W, 0
$02AC	$E104	BNZ	usartlib_u_a_L_5
$02AE	$	usartlib_u_a_L_4:
$02AE	$50AE	MOVF	RCREG, W, 0
$02B0	$0102	MOVLB	2
$02B2	$6F58	MOVWF	usartlib_u_a_usart_init_local_i, 1
$02B4	$D7EE	BRA	usartlib_u_a_L_0
$02B6	$	usartlib_u_a_L_5:
$02B6	$0012	RETURN
$02B8	$	MMC_test_usart_out_ln:
$02B8	$0102	MOVLB	2
$02BA	$6B58	CLRF	mmc_test_usart_out_ln_local_im, 1
$02BC	$515A	MOVF	mmc_test_usart_out_ln_param_text_1, W, 1
$02BE	$6EE9	MOVWF	FSR0L, 0
$02C0	$515B	MOVF	mmc_test_usart_out_ln_param_text_2, W, 1
$02C2	$6EEA	MOVWF	FSR0H, 0
$02C4	$50EF	MOVF	INDF0, W, 0
$02C6	$6F59	MOVWF	mmc_test_usart_out_ln_local_jm, 1
$02C8	$	MMC_test_L_21:
$02C8	$0E00	MOVLW	0
$02CA	$5D59	SUBWF	mmc_test_usart_out_ln_local_jm, W, 1
$02CC	$E003	BZ	MMC_test_L_23
$02CE	$	MMC_test_L_22:
$02CE	$0EFF	MOVLW	255
$02D0	$6E01	MOVWF	STACK_1, 0
$02D2	$D001	BRA	MMC_test_L_24
$02D4	$	MMC_test_L_23:
$02D4	$6A01	CLRF	STACK_1, 0
$02D6	$	MMC_test_L_24:
$02D6	$0EFF	MOVLW	255
$02D8	$5C01	SUBWF	STACK_1, W, 0
$02DA	$E110	BNZ	MMC_test_L_26
$02DC	$	MMC_test_L_25:
$02DC	$5159	MOVF	mmc_test_usart_out_ln_local_jm, W, 1
$02DE	$6F66	MOVWF	usartlib_u_a_usart_write_param_data, 1
$02E0	$EC22	F000	CALL	usartlib_u_a_usart_write
$02E4	$2B58	INCF	mmc_test_usart_out_ln_local_im, F, 1
$02E6	$515A	MOVF	mmc_test_usart_out_ln_param_text_1, W, 1
$02E8	$6EE9	MOVWF	FSR0L, 0
$02EA	$515B	MOVF	mmc_test_usart_out_ln_param_text_2, W, 1
$02EC	$6EEA	MOVWF	FSR0H, 0
$02EE	$5158	MOVF	mmc_test_usart_out_ln_local_im, W, 1
$02F0	$26E9	ADDWF	FSR0L, F, 0
$02F2	$E301	BNC	$+2
$02F4	$2AEA	INCF	FSR0H, F, 0
$02F6	$50EF	MOVF	INDF0, W, 0
$02F8	$6F59	MOVWF	mmc_test_usart_out_ln_local_jm, 1
$02FA	$D7E6	BRA	MMC_test_L_21
$02FC	$	MMC_test_L_26:
$02FC	$0E0D	MOVLW	13
$02FE	$6F66	MOVWF	usartlib_u_a_usart_write_param_data, 1
$0300	$EC22	F000	CALL	usartlib_u_a_usart_write
$0304	$0E0A	MOVLW	10
$0306	$6F66	MOVWF	usartlib_u_a_usart_write_param_data, 1
$0308	$EC22	F000	CALL	usartlib_u_a_usart_write
$030C	$0012	RETURN
$030E	$	mmclib_mmc_init:
$030E	$0E01	MOVLW	1
$0310	$6E1E	MOVWF	mmclib_main_global_mask1, 0
$0312	$0102	MOVLB	2
$0314	$515C	MOVF	mmclib_mmc_init_param_pin, W, 1
$0316	$6E00	MOVWF	STACK_0, 0
$0318	$	mmclib_L_13:
$0318	$0E00	MOVLW	0
$031A	$5C00	SUBWF	STACK_0, W, 0
$031C	$E004	BZ	mmclib_L_14
$031E	$361E	RLCF	mmclib_main_global_mask1, F, 0
$0320	$901E	BCF	mmclib_main_global_mask1, 0, 0
$0322	$2E00	DECFSZ	STACK_0, F, 0
$0324	$D7F9	BRA	mmclib_L_13
$0326	$	mmclib_L_14:
$0326	$501E	MOVF	mmclib_main_global_mask1, W, 0
$0328	$6E00	MOVWF	STACK_0, 0
$032A	$1E00	COMF	STACK_0, F, 0
$032C	$5000	MOVF	STACK_0, W, 0
$032E	$6E1F	MOVWF	mmclib_main_global_mask0, 0
$0330	$515A	MOVF	mmclib_mmc_init_param_port_1, W, 1
$0332	$6E1C	MOVWF	mmclib_main_global_portaddress_1, 0
$0334	$515B	MOVF	mmclib_mmc_init_param_port_2, W, 1
$0336	$6E1D	MOVWF	mmclib_main_global_portaddress_2, 0
$0338	$6B66	CLRF	spilib_s_b_spi_init_advanced_param_master, 1
$033A	$6B67	CLRF	spilib_s_b_spi_init_advanced_param_data_sample, 1
$033C	$0E10	MOVLW	16
$033E	$6F68	MOVWF	spilib_s_b_spi_init_advanced_param_clock_idle, 1
$0340	$0E01	MOVLW	1
$0342	$6F69	MOVWF	spilib_s_b_spi_init_advanced_param_low_to_high, 1
$0344	$EC36	F000	CALL	spilib_s_b_spi_init_advanced
$0348	$501C	MOVF	mmclib_main_global_portaddress_1, W, 0
$034A	$6EE9	MOVWF	FSR0L, 0
$034C	$501D	MOVF	mmclib_main_global_portaddress_2, W, 0
$034E	$6EEA	MOVWF	FSR0H, 0
$0350	$50EF	MOVF	INDF0, W, 0
$0352	$101E	IORWF	mmclib_main_global_mask1, W, 0
$0354	$6EEF	MOVWF	INDF0, 0
$0356	$6B59	CLRF	mmclib_mmc_init_local_i, 1
$0358	$	mmclib_L_15:
$0358	$0E09	MOVLW	9
$035A	$6E01	MOVWF	STACK_1, 0
$035C	$5159	MOVF	mmclib_mmc_init_local_i, W, 1
$035E	$5C01	SUBWF	STACK_1, W, 0
$0360	$E306	BNC	mmclib_L_17
$0362	$	mmclib_L_16:
$0362	$0EFF	MOVLW	255
$0364	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$0366	$EC1A	F000	CALL	mmclib_mmc_spi
$036A	$2B59	INCF	mmclib_mmc_init_local_i, F, 1
$036C	$D7F5	BRA	mmclib_L_15
$036E	$	mmclib_L_17:
$036E	$501C	MOVF	mmclib_main_global_portaddress_1, W, 0
$0370	$6EE9	MOVWF	FSR0L, 0
$0372	$501D	MOVF	mmclib_main_global_portaddress_2, W, 0
$0374	$6EEA	MOVWF	FSR0H, 0
$0376	$50EF	MOVF	INDF0, W, 0
$0378	$141F	ANDWF	mmclib_main_global_mask0, W, 0
$037A	$6EEF	MOVWF	INDF0, 0
$037C	$6B6A	CLRF	mmclib_mmc_send_command_param_partial_cmm, 1
$037E	$6B6B	CLRF	mmclib_mmc_send_command_param_address_1, 1
$0380	$6B6C	CLRF	mmclib_mmc_send_command_param_address_2, 1
$0382	$6B6D	CLRF	mmclib_mmc_send_command_param_address_3, 1
$0384	$6B6E	CLRF	mmclib_mmc_send_command_param_address_4, 1
$0386	$0E95	MOVLW	149
$0388	$6F6F	MOVWF	mmclib_mmc_send_command_param_crc, 1
$038A	$EC66	F000	CALL	mmclib_mmc_send_command
$038E	$0E01	MOVLW	1
$0390	$5D66	SUBWF	mmclib_mmc_send_command_local_result, W, 1
$0392	$E003	BZ	mmclib_L_19
$0394	$	mmclib_L_18:
$0394	$0EFF	MOVLW	255
$0396	$6E01	MOVWF	STACK_1, 0
$0398	$D001	BRA	mmclib_L_21
$039A	$	mmclib_L_19:
$039A	$6A01	CLRF	STACK_1, 0
$039C	$	mmclib_L_21:
$039C	$0EFF	MOVLW	255
$039E	$5C01	SUBWF	STACK_1, W, 0
$03A0	$E103	BNZ	mmclib_L_23
$03A2	$	mmclib_L_22:
$03A2	$0E01	MOVLW	1
$03A4	$6F58	MOVWF	mmclib_mmc_init_local_result, 1
$03A6	$0012	return
$03A8	$	mmclib_L_23:
$03A8	$	mmclib_L_20:
$03A8	$	mmclib_L_24:
$03A8	$0E01	MOVLW	1
$03AA	$6F6A	MOVWF	mmclib_mmc_send_command_param_partial_cmm, 1
$03AC	$6B6B	CLRF	mmclib_mmc_send_command_param_address_1, 1
$03AE	$6B6C	CLRF	mmclib_mmc_send_command_param_address_2, 1
$03B0	$6B6D	CLRF	mmclib_mmc_send_command_param_address_3, 1
$03B2	$6B6E	CLRF	mmclib_mmc_send_command_param_address_4, 1
$03B4	$0EFF	MOVLW	255
$03B6	$6F6F	MOVWF	mmclib_mmc_send_command_param_crc, 1
$03B8	$EC66	F000	CALL	mmclib_mmc_send_command
$03BC	$0E00	MOVLW	0
$03BE	$5D66	SUBWF	mmclib_mmc_send_command_local_result, W, 1
$03C0	$E003	BZ	mmclib_L_26
$03C2	$	mmclib_L_25:
$03C2	$0EFF	MOVLW	255
$03C4	$6E01	MOVWF	STACK_1, 0
$03C6	$D001	BRA	mmclib_L_27
$03C8	$	mmclib_L_26:
$03C8	$6A01	CLRF	STACK_1, 0
$03CA	$	mmclib_L_27:
$03CA	$0EFF	MOVLW	255
$03CC	$5C01	SUBWF	STACK_1, W, 0
$03CE	$E102	BNZ	mmclib_L_29
$03D0	$	mmclib_L_28:
$03D0	$0000	nop
$03D2	$D7EA	BRA	mmclib_L_24
$03D4	$	mmclib_L_29:
$03D4	$6B58	CLRF	mmclib_mmc_init_local_result, 1
$03D6	$0012	RETURN
$03D8	$	mmclib_mmc_write_sector:
$03D8	$0102	MOVLB	2
$03DA	$5160	MOVF	mmclib_mmc_write_sector_param_sector_1, W, 1
$03DC	$6F5B	MOVWF	mmclib_mmc_write_sector_local_byte_start_1, 1
$03DE	$5161	MOVF	mmclib_mmc_write_sector_param_sector_2, W, 1
$03E0	$6F5C	MOVWF	mmclib_mmc_write_sector_local_byte_start_2, 1
$03E2	$5162	MOVF	mmclib_mmc_write_sector_param_sector_3, W, 1
$03E4	$6F5D	MOVWF	mmclib_mmc_write_sector_local_byte_start_3, 1
$03E6	$5163	MOVF	mmclib_mmc_write_sector_param_sector_4, W, 1
$03E8	$6F5E	MOVWF	mmclib_mmc_write_sector_local_byte_start_4, 1
$03EA	$0E09	MOVLW	9
$03EC	$6E00	MOVWF	STACK_0, 0
$03EE	$	mmclib_L_48:
$03EE	$0E00	MOVLW	0
$03F0	$5C00	SUBWF	STACK_0, W, 0
$03F2	$E007	BZ	mmclib_L_49
$03F4	$375B	RLCF	mmclib_mmc_write_sector_local_byte_start_1, F, 1
$03F6	$375C	RLCF	mmclib_mmc_write_sector_local_byte_start_2, F, 1
$03F8	$375D	RLCF	mmclib_mmc_write_sector_local_byte_start_3, F, 1
$03FA	$375E	RLCF	mmclib_mmc_write_sector_local_byte_start_4, F, 1
$03FC	$915B	BCF	mmclib_mmc_write_sector_local_byte_start_1, 0, 1
$03FE	$2E00	DECFSZ	STACK_0, F, 0
$0400	$D7F6	BRA	mmclib_L_48
$0402	$	mmclib_L_49:
$0402	$0E18	MOVLW	24
$0404	$6F6A	MOVWF	mmclib_mmc_send_command_param_partial_cmm, 1
$0406	$515B	MOVF	mmclib_mmc_write_sector_local_byte_start_1, W, 1
$0408	$6F6B	MOVWF	mmclib_mmc_send_command_param_address_1, 1
$040A	$515C	MOVF	mmclib_mmc_write_sector_local_byte_start_2, W, 1
$040C	$6F6C	MOVWF	mmclib_mmc_send_command_param_address_2, 1
$040E	$515D	MOVF	mmclib_mmc_write_sector_local_byte_start_3, W, 1
$0410	$6F6D	MOVWF	mmclib_mmc_send_command_param_address_3, 1
$0412	$515E	MOVF	mmclib_mmc_write_sector_local_byte_start_4, W, 1
$0414	$6F6E	MOVWF	mmclib_mmc_send_command_param_address_4, 1
$0416	$0EFF	MOVLW	255
$0418	$6F6F	MOVWF	mmclib_mmc_send_command_param_crc, 1
$041A	$EC66	F000	CALL	mmclib_mmc_send_command
$041E	$5166	MOVF	mmclib_mmc_send_command_local_result, W, 1
$0420	$6F58	MOVWF	mmclib_mmc_write_sector_local_result, 1
$0422	$0E00	MOVLW	0
$0424	$5D58	SUBWF	mmclib_mmc_write_sector_local_result, W, 1
$0426	$E003	BZ	mmclib_L_51
$0428	$	mmclib_L_50:
$0428	$0EFF	MOVLW	255
$042A	$6E01	MOVWF	STACK_1, 0
$042C	$D001	BRA	mmclib_L_53
$042E	$	mmclib_L_51:
$042E	$6A01	CLRF	STACK_1, 0
$0430	$	mmclib_L_53:
$0430	$0EFF	MOVLW	255
$0432	$5C01	SUBWF	STACK_1, W, 0
$0434	$E103	BNZ	mmclib_L_55
$0436	$	mmclib_L_54:
$0436	$0E01	MOVLW	1
$0438	$6F58	MOVWF	mmclib_mmc_write_sector_local_result, 1
$043A	$0012	return
$043C	$	mmclib_L_55:
$043C	$	mmclib_L_52:
$043C	$0EFF	MOVLW	255
$043E	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$0440	$EC1A	F000	CALL	mmclib_mmc_spi
$0444	$0EFF	MOVLW	255
$0446	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$0448	$EC1A	F000	CALL	mmclib_mmc_spi
$044C	$0EFE	MOVLW	254
$044E	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$0450	$EC1A	F000	CALL	mmclib_mmc_spi
$0454	$6B59	CLRF	mmclib_mmc_write_sector_local_i_1, 1
$0456	$6B5A	CLRF	mmclib_mmc_write_sector_local_i_2, 1
$0458	$	mmclib_L_56:
$0458	$0EFF	MOVLW	255
$045A	$6E02	MOVWF	STACK_2, 0
$045C	$0E01	MOVLW	1
$045E	$6E03	MOVWF	STACK_3, 0
$0460	$80D8	BSF	STATUS, C, 0
$0462	$BF5A	BTFSC	mmclib_mmc_write_sector_local_i_2, 7, 1
$0464	$D005	BRA	mmclib_L_59
$0466	$515A	MOVF	mmclib_mmc_write_sector_local_i_2, W, 1
$0468	$5C03	SUBWF	STACK_3, W, 0
$046A	$E102	BNZ	mmclib_L_59
$046C	$5159	MOVF	mmclib_mmc_write_sector_local_i_1, W, 1
$046E	$5C02	SUBWF	STACK_2, W, 0
$0470	$	mmclib_L_59:
$0470	$E312	BNC	mmclib_L_58
$0472	$	mmclib_L_57:
$0472	$5164	MOVF	mmclib_mmc_write_sector_param_data_1, W, 1
$0474	$6EE9	MOVWF	FSR0L, 0
$0476	$5165	MOVF	mmclib_mmc_write_sector_param_data_2, W, 1
$0478	$6EEA	MOVWF	FSR0H, 0
$047A	$5159	MOVF	mmclib_mmc_write_sector_local_i_1, W, 1
$047C	$26E9	ADDWF	FSR0L, F, 0
$047E	$515A	MOVF	mmclib_mmc_write_sector_local_i_2, W, 1
$0480	$22EA	ADDWFC	FSR0H, F, 0
$0482	$50EF	MOVF	INDF0, W, 0
$0484	$6F5F	MOVWF	mmclib_mmc_write_sector_local_tmp, 1
$0486	$515F	MOVF	mmclib_mmc_write_sector_local_tmp, W, 1
$0488	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$048A	$EC1A	F000	CALL	mmclib_mmc_spi
$048E	$2B59	INCF	mmclib_mmc_write_sector_local_i_1, F, 1
$0490	$B4D8	BTFSC	STATUS, Z, 0
$0492	$2B5A	INCF	mmclib_mmc_write_sector_local_i_2, F, 1
$0494	$D7E1	BRA	mmclib_L_56
$0496	$	mmclib_L_58:
$0496	$0EFF	MOVLW	255
$0498	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$049A	$EC1A	F000	CALL	mmclib_mmc_spi
$049E	$0EFF	MOVLW	255
$04A0	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$04A2	$EC1A	F000	CALL	mmclib_mmc_spi
$04A6	$0EFF	MOVLW	255
$04A8	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$04AA	$EC1A	F000	CALL	mmclib_mmc_spi
$04AE	$5170	MOVF	mmclib_mmc_spi_local_result, W, 1
$04B0	$6F59	MOVWF	mmclib_mmc_write_sector_local_i_1, 1
$04B2	$6B5A	CLRF	mmclib_mmc_write_sector_local_i_2, 1
$04B4	$0E1F	MOVLW	31
$04B6	$1559	ANDWF	mmclib_mmc_write_sector_local_i_1, W, 1
$04B8	$6E00	MOVWF	STACK_0, 0
$04BA	$6A01	CLRF	STACK_1, 0
$04BC	$5000	MOVF	STACK_0, W, 0
$04BE	$6F59	MOVWF	mmclib_mmc_write_sector_local_i_1, 1
$04C0	$5001	MOVF	STACK_1, W, 0
$04C2	$6F5A	MOVWF	mmclib_mmc_write_sector_local_i_2, 1
$04C4	$0E05	MOVLW	5
$04C6	$6E02	MOVWF	STACK_2, 0
$04C8	$94D8	BCF	STATUS, Z, 0
$04CA	$BF5A	BTFSC	mmclib_mmc_write_sector_local_i_2, 7, 1
$04CC	$D005	BRA	mmclib_L_64
$04CE	$0E00	MOVLW	0
$04D0	$5D5A	SUBWF	mmclib_mmc_write_sector_local_i_2, W, 1
$04D2	$E102	BNZ	mmclib_L_64
$04D4	$5002	MOVF	STACK_2, W, 0
$04D6	$5D59	SUBWF	mmclib_mmc_write_sector_local_i_1, W, 1
$04D8	$	mmclib_L_64:
$04D8	$E003	BZ	mmclib_L_62
$04DA	$	mmclib_L_61:
$04DA	$0EFF	MOVLW	255
$04DC	$6E01	MOVWF	STACK_1, 0
$04DE	$D001	BRA	mmclib_L_65
$04E0	$	mmclib_L_62:
$04E0	$6A01	CLRF	STACK_1, 0
$04E2	$	mmclib_L_65:
$04E2	$0EFF	MOVLW	255
$04E4	$5C01	SUBWF	STACK_1, W, 0
$04E6	$E103	BNZ	mmclib_L_67
$04E8	$	mmclib_L_66:
$04E8	$0E02	MOVLW	2
$04EA	$6F58	MOVWF	mmclib_mmc_write_sector_local_result, 1
$04EC	$0012	return
$04EE	$	mmclib_L_67:
$04EE	$	mmclib_L_63:
$04EE	$	mmclib_L_68:
$04EE	$0EFF	MOVLW	255
$04F0	$6F71	MOVWF	mmclib_mmc_spi_param_data_out, 1
$04F2	$EC1A	F000	CALL	mmclib_mmc_spi
$04F6	$0EFF	MOVLW	255
$04F8	$5D70	SUBWF	mmclib_mmc_spi_local_result, W, 1
$04FA	$E003	BZ	mmclib_L_70
$04FC	$	mmclib_L_69:
$04FC	$0EFF	MOVLW	255

⌨️ 快捷键说明

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