Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

help how to create a password database in pic16f877a eeprom

Status
Not open for further replies.

juncarl143

Newbie level 5
Joined
Aug 4, 2005
Messages
9
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,361
pic16f877a, eeprom

hello there i just want to seek help how to make a password database to be written in eeprom of pic16f877. in our project we need at least ten members and have a password each. its a 6-digit password and can be modified. pls help im a newbie in pic.

thanks
 

database in eeprom

i did similar kind of thing using c in mikroC and hitech compiler.

u hav to assign a variable like ,
Code:
 char pass[10][6]; // for 10 ppl , 6 digit each
so for this u wud need 60 eeprom blok, once u write data in ur eeprom u can compare like, assuming u r using keypad matrix,

Code:
lcd_out("Input User #");
char kp1 = keypad();
lcd_out("Input Password");
for(i=0;i<=5;i++)
char kp2[i] = keypad();

flag =0 ;

for(i=0;i<=5;i++)
  if( pass[kp1][i]  != kp2[i] ) flag =1 ;

if(flag) lcd_out("Invalid Password") ;
   else lcd_out("password accepted");

regards

PS: the function name mentioned here are not standard and user defined.
 
lcd_out

thanks but i need a asm code for it. im having a hard time tracing in c. im not good with that language.
 

pic 16f877a data base

it is simpler and easier to use high level languages like c/basic/pascal for complex and tedious jobs, because as the task become complex harder it becomes to program in asm, trust me !

still if u need the asm i can giv u a comparison, the code in'c'

Code:
void main(){
char pass[10][6]; // for 10 ppl , 6 digit each
char kp1,kp2[6],i,flag;

lcd_out_cp("Input User #");
kp1 = keypad_read();
lcd_out_cp("Input Password");
for(i=0;i<=5;i++)
kp2[i] = keypad_read();

flag =0 ;

for(i=0;i<=5;i++)
  if( pass[kp1][i]  != kp2[i] ) flag =1 ;

if(flag) lcd_out_cp("Invalid Password") ;
   else lcd_out_cp("password accepted");
}


and the same code in ASM

Code:
;  ASM code generated by mikroVirtualMachine for PIC - V. 3.0.0.0
;  Date/Time: 8/22/2005 12:29:11 AM
;  Info: **broken link removed**


; ADDRESS	OPCODE	ASM
; ----------------------------------------------
$0000	$2914	GOTO	_main
$0004	$	delays_Delay_1us:
$0004	$0000	nop
$0005	$0008	RETURN
$0006	$	delays_Delay_5500us:
$0006	$3008	MOVLW	8
$0007	$1303	BCF	STATUS,RP1
$0008	$1283	BCF	STATUS,RP0
$0009	$00F0	MOVWF	STACK_0
$000A	$30FF	MOVLW	255
$000B	$00F1	MOVWF	STACK_1
$000C	$0BF0	DECFSZ	STACK_0,F
$000D	$280F	GOTO	$+2
$000E	$2812	GOTO	$+4
$000F	$0BF1	DECFSZ	STACK_1,F
$0010	$280F	GOTO	$-1
$0011	$280C	GOTO	$-5
$0012	$301E	MOVLW	30
$0013	$00F2	MOVWF	STACK_2
$0014	$0BF2	DECFSZ	STACK_2,F
$0015	$2814	GOTO	$-1
$0016	$0008	RETURN
$0017	$	delays_Delay_50us:
$0017	$3010	MOVLW	16
$0018	$1303	BCF	STATUS,RP1
$0019	$1283	BCF	STATUS,RP0
$001A	$00F0	MOVWF	STACK_0
$001B	$0BF0	DECFSZ	STACK_0,F
$001C	$281B	GOTO	$-1
$001D	$0000	nop
$001E	$0008	RETURN
$001F	$	_Lcd_Cmd:
$001F	$1303	BCF	STATUS,RP1
$0020	$1283	BCF	STATUS,RP0
$0021	$0820	MOVF 	lcd_port_address,W
$0022	$0084	MOVWF 	FSR
$0023	$1683	BSF	STATUS,RP0
$0024	$0860	MOVF 	Lcd_Cmd_argh0,W
$0025	$00E0	MOVWF 	Lcd_Cmd_argh0
$0026	$0180	CLRF INDF
$0027	$1BE0	BTFSC Lcd_cmd_argh0, 7
$0028	$1780	BSF INDF, ___DB7
$0029	$1B60	BTFSC Lcd_cmd_argh0, 6
$002A	$1700	BSF INDF, ___DB6
$002B	$1AE0	BTFSC Lcd_cmd_argh0, 5
$002C	$1680	BSF INDF, ___DB5
$002D	$1A60	BTFSC Lcd_cmd_argh0, 4
$002E	$1600	BSF INDF, ___DB4
$002F	$01F0	CLRF 	STACK_0
$0030	$1283	BCF	STATUS,RP0
$0031	$0821	MOVF	lcd_cmd_status,W
$0032	$0270	SUBWF	STACK_0,W
$0033	$1903	BTFSC	STATUS,Z
$0034	$2837	GOTO 	L_Lcd_Cmd_0
$0035	$1100	BCF INDF, ___RS
$0036	$2838	GOTO 	L_Lcd_Cmd_1
$0037	$	L_Lcd_Cmd_0:
$0037	$1500	BSF INDF, ___RS
$0038	$	L_Lcd_Cmd_1:
$0038	$1683	BSF	STATUS,RP0
$0039	$0860	MOVF 	Lcd_Cmd_argh0,W
$003A	$00E0	MOVWF 	Lcd_Cmd_argh0
$003B	$1580	BSF INDF, ___ENABLE
$003C	$2004	CALL	delays_Delay_1us
$003D	$1180	BCF INDF, ___ENABLE
$003E	$0180	CLRF INDF
$003F	$19E0	BTFSC Lcd_cmd_argh0, 3
$0040	$1780	BSF INDF, ___DB7
$0041	$1960	BTFSC Lcd_cmd_argh0, 2
$0042	$1700	BSF INDF, ___DB6
$0043	$18E0	BTFSC Lcd_cmd_argh0, 1
$0044	$1680	BSF INDF, ___DB5
$0045	$1860	BTFSC Lcd_cmd_argh0, 0
$0046	$1600	BSF INDF, ___DB4
$0047	$1303	BCF	STATUS,RP1
$0048	$1283	BCF	STATUS,RP0
$0049	$01F0	CLRF 	STACK_0
$004A	$0821	MOVF	lcd_cmd_status,W
$004B	$0270	SUBWF	STACK_0,W
$004C	$1903	BTFSC	STATUS,Z
$004D	$2850	GOTO 	L_Lcd_Cmd_2
$004E	$1100	BCF INDF, ___RS
$004F	$2851	GOTO 	L_Lcd_Cmd_3
$0050	$	L_Lcd_Cmd_2:
$0050	$1500	BSF INDF, ___RS
$0051	$	L_Lcd_Cmd_3:
$0051	$1580	BSF INDF, ___ENABLE
$0052	$2004	CALL	delays_Delay_1us
$0053	$1180	BCF INDF, ___ENABLE
$0054	$1303	BCF	STATUS,RP1
$0055	$1283	BCF	STATUS,RP0
$0056	$01F0	CLRF 	STACK_0
$0057	$0821	MOVF	lcd_cmd_status,W
$0058	$0270	SUBWF	STACK_0,W
$0059	$1903	BTFSC	STATUS,Z
$005A	$285D	GOTO 	L_Lcd_Cmd_4
$005B	$2006	CALL	delays_Delay_5500us
$005C	$285E	GOTO 	L_Lcd_Cmd_5
$005D	$	L_Lcd_Cmd_4:
$005D	$2017	CALL	delays_Delay_50us
$005E	$	L_Lcd_Cmd_5:
$005E	$0008	RETURN
$005F	$	_Lcd_Chr_CP:
$005F	$1303	BCF	STATUS,RP1
$0060	$1283	BCF	STATUS,RP0
$0061	$01A1	CLRF 	lcd_cmd_status
$0062	$1683	BSF	STATUS,RP0
$0063	$085F	MOVF 	Lcd_Chr_CP_argh0,W
$0064	$00E0	MOVWF 	Lcd_Cmd_argh0
$0065	$201F	CALL	_Lcd_Cmd
$0066	$3001	MOVLW	1
$0067	$1303	BCF	STATUS,RP1
$0068	$1283	BCF	STATUS,RP0
$0069	$00A1	MOVWF 	lcd_cmd_status
$006A	$0008	RETURN
$006B	$	_Lcd_Out_CP:
$006B	$1303	BCF	STATUS,RP1
$006C	$1283	BCF	STATUS,RP0
$006D	$01EC	CLRF 	Lcd_Out_CP_i_L0
$006E	$	L_Lcd_Out_CP_13:
$006E	$1303	BCF	STATUS,RP1
$006F	$1283	BCF	STATUS,RP0
$0070	$086C	MOVF	Lcd_Out_CP_i_L0,W
$0071	$076D	ADDWF	Lcd_Out_CP_argh0,W
$0072	$00F0	MOVWF	STACK_0
$0073	$01F1	CLRF 	STACK_1
$0074	$0870	MOVF 	STACK_0,W
$0075	$0084	MOVWF 	FSR
$0076	$0800	MOVF 	INDF,W
$0077	$0271	SUBWF	STACK_1,W
$0078	$1903	BTFSC	STATUS,Z
$0079	$2883	GOTO 	L_Lcd_Out_CP_14
$007A	$086C	MOVF	Lcd_Out_CP_i_L0,W
$007B	$076D	ADDWF	Lcd_Out_CP_argh0,W
$007C	$0084	MOVWF 	FSR
$007D	$0800	MOVF 	INDF,W
$007E	$1683	BSF	STATUS,RP0
$007F	$00DF	MOVWF 	Lcd_Chr_CP_argh0
$0080	$205F	CALL	_Lcd_Chr_CP
$0081	$0AEC	INCF	Lcd_Out_CP_i_L0,F
$0082	$286E	GOTO 	L_Lcd_Out_CP_13
$0083	$	L_Lcd_Out_CP_14:
$0083	$0008	RETURN
$0084	$	_Keypad_Read:
$0084	$30FF	MOVLW	255
$0085	$1303	BCF	STATUS,RP1
$0086	$1283	BCF	STATUS,RP0
$0087	$00EF	MOVWF 	Keypad_Read_r_L0
$0088	$1683	BSF	STATUS,RP0
$0089	$01DE	CLRF 	Keypad_Read_loc_L0
$008A	$3010	MOVLW	16
$008B	$00DC	MOVWF 	Keypad_Read_shifter_L0_1
$008C	$3000	MOVLW	0
$008D	$1BDC	BTFSC 	Keypad_Read_shifter_L0_1,7
$008E	$30FF	MOVLW	255
$008F	$00DD	MOVWF 	Keypad_Read_shifter_L0_2
$0090	$	L_Keypad_Read_0:
$0090	$3080	MOVLW	128
$0091	$1303	BCF	STATUS,RP1
$0092	$1283	BCF	STATUS,RP0
$0093	$00F0	MOVWF 	STACK_0
$0094	$01F1	CLRF	STACK_1
$0095	$1683	BSF	STATUS,RP0
$0096	$085D	MOVF	Keypad_Read_shifter_L0_2,W
$0097	$02F1	SUBWF	STACK_1,F
$0098	$1D03	BTFSS	STATUS,Z
$0099	$289C	GOTO	L_Keypad_Read_2
$009A	$085C	MOVF	Keypad_Read_shifter_L0_1,W
$009B	$0270	SUBWF	STACK_0,W
$009C	$	L_Keypad_Read_2:
$009C	$1C03	BTFSS	STATUS,C
$009D	$2906	GOTO 	L_Keypad_Read_1
$009E	$1303	BCF	STATUS,RP1
$009F	$1283	BCF	STATUS,RP0
$00A0	$0822	MOVF 	_key_pointer,W
$00A1	$0084	MOVWF 	FSR
$00A2	$1683	BSF	STATUS,RP0
$00A3	$085C	MOVF 	Keypad_Read_shifter_L0_1,W
$00A4	$0080	MOVWF 	INDF
$00A5	$0000	NOP
$00A6	$0000	NOP
$00A7	$0000	NOP
$00A8	$0800	MOVF 	INDF,W
$00A9	$1283	BCF	STATUS,RP0
$00AA	$00ED	MOVWF 	Keypad_Read_data_L0_1
$00AB	$01EE	CLRF 	Keypad_Read_data_L0_2
$00AC	$3007	MOVLW	7
$00AD	$056D	ANDWF 	Keypad_Read_data_L0_1,W
$00AE	$00ED	MOVWF	Keypad_Read_data_L0_1
$00AF	$086E	MOVF	Keypad_Read_data_L0_2,W
$00B0	$00EE	MOVWF	Keypad_Read_data_L0_2
$00B1	$3000	MOVLW	0
$00B2	$05EE	ANDWF 	Keypad_Read_data_L0_2,F
$00B3	$3001	MOVLW	1
$00B4	$00F0	MOVWF 	STACK_0
$00B5	$086E	MOVF	Keypad_Read_data_L0_2,W
$00B6	$00F1	MOVWF	STACK_1
$00B7	$3000	MOVLW	0
$00B8	$02F1	SUBWF	STACK_1,F
$00B9	$1D03	BTFSS	STATUS,Z
$00BA	$28BD	GOTO	L_Keypad_Read_3
$00BB	$0870	MOVF	STACK_0,W
$00BC	$026D	SUBWF	Keypad_Read_data_L0_1,W
$00BD	$	L_Keypad_Read_3:
$00BD	$1D03	BTFSS	STATUS,Z
$00BE	$28C6	GOTO 	L_Keypad_Read_4
$00BF	$1303	BCF	STATUS,RP1
$00C0	$1683	BSF	STATUS,RP0
$00C1	$085E	MOVF	Keypad_Read_loc_L0,W
$00C2	$3F01	ADDLW	1
$00C3	$1283	BCF	STATUS,RP0
$00C4	$00EF	MOVWF 	Keypad_Read_r_L0
$00C5	$28EF	GOTO 	L_Keypad_Read_5
$00C6	$	L_Keypad_Read_4:
$00C6	$3002	MOVLW	2
$00C7	$1303	BCF	STATUS,RP1
$00C8	$1283	BCF	STATUS,RP0
$00C9	$00F0	MOVWF 	STACK_0
$00CA	$086E	MOVF	Keypad_Read_data_L0_2,W
$00CB	$00F1	MOVWF	STACK_1
$00CC	$3000	MOVLW	0
$00CD	$02F1	SUBWF	STACK_1,F
$00CE	$1D03	BTFSS	STATUS,Z
$00CF	$28D2	GOTO	L_Keypad_Read_6
$00D0	$0870	MOVF	STACK_0,W
$00D1	$026D	SUBWF	Keypad_Read_data_L0_1,W
$00D2	$	L_Keypad_Read_6:
$00D2	$1D03	BTFSS	STATUS,Z
$00D3	$28DB	GOTO 	L_Keypad_Read_7
$00D4	$1303	BCF	STATUS,RP1
$00D5	$1683	BSF	STATUS,RP0
$00D6	$085E	MOVF	Keypad_Read_loc_L0,W
$00D7	$3F02	ADDLW	2
$00D8	$1283	BCF	STATUS,RP0
$00D9	$00EF	MOVWF 	Keypad_Read_r_L0
$00DA	$28EF	GOTO 	L_Keypad_Read_8
$00DB	$	L_Keypad_Read_7:
$00DB	$3004	MOVLW	4
$00DC	$1303	BCF	STATUS,RP1
$00DD	$1283	BCF	STATUS,RP0
$00DE	$00F0	MOVWF 	STACK_0
$00DF	$086E	MOVF	Keypad_Read_data_L0_2,W
$00E0	$00F1	MOVWF	STACK_1
$00E1	$3000	MOVLW	0
$00E2	$02F1	SUBWF	STACK_1,F
$00E3	$1D03	BTFSS	STATUS,Z
$00E4	$28E7	GOTO	L_Keypad_Read_9
$00E5	$0870	MOVF	STACK_0,W
$00E6	$026D	SUBWF	Keypad_Read_data_L0_1,W
$00E7	$	L_Keypad_Read_9:
$00E7	$1D03	BTFSS	STATUS,Z
$00E8	$28EF	GOTO 	L_Keypad_Read_10
$00E9	$1303	BCF	STATUS,RP1
$00EA	$1683	BSF	STATUS,RP0
$00EB	$085E	MOVF	Keypad_Read_loc_L0,W
$00EC	$3F03	ADDLW	3
$00ED	$1283	BCF	STATUS,RP0
$00EE	$00EF	MOVWF 	Keypad_Read_r_L0
$00EF	$	L_Keypad_Read_10:
$00EF	$	L_Keypad_Read_8:
$00EF	$	L_Keypad_Read_5:
$00EF	$1303	BCF	STATUS,RP1
$00F0	$1683	BSF	STATUS,RP0
$00F1	$085C	MOVF 	Keypad_Read_shifter_L0_1,W
$00F2	$00DC	MOVWF 	Keypad_Read_shifter_L0_1
$00F3	$085D	MOVF 	Keypad_Read_shifter_L0_2,W
$00F4	$00DD	MOVWF 	Keypad_Read_shifter_L0_2
$00F5	$1103	BCF	STATUS,Z
$00F6	$3001	MOVLW	1
$00F7	$	L_Keypad_Read_11:
$00F7	$1903	BTFSC 	STATUS,Z
$00F8	$2900	GOTO 	L_Keypad_Read_12
$00F9	$1303	BCF	STATUS,RP1
$00FA	$1683	BSF	STATUS,RP0
$00FB	$0DDC	RLF 	Keypad_Read_shifter_L0_1,F
$00FC	$0DDD	RLF 	Keypad_Read_shifter_L0_2,F
$00FD	$105C	BCF 	Keypad_Read_shifter_L0_1,0
$00FE	$3FFF	ADDLW 	255
$00FF	$28F7	GOTO 	L_Keypad_Read_11
$0100	$	L_Keypad_Read_12:
$0100	$3003	MOVLW	3
$0101	$1303	BCF	STATUS,RP1
$0102	$1683	BSF	STATUS,RP0
$0103	$075E	ADDWF	Keypad_Read_loc_L0,W
$0104	$00DE	MOVWF 	Keypad_Read_loc_L0
$0105	$2890	GOTO 	L_Keypad_Read_0
$0106	$	L_Keypad_Read_1:
$0106	$30FF	MOVLW	255
$0107	$1303	BCF	STATUS,RP1
$0108	$1283	BCF	STATUS,RP0
$0109	$00F0	MOVWF 	STACK_0
$010A	$0870	MOVF	STACK_0,W
$010B	$026F	SUBWF	Keypad_Read_r_L0,W
$010C	$1D03	BTFSS	STATUS,Z
$010D	$290F	GOTO 	L_Keypad_Read_13
$010E	$01EF	CLRF 	Keypad_Read_r_L0
$010F	$	L_Keypad_Read_13:
$010F	$1303	BCF	STATUS,RP1
$0110	$1283	BCF	STATUS,RP0
$0111	$086F	MOVF 	Keypad_Read_r_L0,W
$0112	$00EC	MOVWF 	_Keypad_Read_local_result
$0113	$0008	RETURN 
$0114	$	_main:
$0114	$3049	MOVLW	73
$0115	$1303	BCF	STATUS,RP1
$0116	$1283	BCF	STATUS,RP0
$0117	$00A3	MOVWF	lstr1__1
$0118	$306E	MOVLW	110
$0119	$00A4	MOVWF	lstr1__2
$011A	$3070	MOVLW	112
$011B	$00A5	MOVWF	lstr1__3
$011C	$3075	MOVLW	117
$011D	$00A6	MOVWF	lstr1__4
$011E	$3074	MOVLW	116
$011F	$00A7	MOVWF	lstr1__5
$0120	$3020	MOVLW	32
$0121	$00A8	MOVWF	lstr1__6
$0122	$3055	MOVLW	85
$0123	$00A9	MOVWF	lstr1__7
$0124	$3073	MOVLW	115
$0125	$00AA	MOVWF	lstr1__8
$0126	$3065	MOVLW	101
$0127	$00AB	MOVWF	lstr1__9
$0128	$3072	MOVLW	114
$0129	$00AC	MOVWF	lstr1__10
$012A	$3020	MOVLW	32
$012B	$00AD	MOVWF	lstr1__11
$012C	$3023	MOVLW	35
$012D	$00AE	MOVWF	lstr1__12
$012E	$01AF	CLRF	lstr1__13
$012F	$3023	MOVLW 	lstr1__1
$0130	$00F1	MOVWF 	STACK_1
$0131	$00ED	MOVWF 	Lcd_Out_CP_argh0
$0132	$206B	CALL	_Lcd_Out_CP
$0133	$2084	CALL	_Keypad_Read
$0134	$086C	MOVF 	_Keypad_Read_local_result,W
$0135	$00E3	MOVWF 	main_kp1_L0
$0136	$3049	MOVLW	73
$0137	$00B0	MOVWF	lstr2__1
$0138	$306E	MOVLW	110
$0139	$00B1	MOVWF	lstr2__2
$013A	$3070	MOVLW	112
$013B	$00B2	MOVWF	lstr2__3
$013C	$3075	MOVLW	117
$013D	$00B3	MOVWF	lstr2__4
$013E	$3074	MOVLW	116
$013F	$00B4	MOVWF	lstr2__5
$0140	$3020	MOVLW	32
$0141	$00B5	MOVWF	lstr2__6
$0142	$3050	MOVLW	80
$0143	$00B6	MOVWF	lstr2__7
$0144	$3061	MOVLW	97
$0145	$00B7	MOVWF	lstr2__8
$0146	$3073	MOVLW	115
$0147	$00B8	MOVWF	lstr2__9
$0148	$3073	MOVLW	115
$0149	$00B9	MOVWF	lstr2__10
$014A	$3077	MOVLW	119
$014B	$00BA	MOVWF	lstr2__11
$014C	$306F	MOVLW	111
$014D	$00BB	MOVWF	lstr2__12
$014E	$3072	MOVLW	114
$014F	$00BC	MOVWF	lstr2__13
$0150	$3064	MOVLW	100
$0151	$00BD	MOVWF	lstr2__14
$0152	$01BE	CLRF	lstr2__15
$0153	$3030	MOVLW 	lstr2__1
$0154	$00F1	MOVWF 	STACK_1
$0155	$00ED	MOVWF 	Lcd_Out_CP_argh0
$0156	$206B	CALL	_Lcd_Out_CP
$0157	$1303	BCF	STATUS,RP1
$0158	$1283	BCF	STATUS,RP0
$0159	$01EA	CLRF 	main_i_L0
$015A	$	L_main_0:
$015A	$3005	MOVLW	5
$015B	$1303	BCF	STATUS,RP1
$015C	$1283	BCF	STATUS,RP0
$015D	$00F0	MOVWF 	STACK_0
$015E	$086A	MOVF	main_i_L0,W
$015F	$0270	SUBWF	STACK_0,W
$0160	$1C03	BTFSS	STATUS,C
$0161	$2971	GOTO 	L_main_1
$0162	$3064	MOVLW 	main_kp2_L0_1
$0163	$00F0	MOVWF 	STACK_0
$0164	$086A	MOVF 	main_i_L0,W
$0165	$07F0	ADDWF 	STACK_0,F
$0166	$0870	MOVF	STACK_0,W
$0167	$00BF	MOVWF	Mirror_main_STACK_0
$0168	$2084	CALL	_Keypad_Read
$0169	$083F	MOVF	Mirror_main_STACK_0,W
$016A	$00F0	MOVWF	STACK_0
$016B	$0870	MOVF 	STACK_0,W
$016C	$0084	MOVWF 	FSR
$016D	$086C	MOVF 	_Keypad_Read_local_result,W
$016E	$0080	MOVWF 	INDF
$016F	$	L_main_2:
$016F	$0AEA	INCF	main_i_L0,F
$0170	$295A	GOTO 	L_main_0
$0171	$	L_main_1:
$0171	$01EB	CLRF 	main_flag_L0
$0172	$01EA	CLRF 	main_i_L0
$0173	$	L_main_3:
$0173	$3005	MOVLW	5
$0174	$00F0	MOVWF 	STACK_0
$0175	$086A	MOVF	main_i_L0,W
$0176	$0270	SUBWF	STACK_0,W
$0177	$1C03	BTFSS	STATUS,C
$0178	$299D	GOTO 	L_main_4
$0179	$30A0	MOVLW 	main_pass_L0_1
$017A	$00F0	MOVWF 	STACK_0
$017B	$0863	MOVF 	main_kp1_L0,W
$017C	$07F0	ADDWF 	STACK_0,F
$017D	$0863	MOVF 	main_kp1_L0,W
$017E	$07F0	ADDWF 	STACK_0,F
$017F	$0863	MOVF 	main_kp1_L0,W
$0180	$07F0	ADDWF 	STACK_0,F
$0181	$0863	MOVF 	main_kp1_L0,W
$0182	$07F0	ADDWF 	STACK_0,F
$0183	$0863	MOVF 	main_kp1_L0,W
$0184	$07F0	ADDWF 	STACK_0,F
$0185	$0863	MOVF 	main_kp1_L0,W
$0186	$07F0	ADDWF 	STACK_0,F
$0187	$086A	MOVF 	main_i_L0,W
$0188	$07F0	ADDWF 	STACK_0,F
$0189	$3064	MOVLW 	main_kp2_L0_1
$018A	$00F1	MOVWF 	STACK_1
$018B	$086A	MOVF 	main_i_L0,W
$018C	$07F1	ADDWF 	STACK_1,F
$018D	$0871	MOVF 	STACK_1,W
$018E	$0084	MOVWF 	FSR
$018F	$0800	MOVF 	INDF,W
$0190	$00F2	MOVWF 	STACK_2
$0191	$0870	MOVF 	STACK_0,W
$0192	$0084	MOVWF 	FSR
$0193	$0800	MOVF 	INDF,W
$0194	$00F3	MOVWF 	STACK_3
$0195	$0872	MOVF	STACK_2,W
$0196	$0273	SUBWF	STACK_3,W
$0197	$1903	BTFSC	STATUS,Z
$0198	$299B	GOTO 	L_main_6
$0199	$3001	MOVLW	1
$019A	$00EB	MOVWF 	main_flag_L0
$019B	$	L_main_6:
$019B	$	L_main_5:
$019B	$0AEA	INCF	main_i_L0,F
$019C	$2973	GOTO 	L_main_3
$019D	$	L_main_4:
$019D	$01F0	CLRF 	STACK_0
$019E	$086B	MOVF	main_flag_L0,W
$019F	$0270	SUBWF	STACK_0,W
$01A0	$1903	BTFSC	STATUS,Z
$01A1	$29C8	GOTO 	L_main_7
$01A2	$3049	MOVLW	73
$01A3	$00C0	MOVWF	lstr3__1
$01A4	$306E	MOVLW	110
$01A5	$00C1	MOVWF	lstr3__2
$01A6	$3076	MOVLW	118
$01A7	$00C2	MOVWF	lstr3__3
$01A8	$3061	MOVLW	97
$01A9	$00C3	MOVWF	lstr3__4
$01AA	$306C	MOVLW	108
$01AB	$00C4	MOVWF	lstr3__5
$01AC	$3069	MOVLW	105
$01AD	$00C5	MOVWF	lstr3__6
$01AE	$3064	MOVLW	100
$01AF	$00C6	MOVWF	lstr3__7
$01B0	$3020	MOVLW	32
$01B1	$00C7	MOVWF	lstr3__8
$01B2	$3050	MOVLW	80
$01B3	$00C8	MOVWF	lstr3__9
$01B4	$3061	MOVLW	97
$01B5	$00C9	MOVWF	lstr3__10
$01B6	$3073	MOVLW	115
$01B7	$00CA	MOVWF	lstr3__11
$01B8	$3073	MOVLW	115
$01B9	$00CB	MOVWF	lstr3__12
$01BA	$3077	MOVLW	119
$01BB	$00CC	MOVWF	lstr3__13
$01BC	$306F	MOVLW	111
$01BD	$00CD	MOVWF	lstr3__14
$01BE	$3072	MOVLW	114
$01BF	$00CE	MOVWF	lstr3__15
$01C0	$3064	MOVLW	100
$01C1	$00CF	MOVWF	lstr3__16
$01C2	$01D0	CLRF	lstr3__17
$01C3	$3040	MOVLW 	lstr3__1
$01C4	$00F1	MOVWF 	STACK_1
$01C5	$00ED	MOVWF 	Lcd_Out_CP_argh0
$01C6	$206B	CALL	_Lcd_Out_CP
$01C7	$29F1	GOTO 	L_main_8
$01C8	$	L_main_7:
$01C8	$3070	MOVLW	112
$01C9	$1303	BCF	STATUS,RP1
$01CA	$1283	BCF	STATUS,RP0
$01CB	$00D1	MOVWF	lstr4__1
$01CC	$3061	MOVLW	97
$01CD	$00D2	MOVWF	lstr4__2
$01CE	$3073	MOVLW	115
$01CF	$00D3	MOVWF	lstr4__3
$01D0	$3073	MOVLW	115
$01D1	$00D4	MOVWF	lstr4__4
$01D2	$3077	MOVLW	119
$01D3	$00D5	MOVWF	lstr4__5
$01D4	$306F	MOVLW	111
$01D5	$00D6	MOVWF	lstr4__6
$01D6	$3072	MOVLW	114
$01D7	$00D7	MOVWF	lstr4__7
$01D8	$3064	MOVLW	100
$01D9	$00D8	MOVWF	lstr4__8
$01DA	$3020	MOVLW	32
$01DB	$00D9	MOVWF	lstr4__9
$01DC	$3061	MOVLW	97
$01DD	$00DA	MOVWF	lstr4__10
$01DE	$3063	MOVLW	99
$01DF	$00DB	MOVWF	lstr4__11
$01E0	$3063	MOVLW	99
$01E1	$00DC	MOVWF	lstr4__12
$01E2	$3065	MOVLW	101
$01E3	$00DD	MOVWF	lstr4__13
$01E4	$3070	MOVLW	112
$01E5	$00DE	MOVWF	lstr4__14
$01E6	$3074	MOVLW	116
$01E7	$00DF	MOVWF	lstr4__15
$01E8	$3065	MOVLW	101
$01E9	$00E0	MOVWF	lstr4__16
$01EA	$3064	MOVLW	100
$01EB	$00E1	MOVWF	lstr4__17
$01EC	$01E2	CLRF	lstr4__18
$01ED	$3051	MOVLW 	lstr4__1
$01EE	$00F1	MOVWF 	STACK_1
$01EF	$00ED	MOVWF 	Lcd_Out_CP_argh0
$01F0	$206B	CALL	_Lcd_Out_CP
$01F1	$	L_main_8:
$01F1	$29F1	GOTO 	$


regards
 

eeprom pic16f877 address

thanks for ur help. regards

Added after 3 minutes:

im stil confused about the variables used. is the eeprom utilized in these code?
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top