Дебаг, PIC-кодинг
WR бит не ставится после 0x55 и 0xAA write'a
=====================================================================================
LIST p=16F88
include "P16F88.inc"
__CONFIG _CONFIG1, _WDT_OFF & _INTRC_IO & _MCLR_ON & _LVP_OFF
errorlevel -302
Cblock 0x79
OLD,NEW
endc
banksel TRISA ;bank 1
movlw 0x45 ;1MHz clock
movwf OSCCON
goto start
read
banksel EEADR
movlw NEW
movwf EEADR
banksel EECON1 ; bank1
bsf EECON1, 0 ; read
banksel EEDATA
movf EEDATA, w ; w = val from adr 2h
return
write
movlw NEW
movwf EEADR ; EEADR = 2h
movfw NEW
banksel EEDATA
movwf EEDATA
bsf STATUS, 5
bsf STATUS,7
bsf EECON1, 2 ; enable write
movlw 55h
movwf EECON2
movlw 0AAh
movwf EECON2
bsf EECON1, 1 ; write NEW DATA
bsf INTCON, 7 ; int on
bcf EECON1, WREN
bcf STATUS,7
return
start
call read
banksel OLD
movwf OLD
incf OLD,f
movfw OLD
movwf NEW
call write
goto start
end
=====================================================================================
надо бы побыстрее, плачу PayPal
софтина