Forum: Mikrocontroller und Digitale Elektronik Teensy 3.1 8Hz Pulse messen


von Michael K. (Gast)


Lesenswert?

Hallo Ich möchte mit dem Teensy 3.1 Pulse messen.

Aber wie genau ? Und wie mache ich das mit den  Interupts beim Teensy ?

geht attachInterrupt(3, EXT_CLOCK_MESSEN, FALLING); überhaupt beim 
Teensy 3.1 ? Wo stellt man den PIN ein ?

Mein Eingang ist an PIN 3 und ich möchte nicht eine Bibliothek 
einbinden.
Einfach mit Zeitsempel! Geht das ?

Das Messergebniss sollte so Periode 124.8 ms sein. Kann mir da jemand 
Helfen ? Irgendwas passt da nicht ! Die LED blinken passend aber das 
Messergebniss passt noch nicht beim Println.

Ich würde mich freun!

Gruß Michael



Hier mein Program

//   5.2 EXT_CLOCK messen 
------------------------------------------------------------------
void EXT_CLOCK_MESSEN()
{
  LCD_MODE = 5;

  if (CLOCK_MODE == 2)
  {


    if (digitalRead(EXT_INPUT_PIN) == LOW)
    {
      EXT_TIME_HIGH = (Aktueller_TimeStamp -  EXT_CLOCK_HIGH_TimeStamp);
      EXT_CLOCK_HIGH_TimeStamp = Aktueller_TimeStamp;
      RUN_LED_State = LOW;
    }
    else
    {
      EXT_TIME_LOW = (Aktueller_TimeStamp - EXT_CLOCK_LOW_TimeStamp);
      EXT_CLOCK_LOW_TimeStamp = Aktueller_TimeStamp;
      RUN_LED_State = HIGH;
    }

    digitalWrite(RUN_LED_PIN, RUN_LED_State);

  }
}

: Verschoben durch User
von Mark B. (markbrandis)


Lesenswert?

Michael K. schrieb:
> Mein Eingang ist an PIN 3 und ich möchte nicht eine Bibliothek
> einbinden.

Da widersprichst Du Dir selbst, denn digitalRead() und attachInterrupt() 
sind bereits Teil einer Bibliothek. Oder dachtest Du, diese Funktionen 
seien vom Himmel gefallen? ;-)

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