Ich hab diese in einem Beispiel gefunden und kann damit nichts anfangen. Vermute was mit Pointer auf Pointer!? *((unsigned char *)0x3FE2) = 0x06; *((void (**)(void))0x3FE3) = isrOC2; Vielen Dank!
Normalerweise hätte ich geschrieben: Mach deine Hausaufgaben selber. Aber: Ich habe den Code per Google doch tatsächlich in einem ganz anderen Zusammenhang gefunden, deswegen gibt's hier die Lösung des Rätsels ;-) *((unsigned char *)0x3FE2) = 0x06; An die Byte-Adresse 0x3fe2 wird der Wert 0x06 geschrieben. *((void (**)(void))0x3FE3) = isrOC2; An die Adresse 0x3fe3 wird die Adresse der Funktion isrOC2, die keine Argumente entgegen nimmt und keinen Rückgabewert liefert, geschrieben.
Zusatz: Beide Anweisungen zusammen schreiben den Maschinenbefehl jmp isrOC2 für 68HC12-kompatible Mikrocontroller an die Speicheradresse 0x3fe2. Da wird wohl so eine Art Interrupt-Sprungtabelle aufgebaut.
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.