Controlling LED brightness through digital potentiometer and a LED driver from ON Semiconductor. Link here (PDF)
Light-emitting diodes (LEDs) require a regulated current, and their brightness is proportional to the current that flows through them. Some LED drivers use an external resistor to set the LED current. A digital POT can replace a discrete resistor with the advantage of providing an adjustable value allowing the LED brightness to dynamically change. Most digital POT circuits have the ability to store permanently the resistor value in non-volatile memory.
Driving 300 WS2812B RGB LED’s with “the 3 cent microcontroller” – the Padauk PMS150C.
The 3 cent Padauk PMS150C is.. Interesting to say the least. First of all there’s a lot this little MCU doesn’t do. It doesn’t have a lot of code space (1K Word), it doesn’t have a lot of RAM (64 bytes) and it doesn’t even do hardware multiplication. It doesn’t have an instruction for loading data from ROM either(Though there are ways of getting around this – but that’s a subject for another post). And of course – you can only program it ONCE.
In the first post in this series, we built a miniature LED bicycle traffic signal using 3D printing, laser cutting, a sticker, and an Adafruit Neopixel Jewel. In this post, we’ll look at bringing the signal to life using a Particle Photon. We’ll start with basic code to blink the traffic signal green, yellow, and red then add code to control the color over the web using the Particle Cloud or locally using an iPad and the Art-Net protocol.
This build combines small dozens of small laser-cut acrylic pieces which fit together with very tight tolerances. It uses skinny (4mm wide) LED strips which must be soldered, bent, and then slotted in between those acrylic pieces. When assembling the parts you must be willing to force pieces into place, even though it feels like you are stressing the brittle acrylic. You must also be willing to remove and re-seat said pieces and LED strips when it turns out they *can’t* actually be forced into place. At some point during the assembly there is a strong likelihood that you will have to remove everything and re-solder your LED strip when you realize that forcing everything into place broke one of the wires away from your LED strip or created a short circuit.
This project is a small DMX-512 controlled, color-changing RGB LED light. The light can be controlled via the DMX512 protocol or it can run a number of built-in programs depending on how the software is configured. The light incorporates an advanced 16-bit PIC24 microcontroller with PWM capabilities, a 3D printed enclosure, a laser cut acrylic lid, a custom switching power supply, and a MEMS oscillator. The light measures roughly 2.25″ square by 1.25″ high. This light is the evolution of my RGB LED light designs that span back over a decade.
Pulsed LED application like flash LEDs requires adequate thermal management to counter the heavy heat caused by larger current, here’s an app note from OSRAM discussing on thermal management of LEDs. Link here (PDF)
This application note focuses on how to develop an adequate thermal management for LEDs in camera flash applications. It provides information on critical factors and the thermal properties of LEDs during a range of operation modes as well as information on how to develop an adequate thermal management in flashlight applications.
App note from OSRAM on InGaN LEDs dimming method without penalty on its wavelength. Link here (PDF)
While the InGaN technology produces the brightest light output across Blue, Deep blue, Verde, True green and White, it is important to understand that the wavelength of the light emitted depends on the forward current. In order to avoid shifts in the color, the dimming strategy must be considered carefully.
An App note from OSRAM on an Intelligent control circuitry example using a PIC Microcontroller. Link here (PDF)
Nowadays, applications increasingly make use of LEDs as a replacement for traditional light bulbs. For example, LEDs are frequently used in the design of automobile tail lights, signal lights, traffic signals, and variable message signs.
LEDs provide several advantages over traditional light bulbs, such as smaller size and longer life. In many applications, the LEDs must be driven with intelligent control circuitry. According to the task at hand, this control circuitry must be able to fulfill various functions and tasks.
App note from OSRAM on thermal resistance for LEDs and IREDs (IR emitting diodes). Link here (PDF)
In order to achieve the expected reliability, lifetime and optimal performance of LEDs, especially for high-power LEDs, appropriate thermal management is of the utmost importance. One of the key parameters for good thermal management is the temperature of the active semiconductor layer designated as the junction temperature. The manufacturer’s recommended maximum junction temperature should therefore not be exceeded during operation, in order to prevent damage to the component. Ideally, the junction temperature should be kept as low as possible for the given application.
Due to the design principle of the LEDs, the junction temperature of the LED can not be measured directly.
This is real-time clock based automatic LED lamp which we originally designed to use as night light. This lamp can programmed to turn on and off at the specific time of the day. For example, it can program to turn on at 6 PM on each day and to turn off at 4 AM next day.
The core component of this project is PIC16F883 MCU and it’s firmware is developed using MikroC Pro for PIC. We select this MCU because of it’s 7 KB flash memory, I2C, UART, E2PROM and built-in 8-bit and 16-bit timers.