Best breadboard 7-segment LED driver: TLC5916 tutorial

  Рет қаралды 19,674

FriendlyWire

FriendlyWire

Күн бұрын

Learn how to drive 7-segment displays on a breadboard with the TLC5916 driver IC. In this tutorial I will show you, step by step, why the TLC5916 is the best LED driver for breadboards with 7-segment displays and how you can use it with a microcontroller.
More details and an up-to-date list of all components: www.friendlywire.com/tutorials...
Thanks for tuning in, and let me know in the comments if you have any questions!
Website: www.friendlywire.com
Twitter: / friendlywire
Reddit: / friendlywire
Facebook: / friendlywire
Instagram: / friendlywire
Timestamps:
00:00 Introduction
00:30 Overview & demonstration
01:25 What you need
02:19 7-segment displays and how to drive LEDs
05:16 Schematic & TLC5916 basics
10:29 TLC5916 special mode & adjusting the LED current
13:28 Preparing the 7-segment LED displays
14:58 Building the circuit
18:52 Flashing the PIC16F1455
20:39 How NOT to do it... My life before the TLC5916.
Tags:

Пікірлер: 50
@FriendlyWire
@FriendlyWire 4 жыл бұрын
So will you start using the TLC5916 in your future projects? And what is your favorite 7-segment driver for breadboards? Let me know :)
@QEngineering
@QEngineering Жыл бұрын
Excellent tutorial, I needed a bit of a refresher on LED drivers for a project and was really pleased to stumble on this video. 🍻
@FriendlyWire
@FriendlyWire Жыл бұрын
Thanks so much, Q, I am glad you found it useful!
@namero999
@namero999 3 жыл бұрын
I'm only halfway in but I can already say that this is an EXCELLENT tutorial, exactly what I needed! Great job! Insta-subscribe!
@FriendlyWire
@FriendlyWire 3 жыл бұрын
Wow, thanks so much, I am glad you like it! :)
@75slaine
@75slaine 4 жыл бұрын
Another great vid. Congrats on getting this one over the line, I know you put a lot of effort into it. Thanks
@FriendlyWire
@FriendlyWire 4 жыл бұрын
Thank you for your kind words, Glen! Yeah, this one took a bit longer, but I hope it is reasonably self-contained when it comes to driving LEDs and how to use the TLC5916. I look forward to using this chip in many future projects, I bought 250 of those on Ebay, they should arrive any day.
@risingmermo
@risingmermo Жыл бұрын
I can't believe I've only found your channel now. These tutorials are seriously incredible!
@FriendlyWire
@FriendlyWire Жыл бұрын
Thank you so much, Guilherme, this means a lot! :)
@risingmermo
@risingmermo Жыл бұрын
@@FriendlyWire and you respond to 2 year old videos!! You're serious amazing.
@FriendlyWire
@FriendlyWire Жыл бұрын
@@risingmermo I try to answer every comment :) Have a great weekend!
@xotmatrix
@xotmatrix 3 жыл бұрын
Thanks for covering the shift-register/driver. Seems like a very useful device yet I haven't seen others mention it before.
@FriendlyWire
@FriendlyWire 3 жыл бұрын
Thanks, I am glad you like it! The TLC5916 is really my new favorite driver :) (I used the CD4094 shift register before, which can work sometimes, but is still a bad idea since the output current is very low and not meant to drive anything.)
@jerril42
@jerril42 4 жыл бұрын
Thanks, great demo. I like the schematics, the C solution worked well. I'm adding the chips and other stuff to my shopping list, they look like a great option for driving these displays. It looks like you could make side-by-side stackable modules using this setup.
@FriendlyWire
@FriendlyWire 4 жыл бұрын
Thanks! Yeah, it's always difficult to find the optimal schematic for a project, glad you like it! And it's great to hear you will be using them! I think that they are great for stackable units. Make sure to share your progress over on Twitter :)
@bah4dz
@bah4dz 4 жыл бұрын
Great job !
@FriendlyWire
@FriendlyWire 4 жыл бұрын
Thank you, glad you like it!
@sassi7190
@sassi7190 3 жыл бұрын
محتواك رائع يا صديق
@FriendlyWire
@FriendlyWire 3 жыл бұрын
Thanks a lot, have a great day and stay tuned for future projects :)
@sassi7190
@sassi7190 3 жыл бұрын
@@FriendlyWire sure
@sangsang5570
@sangsang5570 Жыл бұрын
you draw Schematic very nice Can you show me what the software you use?
@FriendlyWire
@FriendlyWire Жыл бұрын
Thank you! I am using Eagle made by Autodesk: www.autodesk.com/products/eagle/free-download
@SieIaQ
@SieIaQ 3 жыл бұрын
Neat. I wonder if with this method you could do a more sophisticated scrolling? With CD4094 shift registers you have switched the whole letter/cypher, here (I suspect) you could even scroll by half of the letter like [ ][ H ][ E ] -> [ |][| |][ ] -> [ H ][ E ][ ] This would give you more smoothly scrolling effect.
@FriendlyWire
@FriendlyWire 3 жыл бұрын
Thanks! :) Hmm, yeah, maybe it's possible to do that. But I am not sure what the difference is to the CD4094 case?
@SieIaQ
@SieIaQ 3 жыл бұрын
​@@FriendlyWire Correct me if I'm wrong. The difference is that using CD4094 (connected in cascade mode) you were not able to change "on fly" any letter on a specific position - scrolling was done by hardware. With TLC591 you can control each segment separately, and make scrolling in software - which is needed if you want to make a "smooth scrolling effect".
@FriendlyWire
@FriendlyWire 3 жыл бұрын
@@SieIaQ Oh I see what you mean. But I think you got it wrong, the TLC5916 in this tutorial are wired up exactly like the CD4094 before, the data goes in on one side and comes out on the other. The important difference is that the TLC5916 has drivers included that allow you to, well, drive LEDs at a constant current. The CD4094's outputs are just standard CMOS logic level outputs capable ofaround 0.5-1mA. Let me know if that makes sense :)
@MohammedAyazQuadri
@MohammedAyazQuadri Жыл бұрын
Hey. How about some female header pins to raise the height of the 7 segment display? Round Pin Female Headers are even better. But they are short, but may they will work? Or else two layers of them will!
@FriendlyWire
@FriendlyWire Жыл бұрын
That's a great idea, thanks for sharing! I find that a lot of pin headers don't fit all that well with breadboards (because the pins are not long enough to fully engage with the breadboard contacts) but I will definitely give this a try in the future. Nice!
@cesaryoshikawa7656
@cesaryoshikawa7656 3 жыл бұрын
How about using these TLC5916 to drive the LEDs but other shift registers like the 74HC595 or the CD4094 showed in the video to multiplex them?
@FriendlyWire
@FriendlyWire 3 жыл бұрын
Thanks for the question! :) The TLC5916 are current sinks, so you can use them to drive anything towards VDD (like the segments of a common anode display). If you want to drive something to ground (which you need to do when multiplexing) then you would need a source driver, like a PNP transistor. So you could use a shift register that in turn drives those PNP transistors (the UDN2981 has eight of those PNP transistors in a single package), and those PNP's would then drive, say, the 7-segment LED displays' anodes. Does that help? If not let me know :)
@cesaryoshikawa7656
@cesaryoshikawa7656 3 жыл бұрын
@@FriendlyWire Yes! That's what I had in mind. Instead of having one TLC5916 for each display, I could use 1 TLC5916 to drive the current for each segment and then 1 shift-register triggering up to 8 transistors connected to the common cathode, right? You suggested a PNP transistor, is there any specific reason for that? Or with NPN works just fine?
@FriendlyWire
@FriendlyWire 3 жыл бұрын
@@cesaryoshikawa7656 Almost right. The TLC5916 drives towards VDD. So you need common anode displays (I had a typo in my response above and now it is correct). Connect the TLC5916 outputs to the LED cathodes. Connect the shift-register outputs to the PNP transistors, which then drive the LEDs' anodes. You need to use PNP transistors because you are driving towards ground. NPN transistors can only drive towards VDD, if that makes sense. In other words: the TLD5916 driver contains NPN transistors (or the MOSFET equivalent thereof). For driving the LED anodes you need PNPs. Maybe I could do a video on multiplexing :)
@cesaryoshikawa7656
@cesaryoshikawa7656 3 жыл бұрын
@@FriendlyWire Oh I see what you mean! Thanks for the reply! I am working on a project of a baseball scoreboard that receives the data from a python code through serial communication. As you can imagine it is a lot of 7 segment displays. I am sure that if you make a video on multiplexing it will be the best on KZfaq. The quality of your video is astonishing!
@FriendlyWire
@FriendlyWire 3 жыл бұрын
@@cesaryoshikawa7656 Wow, thanks so much Cesar, glad you like it. Your project sounds very cool! If you have Twitter make sure to @ me at @FriendlyWire when it's done, I'd love to see it! Regarding the multiplexing, some things to keep in mind: it does not work very well for a lot of displays with a slow controller. Also, and more importantly, when you plan to take videos of the display (for example when the scoreboard is in the background of a sports game that is filmed) it might flicker on camera. And last, when you use serial communication (depending on how you implement it) the controller might be busy and cannot do the multiplexing as good as initially hoped. So it's a good idea to test some things before committing to a specific design :)
@SiliconSchematics
@SiliconSchematics 4 жыл бұрын
Try to make video short and sweet 😁 it was good 😊
@FriendlyWire
@FriendlyWire 4 жыл бұрын
Thanks, glad you liked it :)
@filipcvetanovski2545
@filipcvetanovski2545 3 жыл бұрын
Why am i only now seeing this? KZfaq did not notify me about this video even though notifications are on. Please try and fix this.
@FriendlyWire
@FriendlyWire 3 жыл бұрын
Glad to have you here, welcome back :) I don't know why this is happening... I am thinking of setting up an email notification for anybody who is interested so I can shoot out a monthly email whenever a video comes out. Would you be interested in that?
@filipcvetanovski2545
@filipcvetanovski2545 3 жыл бұрын
@@FriendlyWire Yes, i would be interested. KZfaq really does not like notifying me when videos come out. Not just you but almost everyone i am subscribed to. I either get them a couple hours of multiple days after they are uploaded.
@FriendlyWire
@FriendlyWire 3 жыл бұрын
@@filipcvetanovski2545 In the last days programmed an email signup that you can find here: www.friendlywire.com/email/
@filipcvetanovski2545
@filipcvetanovski2545 3 жыл бұрын
@@FriendlyWire Thanks!
@mohomadashad4641
@mohomadashad4641 2 жыл бұрын
How to make this on as a counter
@FriendlyWire
@FriendlyWire 2 жыл бұрын
When you look at the source code ( www.friendlywire.com/tutorials/tlc5916/ ) you can modify it to make it display anything you want :) Do you know how to program PIC microcontrollers? I have an introductory video for that, in case you are interested. Let me know :)
@mohomadashad4641
@mohomadashad4641 2 жыл бұрын
@@FriendlyWire yes. I want
@mohomadashad4641
@mohomadashad4641 2 жыл бұрын
@@FriendlyWire i don' know how it's work. so can you tell me how it's work
@FriendlyWire
@FriendlyWire 2 жыл бұрын
@@mohomadashad4641 Do you know how to program in C?
@mohomadashad4641
@mohomadashad4641 2 жыл бұрын
@@FriendlyWire no
NE555 tutorial: three useful circuits
16:09
FriendlyWire
Рет қаралды 82 М.
Segmented Displays
13:55
Posy
Рет қаралды 5 МЛН
THE POLICE TAKES ME! feat @PANDAGIRLOFFICIAL #shorts
00:31
PANDA BOI
Рет қаралды 24 МЛН
когда повзрослела // EVA mash
00:40
EVA mash
Рет қаралды 4 МЛН
Can You Draw A PERFECTLY Dotted Line?
00:55
Stokes Twins
Рет қаралды 98 МЛН
HOW DID HE WIN? 😱
00:33
Topper Guild
Рет қаралды 31 МЛН
Ep 045: Using Karnaugh Maps to Design a 7-Segment Display Driver
24:25
Visualizing Data with 7-Segment Displays
34:26
Sebastian Lague
Рет қаралды 1,2 МЛН
More Efficient By-Segment Multiplexing of 7-Segment Displays
13:34
Tulsa OpenSource Hardware
Рет қаралды 16 М.
Control LEDs with your computer using RS232!
16:09
FriendlyWire
Рет қаралды 58 М.
GIANT Modular 7 Segment Display - Easy DIY Guide
26:07
DIY Machines
Рет қаралды 42 М.
CD4033 | Seven 7 Segment Display Driver IC 4033
11:45
EE Wave
Рет қаралды 11 М.
LED Displays with Arduino - 7-Segment & Dot-Matrix
44:43
DroneBot Workshop
Рет қаралды 201 М.
THE POLICE TAKES ME! feat @PANDAGIRLOFFICIAL #shorts
00:31
PANDA BOI
Рет қаралды 24 МЛН