Página 1 de 1

Pic 24f flash read/write

MensagemEnviado: 18 Jun 2014 16:44
por Eduardo Augusto
Boa tarde galera do fórum!!!
Meu projeto esbarra em uma inviabilidade de hardware do microcontrolador, necessito gravar dados de configuração e calibração em uma memoria que não seja volátil, no caso a eeprom do microncontrolador... no entanto o microcontrolador que utilizo não tem eeprom interna e a solução que a microchip apresenta é salvar os dados na flash de programa.

Desenvolvi algumas rotinas, pensando que já tinha solucionado esse problema, mas agora que estou realmente necessitando salvar dados e não estou obtendo sucesso....

Descobri um material de apoio o AN1095

https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en530593

Estou destrinchando os alguns arquivos que baixei nesse link, mas não estou obtendo sucesso...

Ainda estou muito confuso a respeito disso. Assunto novo e parece ser bem chatinho.... Se alguém souber me ajudar, agradeço!!

Re: Pic 24f flash read/write

MensagemEnviado: 18 Jun 2014 16:54
por xultz
Cara, eu passei pela mesma situação. Tentei entender o mecanismo de gravação dos dados, e depois de muito tentar eu desisti. Eu peguei o código, importei no meu projeto e comecei a usar sem pensar muito. Ele funciona, não é o ideal mas quebra um galho. Não achei como faz para setar valores iniciais, meu código olha uma determinada posição, se estiver em FF eu considero que a "eeprom" está vazia e preencho com valore padrão, e gravo naquela posição um outro valor, e todas vez que o código inicializa, ele faz essa verificação.

Re: Pic 24f flash read/write

MensagemEnviado: 18 Jun 2014 17:10
por Eduardo Augusto
Inclui no meu código os arquivos que ele pede pra baixar.
Ta dando vários erros em umas variáveis e funções externas, essas aqui óh.

cpp code
extern int  ReadPMHigh(int);
extern int ReadPMLow(int);
extern void UnlockPM(void);
extern int WritePMHigh(int, int);
extern int WritePMHighB(int, int);
extern int WritePMLow(int, int);
extern int WritePMLowB(int, int);


Só vejo a declaração desses valores e um arquivo em asm... como você incluiu elas no software?

Re: Pic 24f flash read/write

MensagemEnviado: 18 Jun 2014 17:43
por andre_luis
Verifica se tem alguma linha no seu código, tipo : #include <p24Fxxxx.h>
Acredito que esteja faltando isso aí.



+++