Hallo, wie kann ich bei einem MSP430 (F449) die SMCLK, MCLK, ACLK mit einem Oszi messen? Grüße
Lt. Datenblatt kannst Du die Signale an folgenden Pins abgreifen: Pin 82 (P1.5): ACLK Pin 83 (P1.4): SMCLK Pin 86 (P1.1): MCLK Wenn mich nicht alles täuscht, sollte es reichen, die entsprechenden PxSEL und PxDIR zu setzen, damit die Signale an die Pins durchgeschaltet werden. Probiere es halt aus.
Ja ist richtig, SEL und evt. DIR setzen, dann kommt der CLK raus.
habe folgendes versucht: P1SEL = 0x32; // xx11 xx1x = Pins werden nicht als I/O // verwendet, sondern als // Peripheral Funktion (ACLK...) P1DIR |= 0x32; // xx11 xx1x // 1 = P1.1 = MCLK // 1 = P1.4 = SMCLK // 1 = P1.5 = ACLK jedoch leider ohne Erfolg. Muss man evtl. einen externen pull-up vorsehen um überhaupt etwas messen zu können? In der i/o schematic erkenne ich nichts...
Wie sieht denn die externe Beschaltung der 3 Pins in Deiner Applikation aus?
here we are: #include <msp430x44x.h> int main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop Watchdog Timer WDT FLL_CTL0 |=0x30; P1SEL = 0x32; // 0011 0010 = Pins werden nicht als I/O verwendet // sondern als Peripheral Funktion (ACLK...) P1DIR |= 0x39; // 0011 1010 // 1 = P1.1 = MCLK // 1 = P1.3 = LED // 1 = P1.4 = SMCLK // 1 = P1.5 = ACLK TACTL = TASSEL_1 + MC_2 + ID_0; // Timer A Init TACCTL0 = CCIE; TACCR0 = 32767; // gehe schlafen _BIS_SR(LPM3_bits + GIE);// (CPUOFF); // Enter LPM0 } #pragma vector=TIMERA0_VECTOR __interrupt void Timer_A(void) { P1OUT ^= 0x08; // Toggle P1.3 TACCR0 += 32767; }
Lass den Controller mal nicht schlafen, könnte daran liegen, dabei wird ja alles ausgeschaltet.
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.