Need help with IR LED pmw control


Currently our IR leds are only emitting 15 mA average because we have PMW active on the IR leds to make sure it doesn’t achieve maximum brightness. I want to know if there is a way to use more values than "high" or. "low" or even turn off the PMW completely so we can achieve full IR brightness. At minimum, all we need to do is turn the PMW off so it the IR light does't pulse. We are using the IRs for pupil tracking with a 500 FPS camera. It would be good to know also if this pulsing is affecting the video we are capturing.

The top and bottom of the code is for our IR lights in the IDE:
void setup() {
pinMode(IR_LED, OUTPUT);

matrix.begin(0x73); // pass in the address
matrix.setBrightness(15); //Brightness: 0 (min) to 15 (max).
matrix.blinkRate(HT16K33_BLINK_OFF); /*!
@brief Set display blink rate.
@param b One of:
HT16K33_BLINK_DISPLAYON = steady on
HT16K33_BLINK_OFF = steady off
HT16K33_BLINK_2HZ = 2 Hz blink
HT16K33_BLINK_1HZ = 1 Hz blink
HT16K33_BLINK_HALFHZ = 0.5 Hz blink


void loop() {
digitalWrite(IR_LED, 1); // Turn on the IR LEDs

Change the duty cycle of the PWM. You have 255 options with the arduino 8 bit timer. 100% is full on and 0% is off. If it is hooked up inversely the numbers will be the opposite. Without a schematic I can only guess.

So far your description and questions makes little sense, plus you have not posted a schematic or even a complete sketch.

Are you driving the IR led with an Arduino pin or with an ht16k33 chip?

If you are driving the IR led with an Arduino pin and the above code, then you are not using pwm.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.