Arduino Rechtecksignal

OP #4618069
Hallo Forum,
ich habe (wahrscheinlich) ein Verständnisproblem, und zwar: wenn ich wie 
im Angehangenden Sketch ein Rechtecksignal ausgeben will das 10 µS lang 
ist, dann habe ich eine 15µS lange Flanke. Warum kann der µC nicht so 
schnell, der Taktet doch mit 16 Mhz???

LG
OP #4618097
Ja das passiert mir jedes Mal das ich den Anhang vergesse :D Bei Google 
Mail gibt es ja noch so eine Funktion das er dich erinnert wenn im in 
der E-Mail Anhang steht man auch was anhängen soll:D

Code:
#include <TimerOne.h>

void setup()
{
  // Initialize the digital pin as an output.
  // Pin 13 has an LED connected on most Arduino boards
  pinMode(13, OUTPUT);

  Timer1.initialize(15); // set a timer of length 100000 microseconds 
(or 0.1 sec - or 10Hz => the led will blink 5 times, 5 cycles of 
on-and-off, per second)
  Timer1.attachInterrupt( timerIsr ); // attach the service routine here
}

void loop()
{
  // Main code loop
  // TODO: Put your regular (non-ISR) logic here
}

/// --------------------------
/// Custom ISR Timer Routine
/// --------------------------
void timerIsr()
{
    // Toggle LED
    digitalWrite( 13, digitalRead( 13 ) ^ 1 );
}
Gast #4618102
Toni N. schrieb:
> Ja das passiert mir jedes Mal das ich den Anhang vergesse

Und jetzt hast du auch noch die Code- oder C-Tags vergessen. Kann Google 
einen daran auch erinnern?

Das macht das Lesen nicht schöner, insbesondere wenn überlange 
Kommentarzeilen enthalten sind.
Gast #4618109
Toni N. schrieb:
> ... dann habe ich eine 15µS lange Flanke.

Falls du mit Flankenlänge in Wirklichkeit Impulsdauer und mit µS 
Mikrosekunden einst, liegt es vielleicht an den von dir verwendeten 
Bibliotheksfunktionen.

Toni N. schrieb:
> digitalWrite( 13, digitalRead( 13 ) ^ 1 );

Rufe mal direkt
1
digitalWrite( 13,HIGH );
2
digitalWrite( 13,LOW);

Du wirst dich wundern, wieviel Zeit ein µC trotz 16MHz Takt bei 
"geeigneter" Programmierung damit verbringen kann.
Gast #4618169
Frank schrieb:
> Wieso nimmt man da nicht gleich eine PWM Einheit? Für sowas ist die
> prädestiniert.

"Man" könnte schon, aber "er" warscheinlich nicht. Denn er hat
nur das Arduino-Minimalbeispiel kopiert und seine eigene
Zahl hineingeschrieben.

Was dabei vorgeht und was nicht so gut läuft hat er bei Weitem
nicht verstanden.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.