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

📄 main.lst

📁 An applicaion that utilize a fingerprint scanner to turn off the PC
💻 LST
📖 第 1 页 / 共 5 页
字号:
$04CC	$3001			MOVLW	1
$04CD	$00AC			MOVWF	_user_number
;main.c,314 :: 		Enroll_Users_Fingerprint(user_number); //enroll the finger print user 1
$04CE	$3001			MOVLW	1
$04CF	$00AE			MOVWF	FARG_Enroll_Users_Fingerprint+0
$04D0	$2313			CALL	_Enroll_Users_Fingerprint
;main.c,315 :: 		user_number = 4; //user1 left finger print location
$04D1	$3004			MOVLW	4
$04D2	$00AC			MOVWF	_user_number
;main.c,316 :: 		Enroll_Users_Fingerprint(user_number); //enroll the finger print user 1
$04D3	$3004			MOVLW	4
$04D4	$00AE			MOVWF	FARG_Enroll_Users_Fingerprint+0
$04D5	$2313			CALL	_Enroll_Users_Fingerprint
;main.c,317 :: 		LCD_Cmd(LCD_CLEAR);
$04D6	$3001			MOVLW	1
$04D7	$00D7			MOVWF	FARG_Lcd_Cmd+0
$04D8	$201F			CALL	_Lcd_Cmd
;main.c,318 :: 		Show_EEPROM_Stored_Messages(1,0xb0);
$04D9	$3001			MOVLW	1
$04DA	$00D0			MOVWF	FARG_Show_EEPROM_Stored_Messages+0
$04DB	$30B0			MOVLW	176
$04DC	$00D1			MOVWF	FARG_Show_EEPROM_Stored_Messages+1
$04DD	$21A9			CALL	_Show_EEPROM_Stored_Messages
;main.c,319 :: 		seconds_delay(5);
$04DE	$3005			MOVLW	5
$04DF	$00D0			MOVWF	FARG_Seconds_Delay+0
$04E0	$21CA			CALL	_Seconds_Delay
;main.c,320 :: 		LCD_Cmd(LCD_CLEAR);
$04E1	$3001			MOVLW	1
$04E2	$00D7			MOVWF	FARG_Lcd_Cmd+0
$04E3	$201F			CALL	_Lcd_Cmd
;main.c,321 :: 		event = 1;
$04E4	$3001			MOVLW	1
$04E5	$00AD			MOVWF	_event
;main.c,322 :: 		}
$04E6	$	L_main_29:
;main.c,323 :: 		if ((PORTC & 0x30) == 0x10)
$04E6	$3030			MOVLW	48
$04E7	$0507			ANDWF	PORTC, 0
$04E8	$00F1			MOVWF	STACK_1
$04E9	$0871			MOVF	STACK_1, 0
$04EA	$3A10			XORLW	16
$04EB	$1D03			BTFSS	STATUS, Z
$04EC	$2D14			GOTO	L_main_30
;main.c,325 :: 		LCD_Cmd(LCD_CLEAR);
$04ED	$3001			MOVLW	1
$04EE	$00D7			MOVWF	FARG_Lcd_Cmd+0
$04EF	$201F			CALL	_Lcd_Cmd
;main.c,326 :: 		Show_Splash_message();
$04F0	$22C0			CALL	_Show_Splash_message
;main.c,327 :: 		seconds_delay(1);
$04F1	$3001			MOVLW	1
$04F2	$00D0			MOVWF	FARG_Seconds_Delay+0
$04F3	$21CA			CALL	_Seconds_Delay
;main.c,328 :: 		Delete_Specific_User(2);
$04F4	$3002			MOVLW	2
$04F5	$00AE			MOVWF	FARG_Delete_Specific_User+0
$04F6	$2286			CALL	_Delete_Specific_User
;main.c,329 :: 		Delete_Specific_User(5);
$04F7	$3005			MOVLW	5
$04F8	$00AE			MOVWF	FARG_Delete_Specific_User+0
$04F9	$2286			CALL	_Delete_Specific_User
;main.c,330 :: 		user_number = 2; //user1 right finger print location
$04FA	$3002			MOVLW	2
$04FB	$00AC			MOVWF	_user_number
;main.c,331 :: 		Enroll_Users_Fingerprint(user_number); //enroll the finger print user 1
$04FC	$3002			MOVLW	2
$04FD	$00AE			MOVWF	FARG_Enroll_Users_Fingerprint+0
$04FE	$2313			CALL	_Enroll_Users_Fingerprint
;main.c,332 :: 		user_number = 5; //user1 left finger print location
$04FF	$3005			MOVLW	5
$0500	$00AC			MOVWF	_user_number
;main.c,333 :: 		Enroll_Users_Fingerprint(user_number); //enroll the finger print user 1
$0501	$3005			MOVLW	5
$0502	$00AE			MOVWF	FARG_Enroll_Users_Fingerprint+0
$0503	$2313			CALL	_Enroll_Users_Fingerprint
;main.c,334 :: 		LCD_Cmd(LCD_CLEAR);
$0504	$3001			MOVLW	1
$0505	$00D7			MOVWF	FARG_Lcd_Cmd+0
$0506	$201F			CALL	_Lcd_Cmd
;main.c,335 :: 		Show_EEPROM_Stored_Messages(1,0xb0);
$0507	$3001			MOVLW	1
$0508	$00D0			MOVWF	FARG_Show_EEPROM_Stored_Messages+0
$0509	$30B0			MOVLW	176
$050A	$00D1			MOVWF	FARG_Show_EEPROM_Stored_Messages+1
$050B	$21A9			CALL	_Show_EEPROM_Stored_Messages
;main.c,336 :: 		seconds_delay(5);
$050C	$3005			MOVLW	5
$050D	$00D0			MOVWF	FARG_Seconds_Delay+0
$050E	$21CA			CALL	_Seconds_Delay
;main.c,337 :: 		LCD_Cmd(LCD_CLEAR);
$050F	$3001			MOVLW	1
$0510	$00D7			MOVWF	FARG_Lcd_Cmd+0
$0511	$201F			CALL	_Lcd_Cmd
;main.c,338 :: 		event = 1;
$0512	$3001			MOVLW	1
$0513	$00AD			MOVWF	_event
;main.c,339 :: 		}
$0514	$	L_main_30:
;main.c,340 :: 		if ((PORTC & 0x30) == 0x20)
$0514	$3030			MOVLW	48
$0515	$0507			ANDWF	PORTC, 0
$0516	$00F1			MOVWF	STACK_1
$0517	$0871			MOVF	STACK_1, 0
$0518	$3A20			XORLW	32
$0519	$1D03			BTFSS	STATUS, Z
$051A	$2D42			GOTO	L_main_31
;main.c,342 :: 		LCD_Cmd(LCD_CLEAR);
$051B	$3001			MOVLW	1
$051C	$00D7			MOVWF	FARG_Lcd_Cmd+0
$051D	$201F			CALL	_Lcd_Cmd
;main.c,343 :: 		Show_Splash_message();
$051E	$22C0			CALL	_Show_Splash_message
;main.c,344 :: 		seconds_delay(1);
$051F	$3001			MOVLW	1
$0520	$00D0			MOVWF	FARG_Seconds_Delay+0
$0521	$21CA			CALL	_Seconds_Delay
;main.c,345 :: 		Delete_Specific_User(3);
$0522	$3003			MOVLW	3
$0523	$00AE			MOVWF	FARG_Delete_Specific_User+0
$0524	$2286			CALL	_Delete_Specific_User
;main.c,346 :: 		Delete_Specific_User(6);
$0525	$3006			MOVLW	6
$0526	$00AE			MOVWF	FARG_Delete_Specific_User+0
$0527	$2286			CALL	_Delete_Specific_User
;main.c,347 :: 		user_number = 3; //user1 right finger print location
$0528	$3003			MOVLW	3
$0529	$00AC			MOVWF	_user_number
;main.c,348 :: 		Enroll_Users_Fingerprint(user_number); //enroll the finger print user 1
$052A	$3003			MOVLW	3
$052B	$00AE			MOVWF	FARG_Enroll_Users_Fingerprint+0
$052C	$2313			CALL	_Enroll_Users_Fingerprint
;main.c,349 :: 		user_number = 6; //user1 left finger print location
$052D	$3006			MOVLW	6
$052E	$00AC			MOVWF	_user_number
;main.c,350 :: 		Enroll_Users_Fingerprint(user_number); //enroll the finger print user 1
$052F	$3006			MOVLW	6
$0530	$00AE			MOVWF	FARG_Enroll_Users_Fingerprint+0
$0531	$2313			CALL	_Enroll_Users_Fingerprint
;main.c,351 :: 		LCD_Cmd(LCD_CLEAR);
$0532	$3001			MOVLW	1
$0533	$00D7			MOVWF	FARG_Lcd_Cmd+0
$0534	$201F			CALL	_Lcd_Cmd
;main.c,352 :: 		Show_EEPROM_Stored_Messages(1,0xb0);
$0535	$3001			MOVLW	1
$0536	$00D0			MOVWF	FARG_Show_EEPROM_Stored_Messages+0
$0537	$30B0			MOVLW	176
$0538	$00D1			MOVWF	FARG_Show_EEPROM_Stored_Messages+1
$0539	$21A9			CALL	_Show_EEPROM_Stored_Messages
;main.c,353 :: 		seconds_delay(5);
$053A	$3005			MOVLW	5
$053B	$00D0			MOVWF	FARG_Seconds_Delay+0
$053C	$21CA			CALL	_Seconds_Delay
;main.c,354 :: 		LCD_Cmd(LCD_CLEAR);
$053D	$3001			MOVLW	1
$053E	$00D7			MOVWF	FARG_Lcd_Cmd+0
$053F	$201F			CALL	_Lcd_Cmd
;main.c,355 :: 		event = 1;
$0540	$3001			MOVLW	1
$0541	$00AD			MOVWF	_event
;main.c,356 :: 		}
$0542	$	L_main_31:
;main.c,357 :: 		if ((PORTC & 0x30) == 0x30)//PIR1.RCIF)
$0542	$3030			MOVLW	48
$0543	$0507			ANDWF	PORTC, 0
$0544	$00F1			MOVWF	STACK_1
$0545	$0871			MOVF	STACK_1, 0
$0546	$3A30			XORLW	48
$0547	$1D03			BTFSS	STATUS, Z
$0548	$2D98			GOTO	L_main_32
;main.c,359 :: 		LCD_Out(1,1,"  PLACE FINGER  ");
$0549	$3001			MOVLW	1
$054A	$00D0			MOVWF	FARG_LCD_Out+0
$054B	$3001			MOVLW	1
$054C	$00D1			MOVWF	FARG_LCD_Out+1
$054D	$30C2			MOVLW	lstr6_main
$054E	$00D2			MOVWF	FARG_LCD_Out+2
$054F	$2166			CALL	_LCD_Out
;main.c,360 :: 		LCD_Out(2,1," ON THE SCANNER ");
$0550	$3002			MOVLW	2
$0551	$00D0			MOVWF	FARG_LCD_Out+0
$0552	$3001			MOVLW	1
$0553	$00D1			MOVWF	FARG_LCD_Out+1
$0554	$30D3			MOVLW	lstr7_main
$0555	$00D2			MOVWF	FARG_LCD_Out+2
$0556	$2166			CALL	_LCD_Out
;main.c,361 :: 		Send_Scan_Fingerprint_Command();
$0557	$238B			CALL	_Send_Scan_Fingerprint_Command
;main.c,362 :: 		LCD_Cmd(LCD_CLEAR);
$0558	$3001			MOVLW	1
$0559	$00D7			MOVWF	FARG_Lcd_Cmd+0
$055A	$201F			CALL	_Lcd_Cmd
;main.c,363 :: 		if (data_frame[3] == 1 ||data_frame[3] == 4)
$055B	$0825			MOVF	_data_frame+3, 0
$055C	$3A01			XORLW	1
$055D	$1903			BTFSC	STATUS, Z
$055E	$2D63			GOTO	L455_ex_L_main_35
$055F	$0825			MOVF	_data_frame+3, 0
$0560	$3A04			XORLW	4
$0561	$1D03			BTFSS	STATUS, Z
$0562	$2D6A			GOTO	L_main_35
$0563	$	L455_ex_L_main_35:
;main.c,365 :: 		Show_Welcome_String();
$0563	$2396			CALL	_Show_Welcome_String
;main.c,366 :: 		Show_EEPROM_Stored_Messages(2,0);
$0564	$3002			MOVLW	2
$0565	$00D0			MOVWF	FARG_Show_EEPROM_Stored_Messages+0
$0566	$01D1			CLRF	FARG_Show_EEPROM_Stored_Messages+1, 1
$0567	$21A9			CALL	_Show_EEPROM_Stored_Messages
;main.c,367 :: 		Boot_Computer();
$0568	$23C1			CALL	_Boot_Computer
;main.c,368 :: 		goto exit
$0569	$2D8F			GOTO	___main_exit
;main.c,369 :: 		}
$056A	$	L_main_35:
;main.c,370 :: 		if (data_frame[3] == 2 || data_frame[3] == 5)
$056A	$0825			MOVF	_data_frame+3, 0
$056B	$3A02			XORLW	2
$056C	$1903			BTFSC	STATUS, Z
$056D	$2D72			GOTO	L473_ex_L_main_38
$056E	$0825			MOVF	_data_frame+3, 0
$056F	$3A05			XORLW	5
$0570	$1D03			BTFSS	STATUS, Z
$0571	$2D7A			GOTO	L_main_38
$0572	$	L473_ex_L_main_38:
;main.c,372 :: 		Show_Welcome_String();
$0572	$2396			CALL	_Show_Welcome_String
;main.c,373 :: 		Show_EEPROM_Stored_Messages(2,0x10);
$0573	$3002			MOVLW	2
$0574	$00D0			MOVWF	FARG_Show_EEPROM_Stored_Messages+0
$0575	$3010			MOVLW	16
$0576	$00D1			MOVWF	FARG_Show_EEPROM_Stored_Messages+1
$0577	$21A9			CALL	_Show_EEPROM_Stored_Messages
;main.c,374 :: 		Boot_Computer();
$0578	$23C1			CALL	_Boot_Computer
;main.c,375 :: 		goto exit
$0579	$2D8F			GOTO	___main_exit
;main.c,376 :: 		}
$057A	$	L_main_38:
;main.c,377 :: 		if (data_frame[3] == 3 ||data_frame[3] == 6)
$057A	$0825			MOVF	_data_frame+3, 0
$057B	$3A03			XORLW	3
$057C	$1903			BTFSC	STATUS, Z
$057D	$2D82			GOTO	L491_ex_L_main_41
$057E	$0825			MOVF	_data_frame+3, 0
$057F	$3A06			XORLW	6
$0580	$1D03			BTFSS	STATUS, Z
$0581	$2D8A			GOTO	L_main_41
$0582	$	L491_ex_L_main_41:
;main.c,379 :: 		Show_Welcome_String();
$0582	$2396			CALL	_Show_Welcome_String
;main.c,380 :: 		Show_EEPROM_Stored_Messages(2,0x20);
$0583	$3002			MOVLW	2
$0584	$00D0			MOVWF	FARG_Show_EEPROM_Stored_Messages+0
$0585	$3020			MOVLW	32
$0586	$00D1			MOVWF	FARG_Show_EEPROM_Stored_Messages+1
$0587	$21A9			CALL	_Show_EEPROM_Stored_Messages
;main.c,381 :: 		Boot_Computer();
$0588	$23C1			CALL	_Boot_Computer
;main.c,382 :: 		goto exit
$0589	$2D8F			GOTO	___main_exit
;main.c,383 :: 		}
$058A	$	L_main_41:
;main.c,384 :: 		Show_EEPROM_Stored_Messages(1,0x30);
$058A	$3001			MOVLW	1
$058B	$00D0			MOVWF	FARG_Show_EEPROM_Stored_Messages+0
$058C	$3030			MOVLW	48
$058D	$00D1			MOVWF	FARG_Show_EEPROM_Stored_Messages+1
$058E	$21A9			CALL	_Show_EEPROM_Stored_Messages
;main.c,385 :: 		exit: Seconds_Delay (3);
$058F	$	___main_exit:
$058F	$3003			MOVLW	3
$0590	$00D0			MOVWF	FARG_Seconds_Delay+0
$0591	$21CA			CALL	_Seconds_Delay
;main.c,386 :: 		LCD_Cmd(LCD_CLEAR);
$0592	$3001			MOVLW	1
$0593	$00D7			MOVWF	FARG_Lcd_Cmd+0
$0594	$201F			CALL	_Lcd_Cmd
;main.c,387 :: 		Clear_Buffer_Registers();
$0595	$2079			CALL	_Clear_Buffer_Registers
;main.c,388 :: 		event = 1;
$0596	$3001			MOVLW	1
$0597	$00AD			MOVWF	_event
;main.c,389 :: 		}
$0598	$	L_main_32:
;main.c,390 :: 		}
$0598	$2CBA			GOTO	L_main_27
$0599	$	L_main_28:
;main.c,391 :: 		}
$0599	$2CB8			GOTO	L_main_25
;main.c,392 :: 		}
$059A	$2D9A			GOTO	$


//** Procedures locations **
//ADDRESS		PROCEDURE
//----------------------------------------------
$0004		Delay_1us
$0007		Delay_5500us
$0018		Delay_50us
$001F		Lcd_Cmd
$005D		Determine_Checksum_of_Data_frame
$0069		Usart_Write
$0079		Clear_Buffer_Registers
$0084		Usart_Read
$008F		Lcd_Chr_CP
$0098		EEprom_read
$00A4		Lcd_Chr
$00DB		Mul_16x16_S
$0125		Construct_Scanner_Command
$012E		Transmit_Command_to_Scanner
$013E		Receive_Response_from_Scanner
$0166		LCD_Out
$01A9		Show_EEPROM_Stored_Messages
$01CA		Seconds_Delay
$01F1		PWM_Stop
$01F9		PWM_Start
$0201		Lcd_Init
$024D		PWM_Change_Duty
$0286		Delete_Specific_User
$0295		Set_Enroll_Sampling_Counts
$02A3		Disable_Scanners_Timeout
$02B1		Adjust_Acceptance_level
$02C0		Show_Splash_message
$0313		Enroll_Users_Fingerprint
$038B		Send_Scan_Fingerprint_Command
$0396		Show_Welcome_String
$03C1		Boot_Computer
$03D4		Usart_Init
$03E4		PWM_Init
$03EA		main


//** Labels locations **
//ADDRESS		LABEL
//----------------------------------------------
$0004		_Delay_1us:
$0007		_Delay_5500us:
$0018		_Delay_50us:
$001F		_Lcd_Cmd:
$0026		L_Lcd_Cmd_0:
$0039		L_Lcd_Cmd_1:
$003A		L_Lcd_Cmd_2:
$003F		L_Lcd_Cmd_3:
$0052		L_Lcd_Cmd_4:
$0053		L_Lcd_Cmd_5:
$005B		L_Lcd_Cmd_6:
$005C		L_Lcd_Cmd_7:
$005D		_Determine_Checksum_of_Data_frame:
$0069		_Usart_Write:
$0069		L_Usart_Write_3:
$0075		L_Usart_Write_4:
$0079		_Clear_Buffer_Registers:
$0084		_Usart_Read:
$008C		L_Usart_Read_2:
$008F		_Lcd_Chr_CP:
$0098		_EEprom_read:
$00A4		_Lcd_Chr:
$00A5		L_Lcd_Chr_10:
$00AA		L_Lcd_Chr_11:
$00AD		L_Lcd_Chr_12:
$00B0		L_Lcd_Chr_13:
$00B3		L_Lcd_Chr_14:
$00B6		L_Lcd_Chr_8:
$00C9		L_Lcd_Chr_9:
$00DB		_Mul_16x16_S:
$0125		_Construct_Scanner_Command:
$012E		_Transmit_Command_to_Scanner:
$0131		L_Transmit_Command_to_Scanner_4:
$013D		L_Transmit_Command_to_Scanner_5:
$013E		_Receive_Response_from_Scanner:
$0140		L_Receive_Response_from_Scanner_6:
$0153		L_Receive_Response_from_Scanner_8:
$0154		L_Receive_Response_from_Scanner_7:
$0155		L_Receive_Response_from_Scanner_9:
$0164		L_Receive_Response_from_Scanner_11:
$0165		L_Receive_Response_from_Scanner_10:
$0166		_LCD_Out:
$0167		L_LCD_Out_19:
$016C		L_LCD_Out_20:
$016F		L_LCD_Out_21:
$0172		L_LCD_Out_22:
$0175		L_LCD_Out_23:
$0178		L_LCD_Out_17:
$018B		L_LCD_Out_18:
$0196		L_LCD_Out_24:
$01A6		L_LCD_Out_25:
$01A9		_Show_EEPROM_Stored_Messages:
$01AF		L_Show_EEPROM_Stored_Messages_0:
$01B5		L_Sh

⌨️ 快捷键说明

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