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.