Hi tech C compiler
Har lite problem med att skria till eeprom minnet.
Kod: Markera allt
EEADR = eeprom_adress;
EEDATA = eeprom_data;
WREN = 1; //aktiverar skrivnigsläge
while (GIE == 1)
{
GIE = 0; //Inaktiverar Interrups
}
EECON2 = 0x55;
EECON2 = 0xAA;
WR = 1; //påbörjar skrivning
while (WR == 1) //kollar om skrivningen är klar
{
}
GIE = 1; //Aktiverar Interrups igen
WREN = 0; //Stänger av skrivnigsläge
EEIF = 0;
kanske måste jag skriva om (eftersom i databladet står det "The write will not initiate if the above sequence is not
followed exactly")
Men jag tycker min C-kod gör samma sak som assembler koden eller?
Kod: Markera allt
EECON2 = 0x55;
EECON2 = 0xAA;
WR = 1; //påbörjar skrivning
while (WR == 1) //kollar om skrivningen är klar
Kod: Markera allt
asm("BSF _STATUS, _RP0");
asm("MOVLW 55h");
asm("MOVWF _EECON2");
asm("MOVLW AAh");
asm("MOVWF _EECON2");
asm("BSF _EECON1,WR");
Ni undrar väll varför jag inte provar att sätta in asemblerkoden men det blev en massa kompilerings errorl det var anledningen. Så jag tänkte kolla om inte C-koden som jag har skrivit borde duga!
men skulle varit tacksam om ni kunde hitta något fel i den första koden
