DatasheetQ Logo
Electronic component search and free download site. Transistors,MosFET ,Diode,Integrated circuits

PIC18F258-I/SP 查看數據表(PDF) - Microchip Technology

零件编号
产品描述 (功能)
生产厂家
PIC18F258-I/SP Datasheet PDF : 402 Pages
First Prev 71 72 73 74 75 76 77 78 79 80 Next Last
PIC18FXX8
EXAMPLE 6-3: WRITING TO FLASH PROGRAM MEMORY
MOVLW D'64
MOVWF COUNTER
MOVLW high (BUFFER_ADDR)
MOVWF FSR0H
MOVLW low (BUFFER_ADDR)
MOVWF FSR0L
MOVLW upper (CODE_ADDR)
MOVWF TBLPTRU
MOVLW high (CODE_ADDR)
MOVWF TBLPTRH
MOVLW low (CODE_ADDR)
MOVWF TBLPTRL
READ_BLOCK
TBLRD*+
MOVF TABLAT, W
MOVWF POSTINC0
DECFSZ COUNTER
BRA
READ_BLOCK
MODIFY_WORD
MOVLW DATA_ADDR_HIGH
MOVWF FSR0H
MOVLW DATA_ADDR_LOW
MOVWF FSR0L
MOVLW NEW_DATA_LOW
MOVWF POSTINC0
MOVLW NEW_DATA_HIGH
MOVWF INDF0
ERASE_BLOCK
MOVLW upper (CODE_ADDR)
MOVWF TBLPTRU
MOVLW high (CODE_ADDR)
MOVWF TBLPTRH
MOVLW low (CODE_ADDR)
MOVWF TBLPTRL
BSF
EECON1, EEPGD
BCF
EECON1, CFGS
BSF
EECON1, WREN
BSF
EECON1, FREE
BCF
INTCON, GIE
MOVLW 55h
Required
MOVWF EECON2
Sequence
MOVLW 0AAh
MOVWF EECON2
BSF
EECON1, WR
NOP
BSF
INTCON, GIE
TBLRD*-
WRITE_BUFFER_BACK
MOVLW 8
MOVWF COUNTER_HI
MOVLW high (BUFFER_ADDR)
MOVWF FSR0H
MOVLW low (BUFFER_ADDR)
MOVWF FSR0L
PROGRAM_LOOP
MOVLW 8
MOVWF COUNTER
WRITE_WORD_TO_HREGS
MOVFW POSTINC0, W
MOVWF TABLAT
TBLWT+*
DECFSZ COUNTER
BRA
WRITE_WORD_TO_HREGS
; number of bytes in erase block
; point to buffer
; Load TBLPTR with the base
; address of the memory block
; read into TABLAT, and inc
; get data
; store data
; done?
; repeat
; point to buffer
; update buffer word
; load TBLPTR with the base
; address of the memory block
; point to FLASH program memory
; access FLASH program memory
; enable write to memory
; enable Row Erase operation
; disable interrupts
; write 55H
; write AAH
; start erase (CPU stall)
; re-enable interrupts
; dummy read decrement
; number of write buffer groups of 8 bytes
; point to buffer
; number of bytes in holding register
; get low byte of buffer data
; present data to table latch
; write data, perform a short write
; to internal TBLWT holding register.
; loop until buffers are full
DS41159E-page 72
© 2006 Microchip Technology Inc.

Share Link: 

datasheetq.com  [ Privacy Policy ]Request Datasheet ] [ Contact Us ]