Forum: Mikrocontroller und Digitale Elektronik GPIO von MC9S12 per BDM setzen


von Olli Z. (z80freak)


Lesenswert?

Ich möchte bei einem MC9S12X384 in einem Modul gern IO Leitungen per BDM 
abfragen und setzen. Eigentlich, so dachte ich, ein einfaches 
Unterfangen weil die Ports A und B per Memory mapped IO erreichbar sind.
Einfach z.b. das DDRB auf Adresse 0x0003 mit z.B. 0xFF beschreiben, was 
die Ports PB0-7 zum Ausgang machen müsste und anschließend über 0x0001, 
welche dem Port B Zustandsregister entspricht die gewünschten Ports mit 
0 oder 1 setzen.

So getan mit USBMscript und einem "wb 0x0003 0xFF" sowie "wb 0x0001 
0xFF". Mit dem Oszilloskop gemessen ergibt sich jedoch am Port keine 
Änderung. Ein zurücklesen der Register zeigt aber das die Daten 
ordnungsgemäß geschrieben wurden.

Versorgungsspannung liegt am Chip an (VDDX1 und VDDX2) für die IO Ports, 
also nicht bloss BD (VDDR).
Der Chip arbeitet wohl im "Special single chip mode" da MODA und MODB 
statisch auf GND gezogen sind und MODC per BDM während des Reset auf 0 
gesetzt wird. Das sagt auch das Mode-Register, welches den Wert 0x00 
hat.

: Bearbeitet durch User
von Olli Z. (z80freak)


Lesenswert?

Ach, ich war nur dumm, habe Port B und Port P verwechselt ;-)
Passt alles, funktioniert einwandfrei, wie erwartet.

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
Noch kein Account? Hier anmelden.