// PulseTrainGenerator (for Teensy LC) // Generates pulse trains of 1 us pulses, counting 1 to 10, train interval 1000 us. // fjkraan@electrickery.nl, 2026-02-05 #define FREQPIN 2 #define MAXCOUNT 10 #define PULSEWIDTH 1 #define PULSETRAININTERVAL 1000 int currentCount = 1; int count; void setup() { pinMode(FREQPIN, OUTPUT); pinMode(LED_BUILTIN, OUTPUT); } void loop() { for (int i = 0; i < currentCount; i++) { digitalWrite(FREQPIN, LOW); delayMicroseconds(PULSEWIDTH); digitalWrite(FREQPIN, HIGH); delayMicroseconds(PULSEWIDTH); } delayMicroseconds(PULSETRAININTERVAL); currentCount++; if (currentCount > MAXCOUNT) currentCount = 1; digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); }