arduino uno verhält sich nicht deterministisch

Gast #4001851
Lesenswert?

Hallo,

mein Arduino uno verhält sich ein wenig merkwürdig. In unregelmäßigen 
Abständen Toggelt sich der Pin nicht.

Hier ist der code den ich verwende:
1
#include <avr/io.h>
2
#include <avr/interrupt.h>
3

4

5
void setup() 
6
{
7
  DDRC  |= _BV(DDC0);
8
}
9
 
10
void loop()
11
{
12
 PORTC ^= _BV(PC0);
13
}

Das Oscilloscopebild hab ist im Anhang.

Ich kenne dieses Verhalten eigentlich nur im Zusammenhang mit 
Betriebsystemen...

Viele Grüße!
Angehängte Dateien:
#4001968
Lesenswert?

Ajax schrieb:
> Ich kenne dieses Verhalten eigentlich nur im Zusammenhang mit
> Betriebsystemen...

Bei den Arduino-Boards läuft standardmäßig Timer0 mit Interrupts, um die 
Funktionen millis() und micros() zur Verfügung zu stellen.

Wenn Du die Timer0-Interrupts nicht gebrauchen kannst, dann mußt Du 
entweder den Timer0 Interrupt deaktivieren, wenn Du im Programm die 
Funktionen setup() und loop() verwendest.

Oder Du schreibst anstelle von setup() und loop() gleich eine eigene 
main() Funktion.

Falls Dein Sketch eine eigene main() Funktion hat, verwendet die 
Arduino-IDE nicht ihre eigene main() Funktion und Du kannst anfangen, 
einen "nackten" Controller direkt und ohne die Arduino Komfortfunktionen 
zu programmieren.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren