Utilizando a Flash como EEPROM no 68HC908JL3 em ASSEMBLY

Software e Hardware para uC da Qualcomm, NXP, FreeScale e Motorola

Moderadores: 51, guest2003

Utilizando a Flash como EEPROM no 68HC908JL3 em ASSEMBLY

Mensagempor moura.everton » 20 Mar 2007 19:50

" Iniciante " Estou tentando a bastante tempo e não obtenho sucesso, estou seguindo as dicas do livro do Fábio Pereira, parece simples, mas não está funcionando, preciso simplesmente gravar um BYTE, alguém tem uma dica aí!!!!!!!!!!!!! Desde já agradeço!!!!!!!!!!!!
moura.everton
 
Mensagens: 2
Registrado em: 07 Fev 2007 10:29

Mensagempor CCandido » 21 Mar 2007 14:56

antiga e tosca mas funciona até hoje.
FLCR EQU $FE08
HVEN EQU 3
MASS EQU 2
ERASE EQU 1
PGM EQU 0
FLBPR EQU $FE09 ;
BRKH EQU $FE0C ;
BRKL EQU $FF7D ;
BRKSCR EQU $FF7E ;
COPCTL EQU $FFFF
RAM EQU $0080
RAMPRG EQU $00A0
ERARNGE EQU $FC06
PRGRNGE EQU $FC09
;******************************
ORG $0080
ORG $0088
CTRLBYT EQU $0088
ORG $0089
CPUSPD EQU $0089
ORG $008A
LADDR rmb 2
ORG $008C
DATA rmb $08 //sao os 8 bytes a ser gravado
ID0 RMB 1 //IDx = temp
ID1 RMB 1
ID2 RMB 1
ID3 RMB 1
ID4 RMB 1
ID5 RMB 1
ID6 RMB 1
ID7 RMB 1
;******************************




//---------------------------------------------------------
carregar:
LDA ID0
LDHX #$00
STA DATA,X
LDA ID1
LDHX #$01
STA DATA,X
LDA ID2
LDHX #$02
STA DATA,X
LDA ID3
LDHX #$03
STA DATA,X
LDA ID4
LDHX #$04
STA DATA,X
LDA ID5
LDHX #$05
STA DATA,X
LDA ID6
LDHX #$06
STA DATA,X
LDA ID7
LDHX #$07
STA DATA,X



SEI ; INTERRUPÇAOES DESABILITDA
BSET TSTOP,TSC ; TIMER PARALIZADO
CLRX
CLRX

;*********************************************************************
; AQ. É EXECUTADO A ROTINA W_FLASH
; ! NAO TEM RETURN !
; A MCU É LEVADA AO RESET PELO CAO DE GUARDA!!!
;*********************************************************************

FLASH_PROG

CLRX
NEXTRAM
LDA ERAPAGE,X
STA RAMPRG,X
INCX
CBEQX #(ENDPRG-ERAPAGE),RUNRAM
BRA NEXTRAM
RUNRAM
JMP RAMPRG
;**************************************
ERAPAGE
LDA #$FF
STA FLBPR
CLR CTRLBYT
MOV #$04,CPUSPD
LDHX #$FB00 ;FBF0
JSR ERARNGE
;*************************************
PRGPAGE
CLR CTRLBYT
MOV #$04,CPUSPD
LDHX #$FB07 ;
STHX LADDR
LDHX #$FB00 ; 8byte de $FB00~$FB07
JSR PRGRNGE
BRA * // colocar retorno aqui.....
ENDPRG
;*************************************
CCandido
Byte
 
Mensagens: 120
Registrado em: 12 Out 2006 12:54
Localização: Londrina-PR

Mensagempor R.B.Sanchez » 17 Ago 2007 14:19

Estou iniciando a utilização da Flash do 68HC908JL3, porém não estou encontrando muita informação, tenho as seguintes rotinas:

*************************************

ERARNGE EQU $FC06
PRGRNGE EQU $FC09

APAGA:

LDHX #LASTROW
CLR CTRLBYT
JSR ERARNGE
RTS

PROGRAMA:

LDHX #LASTROW+$3F
STHX LADDR
LDHX #LASTROW
JSR PRGRNGE
RTS

*************************************

Gostaria de uma opnião sobre estas rotinas e eu não consegui encontrar uma rotina para ler a Flash.


Atenciosamente,
Renato.
R.B.Sanchez
Byte
 
Mensagens: 103
Registrado em: 13 Out 2006 19:14
Localização: Guarulhos / SP


Voltar para NXP (ex-FreeScale (ex-Motorola))

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x