PIC16F87XA
3.5
读FLASH程序存储器
要读取程序存储单元,用户必须写入
两个字节的地址到EEADR和EEADRH
寄存器,将EEPGD控制位( EECON1<7> )
然后将控制位RD ( EECON1<0> ) 。一旦
读控制位,闪存程序存储器CON-
控制器将利用接下来的两个指令周期读取
数据。这将导致这两个立即指令
继“ BSF
EECON1,RD”
指令是
忽略不计。该数据是在紧接着的下一个周期,在
在EEDATA和EEDATH寄存器;因此,它可以是
读取,如以下说明的两个字节。 EEDATA
和EEDATH寄存器将把此值,直到另一个
读或直至它是由用户写入(写入期间
操作)。
例3-3:
BSF
BCF
MOVLW
MOVWF
MOVLW
MOVWF
BSF
BSF
BSF
需要
顺序
读闪存程序存储器
STATUS , RP1
STATUS , RP0
MS_PROG_EE_ADDR
EEADRH
LS_PROG_EE_ADDR
EEADR
STATUS , RP0
EECON1 , EEPGD
EECON1 , RD
;
;
;
;
;
;
;
;
;
2银行
的程序地址MS字节读
的程序地址LS字节读
3银行
指向程序存储器
EE阅读
;
NOP
NOP
;
BCF
MOVF
MOVWF
MOVF
MOVWF
STATUS , RP0
EEDATA ,W
数据1
EEDATH ,W
Datah
;
;计划EEDATA的W = LS字节
;
;计划EEDATA的W = MS字节
;
;在这里的任何指令都将被忽略的程序
;内存读取第二个周期BSF EECON1 , RD后
DS39582A第34页
超前信息
2001年Microchip的科技公司