Hey ho =) Ich habe hier auf der Seite folgenden Code gefunden: Initialisierung von PWM void init_PWM_TimerA(void) { TACTL = TASSEL1 + TACLR; // SMCLK, Clear Tar CCR0 = 512-1; // PWM Period CCTL1 = OUTMOD_7; // CCR1 reset/set P1DIR |= 0x04; // P1.2 PWM output P1SEL |= 0x04; // P1.2 and TA1/2 otions TACTL |= MC0; // Start Timer_A in up mode } Speziell geht es um den Teil: P1DIR |= 0x04; // P1.2 PWM output P1SEL |= 0x04; // P1.2 and TA1/2 otions So wie ich das verstanden habe ist P1DIR mit 0 = Input Direction und 1 = Output Direction. Warum wird dort 0x04 zugewiesen ? Im Kommentar steht auch P1.2 ? Woran erkenne ich das ? Bei P1SEL 0 = I/O und 1 = Peripherie. Kann mir das jemand erklären ? =)
MarkMüller schrieb: > P1DIR |= 0x04; // P1.2 PWM output > P1SEL |= 0x04; // P1.2 and TA1/2 otions 0x04 ist in Binärschreibweise 0b00000100. Man fängt bei Bit0 von rechts an zu zählen. Jetzt sollte dir ein Licht aufgehen, zumindest was P1DIR angeht. mfg mf
MarkMüller schrieb: > Warum wird dort 0x04 zugewiesen ? Im Kommentar steht > auch P1.2 ? P1.2 ist der dritte Pin und 0x04 hat das dritte Bit gesetzt. Passt also. MarkMüller schrieb: > Woran erkenne ich das ? > Bei P1SEL 0 = I/O und 1 = Peripherie. > > Kann mir das jemand erklären ? =) Steht irgenwo im Users Guide. Für den mit dem ich zurzeit arbeite z.B. hier auf Seite 330/331. http://www.ti.com/lit/ug/slau144h/slau144h.pdf
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.