Gast
#1013221
Moin, ich möchte temperaturwerte in ins Daten Flash speichern (r8c27).
begonnen soll an der Adresse 0x2400 (block A).
in meinem testprogramm soll 0x08 an die adresse 0x2400 geschrieben
werden.
Führe ich das Programm steht an adresse 0x2400 der wert 0xff und an
adresse 0x2401 der wert 0x00;
ist irgendwie komisch!
hier mein testprogramm,vieleicht weis ja jemand was ich falsch mache:
#include "sfr_r827.h"
#define block_a_start_adress 0x2400
#define programm_flash 0x40
main()
{
unsigned int* flash_ptr;
flash_ptr=(int*)block_a_start_adress;
prcr=0x02; //enable pm0 and pm1
pm1=0x01; //data flash enable
prcr=0;
fmr4=0x00; //erase suspend mode disable
fmr0=0x01; //CPU rewrite mode enable
asm(" ");
fmr0=0x03;
fmr1=0x00;
asm(" ");
fmr1=0x02; //EW1 Mode
*flash_ptr=0x40; //gefehl zum programmieren
*flash_ptr=0x08; //wert 0x08 schreiben
while(fmr00!=1); //warten bis schreibvorgang
zuende
fmr0=0x01;
while(1);
}