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

📄 main.lst

📁 An applicaion that utilize a fingerprint scanner to turn off the PC
💻 LST
📖 第 1 页 / 共 5 页
字号:
$0390	$01A5			CLRF	_data_frame+3, 1
;main.c,261 :: 		data_frame[4] = 0;  //write data
$0391	$01A6			CLRF	_data_frame+4, 1
;main.c,262 :: 		Construct_Scanner_Command();
$0392	$2125			CALL	_Construct_Scanner_Command
;main.c,263 :: 		Transmit_Command_to_Scanner();
$0393	$212E			CALL	_Transmit_Command_to_Scanner
;main.c,264 :: 		Receive_Response_from_Scanner();
$0394	$213E			CALL	_Receive_Response_from_Scanner
;main.c,265 :: 		}
$0395	$0008			RETURN
$0396	$	_Show_Welcome_String:
$0396	$3020			MOVLW	32
$0397	$1303			BCF	STATUS, RP1
$0398	$1283			BCF	STATUS, RP0
$0399	$00AE			MOVWF	lstr3_main+0
$039A	$3020			MOVLW	32
$039B	$00AF			MOVWF	lstr3_main+1
$039C	$3020			MOVLW	32
$039D	$00B0			MOVWF	lstr3_main+2
$039E	$3020			MOVLW	32
$039F	$00B1			MOVWF	lstr3_main+3
$03A0	$3057			MOVLW	87
$03A1	$00B2			MOVWF	lstr3_main+4
$03A2	$3045			MOVLW	69
$03A3	$00B3			MOVWF	lstr3_main+5
$03A4	$304C			MOVLW	76
$03A5	$00B4			MOVWF	lstr3_main+6
$03A6	$3043			MOVLW	67
$03A7	$00B5			MOVWF	lstr3_main+7
$03A8	$304F			MOVLW	79
$03A9	$00B6			MOVWF	lstr3_main+8
$03AA	$304D			MOVLW	77
$03AB	$00B7			MOVWF	lstr3_main+9
$03AC	$3045			MOVLW	69
$03AD	$00B8			MOVWF	lstr3_main+10
$03AE	$3021			MOVLW	33
$03AF	$00B9			MOVWF	lstr3_main+11
$03B0	$3020			MOVLW	32
$03B1	$00BA			MOVWF	lstr3_main+12
$03B2	$3020			MOVLW	32
$03B3	$00BB			MOVWF	lstr3_main+13
$03B4	$3020			MOVLW	32
$03B5	$00BC			MOVWF	lstr3_main+14
$03B6	$3020			MOVLW	32
$03B7	$00BD			MOVWF	lstr3_main+15
$03B8	$01BE			CLRF	lstr3_main+16
;main.c,21 :: 		void Show_Welcome_String()
;main.c,23 :: 		LCD_Out(1,1,"    WELCOME!    ");
$03B9	$3001			MOVLW	1
$03BA	$00D0			MOVWF	FARG_LCD_Out+0
$03BB	$3001			MOVLW	1
$03BC	$00D1			MOVWF	FARG_LCD_Out+1
$03BD	$302E			MOVLW	lstr3_main
$03BE	$00D2			MOVWF	FARG_LCD_Out+2
$03BF	$2166			CALL	_LCD_Out
;main.c,24 :: 		}
$03C0	$0008			RETURN
$03C1	$	_Boot_Computer:
;main.c,92 :: 		void Boot_Computer()
;main.c,94 :: 		pc_supply_control = on;
$03C1	$1303			BCF	STATUS, RP1
$03C2	$1283			BCF	STATUS, RP0
$03C3	$1587			BSF	PORTC, 3
;main.c,95 :: 		while (!pc_power_source)
$03C4	$	L_Boot_Computer_12:
$03C4	$1805			BTFSC	PORTA, 0
$03C5	$2BC8			GOTO	L_Boot_Computer_13
;main.c,97 :: 		asm nop;
$03C6	$0000			NOP
;main.c,98 :: 		}
$03C7	$2BC4			GOTO	L_Boot_Computer_12
$03C8	$	L_Boot_Computer_13:
;main.c,99 :: 		LCD_Cmd(LCD_CLEAR);
$03C8	$3001			MOVLW	1
$03C9	$00D7			MOVWF	FARG_Lcd_Cmd+0
$03CA	$201F			CALL	_Lcd_Cmd
;main.c,100 :: 		pc_supply_control = off;
$03CB	$1187			BCF	PORTC, 3
;main.c,101 :: 		PWM_Stop();
$03CC	$21F1			CALL	_PWM_Stop
;main.c,102 :: 		while (pc_power_source)
$03CD	$	L_Boot_Computer_14:
$03CD	$1C05			BTFSS	PORTA, 0
$03CE	$2BD1			GOTO	L_Boot_Computer_15
;main.c,104 :: 		asm nop;
$03CF	$0000			NOP
;main.c,105 :: 		}
$03D0	$2BCD			GOTO	L_Boot_Computer_14
$03D1	$	L_Boot_Computer_15:
;main.c,106 :: 		clear_buffer_registers();
$03D1	$2079			CALL	_Clear_Buffer_Registers
;main.c,107 :: 		PWM_Start();
$03D2	$21F9			CALL	_PWM_Start
;main.c,108 :: 		}
$03D3	$0008			RETURN
$03D4	$	_Usart_Init:
$03D4	$1303			BCF	STATUS, RP1
$03D5	$1683			BSF	STATUS, RP0
$03D6	$1698			BSF	TXSTA, 5
$03D7	$3090			MOVLW	144
$03D8	$1283			BCF	STATUS, RP0
$03D9	$0098			MOVWF	RCSTA
$03DA	$1683			BSF	STATUS, RP0
$03DB	$1787			BSF	TRISC, 7
$03DC	$1307			BCF	TRISC, 6
$03DD	$	L_Usart_Init_0:
$03DD	$1283			BCF	STATUS, RP0
$03DE	$1E8C			BTFSS	PIR1, 5
$03DF	$2BE3			GOTO	L_Usart_Init_1
$03E0	$081A			MOVF	RCREG, 0
$03E1	$00B2			MOVWF	Usart_Init_tmp_L0
$03E2	$2BDD			GOTO	L_Usart_Init_0
$03E3	$	L_Usart_Init_1:
$03E3	$0008			RETURN
$03E4	$	_PWM_Init:
$03E4	$1303			BCF	STATUS, RP1
$03E5	$1283			BCF	STATUS, RP0
$03E6	$0195			CLRF	CCPR1L, 1
$03E7	$1217			BCF	CCP1CON, 4
$03E8	$1297			BCF	CCP1CON, 5
$03E9	$0008			RETURN
$03EA	$	_main:
$03EA	$3020			MOVLW	32
$03EB	$1303			BCF	STATUS, RP1
$03EC	$1683			BSF	STATUS, RP0
$03ED	$00A0			MOVWF	lstr4_main+0
$03EE	$3020			MOVLW	32
$03EF	$00A1			MOVWF	lstr4_main+1
$03F0	$3049			MOVLW	73
$03F1	$00A2			MOVWF	lstr4_main+2
$03F2	$304E			MOVLW	78
$03F3	$00A3			MOVWF	lstr4_main+3
$03F4	$3049			MOVLW	73
$03F5	$00A4			MOVWF	lstr4_main+4
$03F6	$3054			MOVLW	84
$03F7	$00A5			MOVWF	lstr4_main+5
$03F8	$3049			MOVLW	73
$03F9	$00A6			MOVWF	lstr4_main+6
$03FA	$3041			MOVLW	65
$03FB	$00A7			MOVWF	lstr4_main+7
$03FC	$304C			MOVLW	76
$03FD	$00A8			MOVWF	lstr4_main+8
$03FE	$3049			MOVLW	73
$03FF	$00A9			MOVWF	lstr4_main+9
$0400	$305A			MOVLW	90
$0401	$00AA			MOVWF	lstr4_main+10
$0402	$3049			MOVLW	73
$0403	$00AB			MOVWF	lstr4_main+11
$0404	$304E			MOVLW	78
$0405	$00AC			MOVWF	lstr4_main+12
$0406	$3047			MOVLW	71
$0407	$00AD			MOVWF	lstr4_main+13
$0408	$3020			MOVLW	32
$0409	$00AE			MOVWF	lstr4_main+14
$040A	$3020			MOVLW	32
$040B	$00AF			MOVWF	lstr4_main+15
$040C	$01B0			CLRF	lstr4_main+16
$040D	$3020			MOVLW	32
$040E	$00B1			MOVWF	lstr5_main+0
$040F	$3020			MOVLW	32
$0410	$00B2			MOVWF	lstr5_main+1
$0411	$3050			MOVLW	80
$0412	$00B3			MOVWF	lstr5_main+2
$0413	$304C			MOVLW	76
$0414	$00B4			MOVWF	lstr5_main+3
$0415	$3045			MOVLW	69
$0416	$00B5			MOVWF	lstr5_main+4
$0417	$3041			MOVLW	65
$0418	$00B6			MOVWF	lstr5_main+5
$0419	$3053			MOVLW	83
$041A	$00B7			MOVWF	lstr5_main+6
$041B	$3045			MOVLW	69
$041C	$00B8			MOVWF	lstr5_main+7
$041D	$3020			MOVLW	32
$041E	$00B9			MOVWF	lstr5_main+8
$041F	$3020			MOVLW	32
$0420	$00BA			MOVWF	lstr5_main+9
$0421	$3057			MOVLW	87
$0422	$00BB			MOVWF	lstr5_main+10
$0423	$3041			MOVLW	65
$0424	$00BC			MOVWF	lstr5_main+11
$0425	$3049			MOVLW	73
$0426	$00BD			MOVWF	lstr5_main+12
$0427	$3054			MOVLW	84
$0428	$00BE			MOVWF	lstr5_main+13
$0429	$3020			MOVLW	32
$042A	$00BF			MOVWF	lstr5_main+14
$042B	$3020			MOVLW	32
$042C	$00C0			MOVWF	lstr5_main+15
$042D	$01C1			CLRF	lstr5_main+16
$042E	$3020			MOVLW	32
$042F	$00C2			MOVWF	lstr6_main+0
$0430	$3020			MOVLW	32
$0431	$00C3			MOVWF	lstr6_main+1
$0432	$3050			MOVLW	80
$0433	$00C4			MOVWF	lstr6_main+2
$0434	$304C			MOVLW	76
$0435	$00C5			MOVWF	lstr6_main+3
$0436	$3041			MOVLW	65
$0437	$00C6			MOVWF	lstr6_main+4
$0438	$3043			MOVLW	67
$0439	$00C7			MOVWF	lstr6_main+5
$043A	$3045			MOVLW	69
$043B	$00C8			MOVWF	lstr6_main+6
$043C	$3020			MOVLW	32
$043D	$00C9			MOVWF	lstr6_main+7
$043E	$3046			MOVLW	70
$043F	$00CA			MOVWF	lstr6_main+8
$0440	$3049			MOVLW	73
$0441	$00CB			MOVWF	lstr6_main+9
$0442	$304E			MOVLW	78
$0443	$00CC			MOVWF	lstr6_main+10
$0444	$3047			MOVLW	71
$0445	$00CD			MOVWF	lstr6_main+11
$0446	$3045			MOVLW	69
$0447	$00CE			MOVWF	lstr6_main+12
$0448	$3052			MOVLW	82
$0449	$00CF			MOVWF	lstr6_main+13
$044A	$3020			MOVLW	32
$044B	$00D0			MOVWF	lstr6_main+14
$044C	$3020			MOVLW	32
$044D	$00D1			MOVWF	lstr6_main+15
$044E	$01D2			CLRF	lstr6_main+16
$044F	$3020			MOVLW	32
$0450	$00D3			MOVWF	lstr7_main+0
$0451	$304F			MOVLW	79
$0452	$00D4			MOVWF	lstr7_main+1
$0453	$304E			MOVLW	78
$0454	$00D5			MOVWF	lstr7_main+2
$0455	$3020			MOVLW	32
$0456	$00D6			MOVWF	lstr7_main+3
$0457	$3054			MOVLW	84
$0458	$00D7			MOVWF	lstr7_main+4
$0459	$3048			MOVLW	72
$045A	$00D8			MOVWF	lstr7_main+5
$045B	$3045			MOVLW	69
$045C	$00D9			MOVWF	lstr7_main+6
$045D	$3020			MOVLW	32
$045E	$00DA			MOVWF	lstr7_main+7
$045F	$3053			MOVLW	83
$0460	$00DB			MOVWF	lstr7_main+8
$0461	$3043			MOVLW	67
$0462	$00DC			MOVWF	lstr7_main+9
$0463	$3041			MOVLW	65
$0464	$00DD			MOVWF	lstr7_main+10
$0465	$304E			MOVLW	78
$0466	$00DE			MOVWF	lstr7_main+11
$0467	$304E			MOVLW	78
$0468	$00DF			MOVWF	lstr7_main+12
$0469	$3045			MOVLW	69
$046A	$00E0			MOVWF	lstr7_main+13
$046B	$3052			MOVLW	82
$046C	$00E1			MOVWF	lstr7_main+14
$046D	$3020			MOVLW	32
$046E	$00E2			MOVWF	lstr7_main+15
$046F	$01E3			CLRF	lstr7_main+16
;main.c,269 :: 		void main ()
;main.c,271 :: 		ADCON1 = 0x06;
$0470	$3006			MOVLW	6
$0471	$009F			MOVWF	ADCON1
;main.c,272 :: 		TRISA = 0x01;
$0472	$3001			MOVLW	1
$0473	$0085			MOVWF	TRISA
;main.c,273 :: 		TRISB = 0;
$0474	$0186			CLRF	TRISB, 1
;main.c,274 :: 		TRISC = 0x30;
$0475	$3030			MOVLW	48
$0476	$0087			MOVWF	TRISC
;main.c,275 :: 		TRISD = 0x04;
$0477	$3004			MOVLW	4
$0478	$0088			MOVWF	TRISD
;main.c,276 :: 		TRISE = 0;
$0479	$0189			CLRF	TRISE, 1
;main.c,277 :: 		PORTA = 0;
$047A	$1283			BCF	STATUS, RP0
$047B	$0185			CLRF	PORTA, 1
;main.c,278 :: 		PORTB = 0;
$047C	$0186			CLRF	PORTB, 1
;main.c,279 :: 		PORTC = 0;
$047D	$0187			CLRF	PORTC, 1
;main.c,280 :: 		PORTD = 0;
$047E	$0188			CLRF	PORTD, 1
;main.c,281 :: 		PORTE = 0;
$047F	$0189			CLRF	PORTE, 1
;main.c,282 :: 		Seconds_Delay(2);
$0480	$3002			MOVLW	2
$0481	$00D0			MOVWF	FARG_Seconds_Delay+0
$0482	$21CA			CALL	_Seconds_Delay
;main.c,283 :: 		user_number = 0;
$0483	$01AC			CLRF	_user_number, 1
;main.c,284 :: 		Usart_Init(19200);
$0484	$3019			MOVLW	25
$0485	$1683			BSF	STATUS, RP0
$0486	$0099			MOVWF	SPBRG
$0487	$1518			BSF	TXSTA, BRGH
$0488	$23D4			CALL	_Usart_Init
;main.c,285 :: 		PIE1.RCIE = 1;
$0489	$1683			BSF	STATUS, RP0
$048A	$168C			BSF	PIE1, 5
;main.c,286 :: 		LCD_Init (&PORTB);
$048B	$3006			MOVLW	PORTB
$048C	$1283			BCF	STATUS, RP0
$048D	$00AE			MOVWF	FARG_Lcd_Init+0
$048E	$2201			CALL	_Lcd_Init
;main.c,287 :: 		LCD_Cmd(LCD_CURSOR_OFF);
$048F	$300C			MOVLW	12
$0490	$00D7			MOVWF	FARG_Lcd_Cmd+0
$0491	$201F			CALL	_Lcd_Cmd
;main.c,288 :: 		LCD_Cmd(LCD_CLEAR);
$0492	$3001			MOVLW	1
$0493	$00D7			MOVWF	FARG_Lcd_Cmd+0
$0494	$201F			CALL	_Lcd_Cmd
;main.c,289 :: 		LCD_Out(1,1,"  INITIALIZING  ");
$0495	$3001			MOVLW	1
$0496	$00D0			MOVWF	FARG_LCD_Out+0
$0497	$3001			MOVLW	1
$0498	$00D1			MOVWF	FARG_LCD_Out+1
$0499	$30A0			MOVLW	lstr4_main
$049A	$00D2			MOVWF	FARG_LCD_Out+2
$049B	$2166			CALL	_LCD_Out
;main.c,290 :: 		LCD_Out(2,1,"  PLEASE  WAIT  ");
$049C	$3002			MOVLW	2
$049D	$00D0			MOVWF	FARG_LCD_Out+0
$049E	$3001			MOVLW	1
$049F	$00D1			MOVWF	FARG_LCD_Out+1
$04A0	$30B1			MOVLW	lstr5_main
$04A1	$00D2			MOVWF	FARG_LCD_Out+2
$04A2	$2166			CALL	_LCD_Out
;main.c,291 :: 		PWM_Init (1000);
$04A3	$1412			BSF	T2CON, T2CKPS0
$04A4	$1492			BSF	T2CON, T2CKPS1
$04A5	$307C			MOVLW	124
$04A6	$1683			BSF	STATUS, RP0
$04A7	$0092			MOVWF	PR2
$04A8	$23E4			CALL	_PWM_Init
;main.c,292 :: 		Pwm_Change_Duty(50);
$04A9	$3032			MOVLW	50
$04AA	$00AE			MOVWF	FARG_PWM_Change_Duty+0
$04AB	$224D			CALL	_PWM_Change_Duty
;main.c,293 :: 		PWM_Start();
$04AC	$21F9			CALL	_PWM_Start
;main.c,294 :: 		Seconds_Delay(4);
$04AD	$3004			MOVLW	4
$04AE	$00D0			MOVWF	FARG_Seconds_Delay+0
$04AF	$21CA			CALL	_Seconds_Delay
;main.c,295 :: 		Delete_Specific_User(0);
$04B0	$01AE			CLRF	FARG_Delete_Specific_User+0, 1
$04B1	$2286			CALL	_Delete_Specific_User
;main.c,296 :: 		Set_Enroll_Sampling_Counts();
$04B2	$2295			CALL	_Set_Enroll_Sampling_Counts
;main.c,297 :: 		Disable_Scanners_Timeout();
$04B3	$22A3			CALL	_Disable_Scanners_Timeout
;main.c,298 :: 		Adjust_Acceptance_level();
$04B4	$22B1			CALL	_Adjust_Acceptance_level
;main.c,299 :: 		LCD_Cmd(LCD_CLEAR);
$04B5	$3001			MOVLW	1
$04B6	$00D7			MOVWF	FARG_Lcd_Cmd+0
$04B7	$201F			CALL	_Lcd_Cmd
;main.c,300 :: 		while (1)
$04B8	$	L_main_25:
;main.c,302 :: 		event = 0;
$04B8	$01AD			CLRF	_event, 1
;main.c,303 :: 		pc_supply_control = off;
$04B9	$1187			BCF	PORTC, 3
;main.c,304 :: 		while (!event)
$04BA	$	L_main_27:
$04BA	$082D			MOVF	_event, 0
$04BB	$1D03			BTFSS	STATUS, Z
$04BC	$2D99			GOTO	L_main_28
;main.c,306 :: 		if (PORTD.F3)
$04BD	$1D88			BTFSS	PORTD, 3
$04BE	$2CE6			GOTO	L_main_29
;main.c,308 :: 		LCD_Cmd(LCD_CLEAR);
$04BF	$3001			MOVLW	1
$04C0	$00D7			MOVWF	FARG_Lcd_Cmd+0
$04C1	$201F			CALL	_Lcd_Cmd
;main.c,309 :: 		Show_Splash_message();
$04C2	$22C0			CALL	_Show_Splash_message
;main.c,310 :: 		seconds_delay(1);
$04C3	$3001			MOVLW	1
$04C4	$00D0			MOVWF	FARG_Seconds_Delay+0
$04C5	$21CA			CALL	_Seconds_Delay
;main.c,311 :: 		Delete_Specific_User(1);
$04C6	$3001			MOVLW	1
$04C7	$00AE			MOVWF	FARG_Delete_Specific_User+0
$04C8	$2286			CALL	_Delete_Specific_User
;main.c,312 :: 		Delete_Specific_User(4);
$04C9	$3004			MOVLW	4
$04CA	$00AE			MOVWF	FARG_Delete_Specific_User+0
$04CB	$2286			CALL	_Delete_Specific_User
;main.c,313 :: 		user_number = 1; //user1 right finger print location

⌨️ 快捷键说明

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