collapse

* Links de Robótica

* Posts Recentes

URGENTE - display de 7 segmentos com backpack por zordlyon
[Hoje às 11:18]


Preços e fabricantes de pcb por Sérgio_Sena
[Ontem às 10:20]


Palavras Cruzadas por Njay
[Ontem às 02:24]


Isaac Asimov - I, Robot por senso
[18 de Setembro de 2017, 03:41]


Apresentação por TigPT
[17 de Setembro de 2017, 07:31]


ic SL440 da Plessey? por senso
[16 de Setembro de 2017, 13:11]


Compra Colectiva RS-Amidata por brunus
[15 de Setembro de 2017, 22:31]


Ideias para construir um quadrúpede simples por zordlyon
[15 de Setembro de 2017, 10:18]


Preparar bancada de testes por jm_araujo
[14 de Setembro de 2017, 10:24]


Mitos: mudança da ilumação tradicional p/ iluminação a LEDs? por LVirtual
[14 de Setembro de 2017, 07:46]

Autor Tópico: [PIC18F4580] write flash  (Lida 1125 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline domitek

  • Mini Robot
  • *
  • Mensagens: 34
[PIC18F4580] write flash
« em: 10 de Junho de 2012, 20:04 »
Boas,

Pessoal, desculpem estar a ser chato... mas eu estou no inicio e estou muito verde.....
Gostava de saber se posso escrever na flash na pic se sim como... eu já procurei na internet mas vi alguns com problemas.... e vi pedaços de codigo que se calhar até funcionam mas não percebo bem o que faz...

fica aqui um tópico que encontrei sobre o assunto... http://www.microchip.com/forums/m386104-print.aspx penso que pelo que é dito o código até esta mais ao menos funcional... mas eu não percebo bem o código...

ja agora arranjei este codigo aqui:
Código: [Seleccione]
unsigned char ReadEEPROM(unsigned char address){
    EECON1=0;                   //ensure CFGS=0 and EEPGD=0
    EEADR = address;
    EECON1bits.RD = 1;
    return(EEDATA);
}
 
void WriteEEPROM(unsigned char address,unsigned char data){
char SaveInt;
    SaveInt=INTCON;             //save interrupt status
    EECON1=0;                   //ensure CFGS=0 and EEPGD=0
    EECON1bits.WREN = 1;        //enable write to EEPROM
    EEADR = address;            //setup Address
    EEDATA = data;              //and data
    INTCONbits.GIE=0;           //No interrupts
    EECON2 = 0x55;              //required sequence #1
    EECON2 = 0xaa;              //#2
    EECON1bits.WR = 1;          //#3 = actual write
    INTCON=SaveInt;             //restore interrupts
    while(!PIR2bits.EEIF);      //wait until finished
    EECON1bits.WREN = 0;        //disable write to EEPROM
}
O que acham dele?
alguém pode ajudar?

Cumps
« Última modificação: 10 de Junho de 2012, 20:14 por domitek »

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.389
  • Helpdesk do sitio
Re: [PIC18F4580] write flash
« Responder #1 em: 11 de Junho de 2012, 00:18 »
Queres escrever mesmo na flash ou na EEPROM, são coisas muito diferentes.
Avr fanboy

Offline domitek

  • Mini Robot
  • *
  • Mensagens: 34
Re: [PIC18F4580] write flash
« Responder #2 em: 19 de Junho de 2012, 21:09 »
eu queria gravar algumas configurações(3 variaveis do tipo inteiro) do programa... de forma a que quando desliga-se a energia do circuito e volta-se a ligar ele recupera-se as ultimas configuraçoes... já estou a ver que errei a colocar o ultimo codigo...

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.389
  • Helpdesk do sitio
Re: [PIC18F4580] write flash
« Responder #3 em: 19 de Junho de 2012, 21:16 »
Para isso usas eeprom e não flash!
Avr fanboy

Offline domitek

  • Mini Robot
  • *
  • Mensagens: 34
Re: [PIC18F4580] write flash
« Responder #4 em: 24 de Junho de 2012, 20:20 »
tinha mesmo ideia que era na flash.... tenho que estudar o assunto.. ::) sendo assim o código a cima deve de funcionar... certo?