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

📄 mmc_test.asm

📁 mmc/sd卡的实现源码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
$0C9C	$6E02	MOVWF	STACK_2, 0
$0C9E	$6A00	CLRF 	STACK_0, 0
$0CA0	$0102	MOVLB	2
$0CA2	$514E	MOVF	main_i_L0_2,W, 1
$0CA4	$6E01	MOVWF	STACK_1, 0
$0CA6	$6AE8	CLRF	WREG, 0
$0CA8	$5E01	SUBWF	STACK_1,F, 0
$0CAA	$E102	BNZ	L_main_25
$0CAC	$5000	MOVF	STACK_0,W, 0
$0CAE	$5D4D	SUBWF	main_i_L0_1,W, 1
$0CB0	$	L_main_25:
$0CB0	$E13E	BNZ	L_main_26
$0CB2	$0102	MOVLB	2
$0CB4	$6B39	CLRF 	_k_1, 1
$0CB6	$6B3A	CLRF 	_k_2, 1
$0CB8	$	L_main_27:
$0CB8	$0E0F	MOVLW	15
$0CBA	$6E00	MOVWF 	STACK_0, 0
$0CBC	$6A01	CLRF	STACK_1, 0
$0CBE	$0102	MOVLB	2
$0CC0	$513A	MOVF	_k_2,W, 1
$0CC2	$5E01	SUBWF	STACK_1,F, 0
$0CC4	$E102	BNZ	L_main_30
$0CC6	$5139	MOVF	_k_1,W, 1
$0CC8	$5C00	SUBWF	STACK_0,W, 0
$0CCA	$	L_main_30:
$0CCA	$E326	BNC	L_main_28
$0CCC	$0E29	MOVLW 	_data_for_registers_1
$0CCE	$6E00	MOVWF 	STACK_0, 0
$0CD0	$0E02	MOVLW 	@_data_for_registers_1
$0CD2	$6E01	MOVWF 	STACK_1, 0
$0CD4	$0102	MOVLB	2
$0CD6	$5139	MOVF	_k_1,W, 1
$0CD8	$2600	ADDWF	STACK_0,F, 0
$0CDA	$513A	MOVF	_k_2,W, 1
$0CDC	$2201	ADDWFC	STACK_1,F, 0
$0CDE	$5000	MOVF 	STACK_0,W, 0
$0CE0	$6EE9	MOVWF 	FSR0L, 0
$0CE2	$5001	MOVF 	STACK_1,W, 0
$0CE4	$6EEA	MOVWF 	FSR0H, 0
$0CE6	$50EF	MOVF 	INDF0,W, 0
$0CE8	$6F51	MOVWF 	printhex_argh0, 1
$0CEA	$EC02	F003	CALL	_printhex
$0CEE	$0E0F	MOVLW	15
$0CF0	$6E00	MOVWF 	STACK_0, 0
$0CF2	$0102	MOVLB	2
$0CF4	$513A	MOVF	_k_2,W, 1
$0CF6	$6E01	MOVWF	STACK_1, 0
$0CF8	$6AE8	CLRF	WREG, 0
$0CFA	$5E01	SUBWF	STACK_1,F, 0
$0CFC	$E102	BNZ	L_main_31
$0CFE	$5000	MOVF	STACK_0,W, 0
$0D00	$5D39	SUBWF	_k_1,W, 1
$0D02	$	L_main_31:
$0D02	$E005	BZ	L_main_32
$0D04	$0E2D	MOVLW	45
$0D06	$0102	MOVLB	2
$0D08	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D0A	$EC9C	F001	CALL	_Usart_Write
$0D0E	$	L_main_32:
$0D0E	$	L_main_29:
$0D0E	$0102	MOVLB	2
$0D10	$2B39	INCF	_k_1,F, 1
$0D12	$B4D8	BTFSC	STATUS,Z, 0
$0D14	$2B3A	INCF	_k_2,F, 1
$0D16	$D7D0	BRA	L_main_27
$0D18	$	L_main_28:
$0D18	$0E0D	MOVLW	13
$0D1A	$0102	MOVLB	2
$0D1C	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D1E	$EC9C	F001	CALL	_Usart_Write
$0D22	$0E0A	MOVLW	10
$0D24	$0102	MOVLB	2
$0D26	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D28	$EC9C	F001	CALL	_Usart_Write
$0D2C	$D023	BRA	L_main_33
$0D2E	$	L_main_26:
$0D2E	$0E43	MOVLW	67
$0D30	$0102	MOVLB	2
$0D32	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D34	$EC9C	F001	CALL	_Usart_Write
$0D38	$0E53	MOVLW	83
$0D3A	$0102	MOVLB	2
$0D3C	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D3E	$EC9C	F001	CALL	_Usart_Write
$0D42	$0E44	MOVLW	68
$0D44	$0102	MOVLB	2
$0D46	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D48	$EC9C	F001	CALL	_Usart_Write
$0D4C	$0E2D	MOVLW	45
$0D4E	$0102	MOVLB	2
$0D50	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D52	$EC9C	F001	CALL	_Usart_Write
$0D56	$0E45	MOVLW	69
$0D58	$0102	MOVLB	2
$0D5A	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D5C	$EC9C	F001	CALL	_Usart_Write
$0D60	$0E72	MOVLW	114
$0D62	$0102	MOVLB	2
$0D64	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D66	$EC9C	F001	CALL	_Usart_Write
$0D6A	$0E72	MOVLW	114
$0D6C	$0102	MOVLB	2
$0D6E	$6F5F	MOVWF 	Usart_Write_argh0, 1
$0D70	$EC9C	F001	CALL	_Usart_Write
$0D74	$	L_main_33:
$0D74	$0102	MOVLB	2
$0D76	$6B3B	CLRF 	_serial_pointer, 1
$0D78	$	L_main_34:
$0D78	$D002	BRA	L_main_36
$0D7A	$EF69	F00A	GOTO 	L_main_35
$0D7E	$	L_main_36:
$0D7E	$EC97	F003	CALL	_Usart_Data_Ready
$0D82	$6A00	CLRF 	STACK_0, 0
$0D84	$0102	MOVLB	2
$0D86	$514F	MOVF	_Usart_Data_Ready_local_result,W, 1
$0D88	$5C00	SUBWF	STACK_0,W, 0
$0D8A	$B4D8	BTFSC	STATUS,Z, 0
$0D8C	$D3A0	BRA	L_main_37
$0D8E	$0E3C	MOVLW 	_serial_buffer_1
$0D90	$6E00	MOVWF 	STACK_0, 0
$0D92	$0E02	MOVLW 	@_serial_buffer_1
$0D94	$6E01	MOVWF 	STACK_1, 0
$0D96	$0E01	MOVLW	1
$0D98	$033B	MULWF	_serial_pointer, 1
$0D9A	$50F3	MOVF	PRODL,W, 0
$0D9C	$6E02	MOVWF	STACK_2, 0
$0D9E	$50F4	MOVF	PRODH,W, 0
$0DA0	$6E03	MOVWF	STACK_3, 0
$0DA2	$5002	MOVF	STACK_2,W, 0
$0DA4	$2600	ADDWF	STACK_0,F, 0
$0DA6	$5003	MOVF	STACK_3,W, 0
$0DA8	$2201	ADDWFC	STACK_1,F, 0
$0DAA	$5000	MOVF	STACK_0,W, 0
$0DAC	$6F49	MOVWF	Mirror_main_STACK_0, 1
$0DAE	$5001	MOVF	STACK_1,W, 0
$0DB0	$6F4A	MOVWF	Mirror_main_STACK_1, 1
$0DB2	$5002	MOVF	STACK_2,W, 0
$0DB4	$6F4B	MOVWF	Mirror_main_STACK_2, 1
$0DB6	$5003	MOVF	STACK_3,W, 0
$0DB8	$6F4C	MOVWF	Mirror_main_STACK_3, 1
$0DBA	$EC9E	F003	CALL	_Usart_Read
$0DBE	$0102	MOVLB	2
$0DC0	$5149	MOVF	Mirror_main_STACK_0,W, 1
$0DC2	$6E00	MOVWF	STACK_0, 0
$0DC4	$514A	MOVF	Mirror_main_STACK_1,W, 1
$0DC6	$6E01	MOVWF	STACK_1, 0
$0DC8	$514B	MOVF	Mirror_main_STACK_2,W, 1
$0DCA	$6E02	MOVWF	STACK_2, 0
$0DCC	$514C	MOVF	Mirror_main_STACK_3,W, 1
$0DCE	$6E03	MOVWF	STACK_3, 0
$0DD0	$5000	MOVF 	STACK_0,W, 0
$0DD2	$6EE9	MOVWF 	FSR0L, 0
$0DD4	$5001	MOVF 	STACK_1,W, 0
$0DD6	$6EEA	MOVWF 	FSR0H, 0
$0DD8	$514F	MOVF 	_Usart_Read_local_result,W, 1
$0DDA	$6EEF	MOVWF 	INDF0, 0
$0DDC	$2B3B	INCF	_serial_pointer,F, 1
$0DDE	$0E01	MOVLW	1
$0DE0	$6E00	MOVWF 	STACK_0, 0
$0DE2	$513B	MOVF	_serial_pointer,W, 1
$0DE4	$5C00	SUBWF	STACK_0,W, 0
$0DE6	$B0D8	BTFSC	STATUS,C, 0
$0DE8	$D372	BRA	L_main_38
$0DEA	$6B3B	CLRF 	_serial_pointer, 1
$0DEC	$0E3C	MOVLW 	_serial_buffer_1
$0DEE	$6E00	MOVWF 	STACK_0, 0
$0DF0	$0E02	MOVLW 	@_serial_buffer_1
$0DF2	$6E01	MOVWF 	STACK_1, 0
$0DF4	$5000	MOVF 	STACK_0,W, 0
$0DF6	$6E00	MOVWF 	STACK_0, 0
$0DF8	$5001	MOVF 	STACK_1,W, 0
$0DFA	$6E01	MOVWF 	STACK_1, 0
$0DFC	$0E53	MOVLW	83
$0DFE	$6E02	MOVWF 	STACK_2, 0
$0E00	$5000	MOVF 	STACK_0,W, 0
$0E02	$6EE9	MOVWF 	FSR0L, 0
$0E04	$5001	MOVF 	STACK_1,W, 0
$0E06	$6EEA	MOVWF 	FSR0H, 0
$0E08	$50EF	MOVF 	INDF0,W, 0
$0E0A	$6E03	MOVWF 	STACK_3, 0
$0E0C	$5002	MOVF	STACK_2,W, 0
$0E0E	$5C03	SUBWF	STACK_3,W, 0
$0E10	$E10E	BNZ	L_main_39
$0E12	$0E3C	MOVLW 	_serial_buffer_1
$0E14	$6E00	MOVWF 	STACK_0, 0
$0E16	$0E02	MOVLW 	@_serial_buffer_1
$0E18	$6E01	MOVWF 	STACK_1, 0
$0E1A	$0E01	MOVLW	1
$0E1C	$2600	ADDWF	STACK_0,F, 0
$0E1E	$6AE8	CLRF	WREG, 0
$0E20	$2201	ADDWFC	STACK_1,F, 0
$0E22	$5000	MOVF 	STACK_0,W, 0
$0E24	$6EE9	MOVWF 	FSR0L, 0
$0E26	$5001	MOVF 	STACK_1,W, 0
$0E28	$6EEA	MOVWF 	FSR0H, 0
$0E2A	$50EF	MOVF 	INDF0,W, 0
$0E2C	$6F3E	MOVWF 	_first_byte, 1
$0E2E	$	L_main_39:
$0E2E	$0E3C	MOVLW 	_serial_buffer_1
$0E30	$6E00	MOVWF 	STACK_0, 0
$0E32	$0E02	MOVLW 	@_serial_buffer_1
$0E34	$6E01	MOVWF 	STACK_1, 0
$0E36	$5000	MOVF 	STACK_0,W, 0
$0E38	$6E00	MOVWF 	STACK_0, 0
$0E3A	$5001	MOVF 	STACK_1,W, 0
$0E3C	$6E01	MOVWF 	STACK_1, 0
$0E3E	$0E73	MOVLW	115
$0E40	$6E02	MOVWF 	STACK_2, 0
$0E42	$5000	MOVF 	STACK_0,W, 0
$0E44	$6EE9	MOVWF 	FSR0L, 0
$0E46	$5001	MOVF 	STACK_1,W, 0
$0E48	$6EEA	MOVWF 	FSR0H, 0
$0E4A	$50EF	MOVF 	INDF0,W, 0
$0E4C	$6E03	MOVWF 	STACK_3, 0
$0E4E	$5002	MOVF	STACK_2,W, 0
$0E50	$5C03	SUBWF	STACK_3,W, 0
$0E52	$E10F	BNZ	L_main_40
$0E54	$0E3C	MOVLW 	_serial_buffer_1
$0E56	$6E00	MOVWF 	STACK_0, 0
$0E58	$0E02	MOVLW 	@_serial_buffer_1
$0E5A	$6E01	MOVWF 	STACK_1, 0
$0E5C	$0E01	MOVLW	1
$0E5E	$2600	ADDWF	STACK_0,F, 0
$0E60	$6AE8	CLRF	WREG, 0
$0E62	$2201	ADDWFC	STACK_1,F, 0
$0E64	$5000	MOVF 	STACK_0,W, 0
$0E66	$6EE9	MOVWF 	FSR0L, 0
$0E68	$5001	MOVF 	STACK_1,W, 0
$0E6A	$6EEA	MOVWF 	FSR0H, 0
$0E6C	$50EF	MOVF 	INDF0,W, 0
$0E6E	$0102	MOVLB	2
$0E70	$6F3F	MOVWF 	_second_byte, 1
$0E72	$	L_main_40:
$0E72	$0E3C	MOVLW 	_serial_buffer_1
$0E74	$6E00	MOVWF 	STACK_0, 0
$0E76	$0E02	MOVLW 	@_serial_buffer_1
$0E78	$6E01	MOVWF 	STACK_1, 0
$0E7A	$5000	MOVF 	STACK_0,W, 0
$0E7C	$6E00	MOVWF 	STACK_0, 0
$0E7E	$5001	MOVF 	STACK_1,W, 0
$0E80	$6E01	MOVWF 	STACK_1, 0
$0E82	$0E45	MOVLW	69
$0E84	$6E02	MOVWF 	STACK_2, 0
$0E86	$5000	MOVF 	STACK_0,W, 0
$0E88	$6EE9	MOVWF 	FSR0L, 0
$0E8A	$5001	MOVF 	STACK_1,W, 0
$0E8C	$6EEA	MOVWF 	FSR0H, 0
$0E8E	$50EF	MOVF 	INDF0,W, 0
$0E90	$6E03	MOVWF 	STACK_3, 0
$0E92	$5002	MOVF	STACK_2,W, 0
$0E94	$5C03	SUBWF	STACK_3,W, 0
$0E96	$E10F	BNZ	L_main_41
$0E98	$0E3C	MOVLW 	_serial_buffer_1
$0E9A	$6E00	MOVWF 	STACK_0, 0
$0E9C	$0E02	MOVLW 	@_serial_buffer_1
$0E9E	$6E01	MOVWF 	STACK_1, 0
$0EA0	$0E01	MOVLW	1
$0EA2	$2600	ADDWF	STACK_0,F, 0
$0EA4	$6AE8	CLRF	WREG, 0
$0EA6	$2201	ADDWFC	STACK_1,F, 0
$0EA8	$5000	MOVF 	STACK_0,W, 0
$0EAA	$6EE9	MOVWF 	FSR0L, 0
$0EAC	$5001	MOVF 	STACK_1,W, 0
$0EAE	$6EEA	MOVWF 	FSR0H, 0
$0EB0	$50EF	MOVF 	INDF0,W, 0
$0EB2	$0102	MOVLB	2
$0EB4	$6F40	MOVWF 	_third_byte, 1
$0EB6	$	L_main_41:
$0EB6	$0E3C	MOVLW 	_serial_buffer_1
$0EB8	$6E00	MOVWF 	STACK_0, 0
$0EBA	$0E02	MOVLW 	@_serial_buffer_1
$0EBC	$6E01	MOVWF 	STACK_1, 0
$0EBE	$5000	MOVF 	STACK_0,W, 0
$0EC0	$6E00	MOVWF 	STACK_0, 0
$0EC2	$5001	MOVF 	STACK_1,W, 0
$0EC4	$6E01	MOVWF 	STACK_1, 0
$0EC6	$0E65	MOVLW	101
$0EC8	$6E02	MOVWF 	STACK_2, 0
$0ECA	$5000	MOVF 	STACK_0,W, 0
$0ECC	$6EE9	MOVWF 	FSR0L, 0
$0ECE	$5001	MOVF 	STACK_1,W, 0
$0ED0	$6EEA	MOVWF 	FSR0H, 0
$0ED2	$50EF	MOVF 	INDF0,W, 0
$0ED4	$6E03	MOVWF 	STACK_3, 0
$0ED6	$5002	MOVF	STACK_2,W, 0
$0ED8	$5C03	SUBWF	STACK_3,W, 0
$0EDA	$E10F	BNZ	L_main_42
$0EDC	$0E3C	MOVLW 	_serial_buffer_1
$0EDE	$6E00	MOVWF 	STACK_0, 0
$0EE0	$0E02	MOVLW 	@_serial_buffer_1
$0EE2	$6E01	MOVWF 	STACK_1, 0
$0EE4	$0E01	MOVLW	1
$0EE6	$2600	ADDWF	STACK_0,F, 0
$0EE8	$6AE8	CLRF	WREG, 0
$0EEA	$2201	ADDWFC	STACK_1,F, 0
$0EEC	$5000	MOVF 	STACK_0,W, 0
$0EEE	$6EE9	MOVWF 	FSR0L, 0
$0EF0	$5001	MOVF 	STACK_1,W, 0
$0EF2	$6EEA	MOVWF 	FSR0H, 0
$0EF4	$50EF	MOVF 	INDF0,W, 0
$0EF6	$0102	MOVLB	2
$0EF8	$6F41	MOVWF 	_fourth_byte, 1
$0EFA	$	L_main_42:
$0EFA	$0E3C	MOVLW 	_serial_buffer_1
$0EFC	$6E00	MOVWF 	STACK_0, 0
$0EFE	$0E02	MOVLW 	@_serial_buffer_1
$0F00	$6E01	MOVWF 	STACK_1, 0
$0F02	$5000	MOVF 	STACK_0,W, 0
$0F04	$6E00	MOVWF 	STACK_0, 0
$0F06	$5001	MOVF 	STACK_1,W, 0
$0F08	$6E01	MOVWF 	STACK_1, 0
$0F0A	$0E52	MOVLW	82
$0F0C	$6E02	MOVWF 	STACK_2, 0
$0F0E	$5000	MOVF 	STACK_0,W, 0
$0F10	$6EE9	MOVWF 	FSR0L, 0
$0F12	$5001	MOVF 	STACK_1,W, 0
$0F14	$6EEA	MOVWF 	FSR0H, 0
$0F16	$50EF	MOVF 	INDF0,W, 0
$0F18	$6E03	MOVWF 	STACK_3, 0
$0F1A	$5002	MOVF	STACK_2,W, 0
$0F1C	$5C03	SUBWF	STACK_3,W, 0
$0F1E	$A4D8	BTFSS	STATUS,Z, 0
$0F20	$D18D	BRA	L_main_43
$0F22	$0E3C	MOVLW 	_serial_buffer_1
$0F24	$6E00	MOVWF 	STACK_0, 0
$0F26	$0E02	MOVLW 	@_serial_buffer_1
$0F28	$6E01	MOVWF 	STACK_1, 0
$0F2A	$0E01	MOVLW	1
$0F2C	$2600	ADDWF	STACK_0,F, 0
$0F2E	$6AE8	CLRF	WREG, 0
$0F30	$2201	ADDWFC	STACK_1,F, 0
$0F32	$0E72	MOVLW	114
$0F34	$6E02	MOVWF 	STACK_2, 0
$0F36	$5000	MOVF 	STACK_0,W, 0
$0F38	$6EE9	MOVWF 	FSR0L, 0
$0F3A	$5001	MOVF 	STACK_1,W, 0
$0F3C	$6EEA	MOVWF 	FSR0H, 0
$0F3E	$50EF	MOVF 	INDF0,W, 0
$0F40	$6E03	MOVWF 	STACK_3, 0
$0F42	$5002	MOVF	STACK_2,W, 0
$0F44	$5C03	SUBWF	STACK_3,W, 0
$0F46	$A4D8	BTFSS	STATUS,Z, 0
$0F48	$D179	BRA	L_main_44
$0F4A	$0102	MOVLB	2
$0F4C	$513E	MOVF 	_first_byte,W, 1
$0F4E	$6E00	MOVWF 	STACK_0, 0
$0F50	$6A01	CLRF 	STACK_1, 0
$0F52	$6A02	CLRF 	STACK_2, 0
$0F54	$6A03	CLRF 	STACK_3, 0
$0F56	$5000	MOVF 	STACK_0,W, 0
$0F58	$6E0B	MOVWF 	STACK_24, 0
$0F5A	$5001	MOVF 	STACK_1,W, 0
$0F5C	$6F71	MOVWF 	STACK_25, 1
$0F5E	$5002	MOVF 	STACK_2,W, 0
$0F60	$6F72	MOVWF 	STACK_26, 1
$0F62	$5003	MOVF 	STACK_3,W, 0
$0F64	$6F73	MOVWF 	STACK_27, 1
$0F66	$94D8	BCF	STATUS,Z, 0
$0F68	$0E18	MOVLW	24
$0F6A	$	L_main_45:
$0F6A	$E008	BZ 	L_main_46
$0F6C	$360B	RLCF 	STACK_24,F, 0
$0F6E	$0102	MOVLB	2
$0F70	$3771	RLCF 	STACK_25,F, 1
$0F72	$3772	RLCF 	STACK_26,F, 1
$0F74	$3773	RLCF 	STACK_27,F, 1
$0F76	$900B	BCF 	STACK_24,0, 0
$0F78	$0FFF	ADDLW 	255
$0F7A	$D7F7	BRA	L_main_45
$0F7C	$	L_main_46:
$0F7C	$0102	MOVLB	2
$0F7E	$513F	MOVF 	_second_byte,W, 1
$0F80	$6E04	MOVWF 	STACK_4, 0
$0F82	$6A0C	CLRF 	STACK_5, 0
$0F84	$6A05	CLRF 	STACK_6, 0
$0F86	$6A06	CLRF 	STACK_7, 0
$0F88	$5004	MOVF 	STACK_4,W, 0
$0F8A	$6E07	MOVWF 	STACK_8, 0
$0F8C	$500C	MOVF 	STACK_5,W, 0
$0F8E	$6E0D	MOVWF 	STACK_9, 0
$0F90	$5005	MOVF 	STACK_6,W, 0
$0F92	$6E0E	MOVWF 	STACK_10, 0
$0F94	$5006	MOVF 	STACK_7,W, 0
$0F96	$6E0F	MOVWF 	STACK_11, 0
$0F98	$94D8	BCF	STATUS,Z, 0
$0F9A	$0E10	MOVLW	16
$0F9C	$	L_main_47:
$0F9C	$E007	BZ 	L_main_48
$0F9E	$3607	RLCF 	STACK_8,F, 0
$0FA0	$360D	RLCF 	STACK_9,F, 0
$0FA2	$360E	RLCF 	STACK_10,F, 0
$0FA4	$360F	RLCF 	STACK_11,F, 0
$0FA6	$9007	BCF 	STACK_8,0, 0
$0FA8	$0FFF	ADDLW 	255
$0FAA	$D7F8	BRA	L_main_47
$0FAC	$	L_main_48:

⌨️ 快捷键说明

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