hallo,
ich habe mir das datenblätt des at90s8515 durchgelesen und demnache
kann ich externes ram ab der adresse 0x0260 nutzen, wenn man SRE
setzt.
ich habe daraufhin das folgende programm geschrieben:
#include <io.h>
#define EXTMEM 0x0260
typedef unsigned char BYTE;
typedef unsigned short WORD;
int main( void )
{
BYTE *pEXTRAM;
outp(0x10,DDRD); // PORTD.4 output (NCSMEMORY)
outp(0x0C,DDRB); // PORTB.2 und 3 output
outp(0x03,PORTB); // pullup for buttons
outp(0xC0,MCUCR);// SRE=1 enable accessing external memory + warte
pEXTRAM = ( BYTE *) EXTMEM;
*pEXTRAM = 0xAA;//schreibe AA an die stelle pEXTRAM
for (;;) // loop forever
{
if (*pEXTRAM != 0xAA) //lese pEXTRAM
outp(0x0F,PORTB); // wenn nicht AA->fehler
}
}
leider macht nun weder der simulator noch der avr die anstaltet mal
eine adresse oder daten auszugeben.
kann mir demand da weiterhelfen?
höhere adressen gehen auch nicht. der avr gibt einfach nichts aus und
ändert wohl auch die ddr's nicht
mfg
sascha
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.