Blinking Blues Quick Version

= Blink Broken =

The blink program ( lightly modified ) gives unexpected results.

Reduced version of issues raised at
 * Blinking Blues
 * Arduino Forum http://forum.arduino.cc/index.php?topic=445889.0

The Analyzer Did It
Right now it looks like the problem is the dangerous prototype logic sniffer. I will be editing all of this later and contact the dangerous prototype folks. Go back and look at Blinking Blues

= The Code =

The code in its entirety is:

const int ledPin=6;

void setup { pinMode(ledPin, OUTPUT); }

void loop { while ( true ) { digitalWrite( ledPin, HIGH );  // turn the LED on        delayMicroseconds( 5000 );      // wait digitalWrite( ledPin, LOW );   // turn the LED off delayMicroseconds( 5000 );     // wait } }

= Results =

In the gif below focus on channel 3, that is pin6 The cursor measurement for 1,2,3,4 are all about 10.1 ms, a value which seems "right". But at cursor 5,6 you can see a pulse of period 11.060 ms. This is the "glitch" ( bad term here ) that I am talking about. It repeats about every 80 ms. This sort of behavior with some different details has been present in every test I have conducted.

I did look at the rise and fall time on my scope, it is about 20 ns. I cannot catch this stretched pulse on my scope, but looking for a 1 ms discrepancy across 80 ns is not really easy on a scope. I did use the single sweep option and mess with a bunch of the variables. Right now I trust the logic analyzer for this more than the scope, you can try to present an argument for why I should not. I have to confess I have not tried my old 100 mhz analog scope on this guy.