Hallo, ich möchte am Eingang P1.0 (TACLK) eines MSP430F149 ein Rechteckimpulse im TimerA zählen . Nun habe ich schon alles mögliche Ausprobiert, aber das TimerA-Register (TAR) belibt immer auf 0. Weiss jemand was alles gesetzt bzw. nicht gesetzt sein muss ? Gruß und DANKE Thorsten
Wieso liest du nicht die Abschnitte zum Timer A und seinen Betriebsarten/Registern im Family User Guide? Da steht alles sehr genau beschrieben drin.
@Christian: Die hab' ich natürlich gelesen, und es hört sich ja nicht so schwer an. Folgendes habe ich implementiert: P1SEL|=1; // Enable TACLK P1DIR=0; // P1.0 (=TACLK) TACTL=TACLR; // Clear Timer sprintf(s,"Frequency Cntr."); displaystrxy(1,1,s); sprintf(s,"... "); displaystrxy(1,2,s); TAR=0; // Counter=0 TACTL|=MC0; // Up-Mode (=Start) wait(1000); // Etwas Zeit (1 Sekunde) TACTL&=0xFFFF-MC0; //Stop sprintf(s,"%u Hz", TAR); displaystrxy(1,2,s); ... aber wie gesagt TAR bleibt immer NULL. Gruß
Im TACTL muss meines Wissens der INCLK aktiviert werden. Also TACTL |= TASSSEL_3;
>TACTL|=MC0; // Up-Mode (=Start)
up-mode zählt nur bis CCR0
falls CCR0 = 0 dann zählt TMR_A vielleicht nur von 0 bis 0 ->
also gar nicht!
Besser: TACTL|=MC1; // continuous mode
@Christian
>Im TACTL muss meines Wissens der INCLK aktiviert werden.
INCLK und TACLK sind verschiedene CLK-inputs für den Timer A
Wenn Thorsten seinen CLK an TACLK angeschlossen hat, dann muss er auch
diesen auswählen. Soweit stimmt TACTL.
Stimmt, INCLK ist der invertierte TACLK. Hab ich verwechselt so ausm Kopf :)
Super !! Es läuft .... CCR0 darf nicht auf NULL stehen sonst zählt er wirklich nur von NULL bi NULL. Danke Euch beiden für den Einsatz ! Gruß Thorsten
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.