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