collapse

* Links de Robótica

* Posts Recentes

Compra Colectiva Mouser.com N1-2018 por andlig
[Ontem às 21:19]


Printer 3D barata por Hugu
[Ontem às 21:02]


Que potência contratada têm em vossa casa? por SerraCabo
[Ontem às 16:43]


Lojas Portuguesas de Eletrónica por TigPT
[Ontem às 11:00]


Portátil não carrega a bateria... por KammutierSpule
[Ontem às 10:39]


Arduino - Controlar fita led por mariana.val
[16 de Janeiro de 2018, 23:25]


O Roomba avariou! por TigPT
[15 de Janeiro de 2018, 11:30]


ic SL440 da Plessey? por brunus
[14 de Janeiro de 2018, 22:13]


e-bike converter piscas para 12v por Njay
[14 de Janeiro de 2018, 22:10]


Power_OK Fonte ATX por almamater
[13 de Janeiro de 2018, 09:14]

Autor Tópico: [PIC18F4580] write flash  (Lida 1205 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.411
  • 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.411
  • 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?