📄 eeprom.lst
字号:
MPASM 5.06.4 EEPROM.ASM 7-27-2007 17:03:32 PAGE 1
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00001 #INCLUDE <P16F877A.INC>
00001 LIST
00002 ; P16F877A.INC Standard Header File, Version 1.00 Microchip Technology, Inc.
00400 LIST
00002
00000020 00003 ROMADD EQU 0X20;
00004
00000021 00005 W_DATA EQU 0X21;
00000022 00006 R_DATA EQU 0X22;
00007
00008 #DEFINE BVAL 0X41; FIREST,PUT VAL TO W_DATA,WRITE TO EEPROM,THEN READ BACK TO R_DATA;
00009
00010 ;B口必须全部接LED
00011
Warning[205]: Found directive in column 1. (ORG)
0000 00012 ORG 0X0
0000 0000 00013 NOP
0001 0000 00014 NOP
0002 1283 00015 BCF STATUS,RP0
0003 1303 00016 BCF STATUS,RP1;
00017
0004 018B 00018 CLRF INTCON;
0005 0190 00019 CLRF T1CON;
00020
0006 3010 00021 MOVLW 0X10
0007 00A0 00022 MOVWF ROMADD;
0008 3041 00023 MOVLW BVAL;
0009 00A1 00024 MOVWF W_DATA;
00025
000A 200F 00026 CALL W_EEPROM;
000B 2026 00027 CALL R_EEPROM;
000C 0822 00028 MOVF R_DATA,W;
000D 0221 00029 SUBWF W_DATA,W;
00030
000E 280E 00031 GOTO $;;
00032
Warning[207]: Found label after column 1. (W_EEPROM)
000F 00033 W_EEPROM;入口参数:ROMADD,W_DATA 出口参数:无;写一个字节
000F 1303 00034 BCF STATUS,RP1;
0010 1283 00035 BCF STATUS,RP0; ;Select bank 0
0011 0820 00036 MOVF ROMADD,W ;
0012 1703 00037 BSF STATUS,RP1; Select bank 2
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
0013 008D 00038 MOVWF EEADR ; Load EEPROM word address
0014 1303 00039 BCF STATUS,RP1; Select bank 0
0015 0821 00040 MOVF W_DATA,W
0016 1703 00041 BSF STATUS,RP1; Select bank 2
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
0017 008C 00042 MOVWF EEDATA ; Load data
00043
0018 1683 00044 BSF STATUS,RP0 ; Select bank 3
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
0019 018C 00045 CLRF EECON1
MPASM 5.06.4 EEPROM.ASM 7-27-2007 17:03:32 PAGE 2
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
001A 150C 00046 BSF EECON1,WREN ; Enable write operation
001B 3055 00047 MOVLW 055H
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
001C 008D 00048 MOVWF EECON2 ; Sent 055h
001D 30AA 00049 MOVLW 0AAH
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
001E 008D 00050 MOVWF EECON2 ; Send 0AAh
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
001F 148C 00051 BSF EECON1,WR ; Intiates a write cycle
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
0020 188C 00052 BTFSC EECON1,WR
0021 2820 00053 GOTO $-1
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
0022 120C 00054 BCF EECON1,EEIF ; Clear EEIF
0023 1303 00055 BCF STATUS,RP1 ; Select bank 0
0024 1283 00056 BCF STATUS,RP0
0025 0008 00057 RETURN
00058
Warning[207]: Found label after column 1. (R_EEPROM)
0026 00059 R_EEPROM;入口参数,ROMADD,出口参数R_DATA
0026 1303 00060 BCF STATUS,RP1;
0027 1283 00061 BCF STATUS,RP0 ; Select bank 0
0028 0820 00062 MOVF ROMADD,W;
0029 1703 00063 BSF STATUS,RP1; ; Select bank 2
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
002A 008D 00064 MOVWF EEADR ; Load EEPROM word address
00065
002B 1683 00066 BSF STATUS,RP0 ; Select bank 3
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
002C 108C 00067 BCF EECON1,WR ; Clear
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
002D 140C 00068 BSF EECON1,RD ; Initiates a read cycle
00069
002E 1283 00070 BCF STATUS,RP0 ; Select bank 2
Message[302]: Register in operand not in bank 0. Ensure that bank bits are correct.
002F 080C 00071 MOVF EEDATA,W ; Get a data to W
0030 1303 00072 BCF STATUS,RP1; Select bank 0
0031 00A2 00073 MOVWF R_DATA;
0032 0008 00074 RETURN
Warning[205]: Found directive in column 1. (END)
00075 END
MPASM 5.06.4 EEPROM.ASM 7-27-2007 17:03:32 PAGE 3
SYMBOL TABLE
LABEL VALUE
ACKDT 00000005
ACKEN 00000004
ACKSTAT 00000006
ADCON0 0000001F
ADCON1 0000009F
ADCS0 00000006
ADCS1 00000007
ADCS2 00000006
ADDEN 00000003
ADFM 00000007
ADIE 00000006
ADIF 00000006
ADON 00000000
ADRESH 0000001E
ADRESL 0000009E
BCLIE 00000003
BCLIF 00000003
BF 00000000
BRGH 00000002
BVAL 0X41
C 00000000
C1INV 00000004
C1OUT 00000006
C2INV 00000005
C2OUT 00000007
CCP1CON 00000017
CCP1IE 00000002
CCP1IF 00000002
CCP1M0 00000000
CCP1M1 00000001
CCP1M2 00000002
CCP1M3 00000003
CCP1X 00000005
CCP1Y 00000004
CCP2CON 0000001D
CCP2IE 00000000
CCP2IF 00000000
CCP2M0 00000000
CCP2M1 00000001
CCP2M2 00000002
CCP2M3 00000003
CCP2X 00000005
CCP2Y 00000004
CCPR1H 00000016
CCPR1L 00000015
CCPR2H 0000001C
CCPR2L 0000001B
CHS0 00000003
CHS1 00000004
CHS2 00000005
CIS 00000003
CKE 00000006
CKP 00000004
MPASM 5.06.4 EEPROM.ASM 7-27-2007 17:03:32 PAGE 4
SYMBOL TABLE
LABEL VALUE
CM0 00000000
CM1 00000001
CM2 00000002
CMCON 0000009C
CMIE 00000006
CMIF 00000006
CREN 00000004
CSRC 00000007
CVR0 00000000
CVR1 00000001
CVR2 00000002
CVR3 00000003
CVRCON 0000009D
CVREN 00000007
CVROE 00000006
CVRR 00000005
D 00000005
DATA_ADDRESS 00000005
DC 00000001
D_A 00000005
EEADR 0000010D
EEADRH 0000010F
EECON1 0000018C
EECON2 0000018D
EEDATA 0000010C
EEDATH 0000010E
EEIE 00000004
EEIF 00000004
EEPGD 00000007
F 00000001
FERR 00000002
FSR 00000004
GCEN 00000007
GIE 00000007
GO 00000002
GO_DONE 00000002
I2C_DATA 00000005
I2C_READ 00000002
I2C_START 00000003
I2C_STOP 00000004
IBF 00000007
IBOV 00000005
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -