I designed a 7 segment display that has RGB leds. My shift registers are hooked up in an order from Ared -> Agreen -> Ablue -> Bred -> Bgreen -> Bblue etc... Its on a PCB so i cant change it easily. what would be the best way to simplify shifting out data to only the red, green, or blue pins if they are located every third bit? I would like it to be computationally light as I plan to use bit weighted modulation. E.g. 00010101 would turn the leds off for 128 + 64 + 32 cycles, on for 16, off for 8, on for 4, off for 2, and on for 1 cycle. (using the enable pin). The process is repeated for each color so it simplifies to: output data to red bits. BWM for 256 cycles. output data to blue bits. BWM for 256 cycles. output data to green bits. BWM for 256 cycles. All it does is display time so I need to have a way to easily display HH:MM using data from an RTC. I'm hoping that in itself is not too complicated. Thanks, Andrew
Wow, that's terrible. May I ask if you are using the components from the Elegoo kit? Or did you purchase the parts separately and attempting to run the lesson? I only ask because some displays are 3V, while the kit uses 5V.
Also, you want to be careful about your maximum current. 8 LEDs at 14.5mA is 116mA. If your 7-segment LED has a different voltage drop per segment, you'll need to recalculate the resistor values.
Hi, first at all, your lessons are great! I wanted to ask you if you can help me out with an issue I'm having with the 7 segment display. Before trying "fancy" connections/scripts, I followed the Eleego tutorial, without changing the default sketch. Once I loaded the sketch, the countdown showed: 9, 8, 7, 8, 9, 4 (without segment B), 3, 2, 1 (without segment B) I really cannot understand what the problem may be, since as I told you I did not deviate from the default code/connections.. Thanks! Alessandro
Segment @ 5:42 Wrong since Q3 connected to segment is ON when bit is 0; Also it's confusing when you say first sent bit goes to Q7 when in your animation first sent bit goes to Q0 first; Graph @6:07 wrong A should be 0 and C should be 1; hard enough to understand things when graphs are wrong too, otherwise i'm learning a lot.
Hi, I think I have an issue with the shift register. am using TPIC6C596 shift register and this register is capable of sending 8 bits. When I start sending 8 bits, I am getting only the last bit (i.e decimal point). But without the 8th bit (decimal point), my shift register can transfer whole 7 bits at a time. May i get the solution for this? When I implement in the proteus I am getting proper output. while doing the same in the hardware, I face the issue. For example, 0b00000110, I am getting the value as 1. if i do, 0b00000110 | 0b10000000, I am getting only .(dot) without 1. I should get 1.(one + dot). shiftOut(DS_pin, SHCP_pin, MSBFIRST, dec_digits[(buf[i] - 0x30)]|0x80); What will be the issue.? 0r my doubt is when supply goes to decimal point, all the other pins goes to OFF condition. When supply don’t go to the decimal point, all the other pins goes to ON condition. Is that correct?
I love the detail you go into as well as explanations. I will be checking out all your videos in this series!
Thank you for posting. A huge help for my circuits course!
I designed a 7 segment display that has RGB leds. My shift registers are hooked up in an order from Ared -> Agreen -> Ablue -> Bred -> Bgreen -> Bblue etc... Its on a PCB so i cant change it easily. what would be the best way to simplify shifting out data to only the red, green, or blue pins if they are located every third bit? I would like it to be computationally light as I plan to use bit weighted modulation. E.g. 00010101 would turn the leds off for 128 + 64 + 32 cycles, on for 16, off for 8, on for 4, off for 2, and on for 1 cycle. (using the enable pin). The process is repeated for each color so it simplifies to:
output data to red bits.
BWM for 256 cycles.
output data to blue bits.
BWM for 256 cycles.
output data to green bits.
BWM for 256 cycles.
All it does is display time so I need to have a way to easily display HH:MM using data from an RTC. I'm hoping that in itself is not too complicated.
Thanks,
Andrew
mine wont work and it heats up very fast, it almost caught fire
Wow, that's terrible. May I ask if you are using the components from the Elegoo kit? Or did you purchase the parts separately and attempting to run the lesson? I only ask because some displays are 3V, while the kit uses 5V.
Also, you want to be careful about your maximum current. 8 LEDs at 14.5mA is 116mA. If your 7-segment LED has a different voltage drop per segment, you'll need to recalculate the resistor values.
it a 5v numerator so i used a 220 ohm resistor i think
Hi, first at all, your lessons are great!
I wanted to ask you if you can help me out with an issue I'm having with the 7 segment display. Before trying "fancy" connections/scripts, I followed the Eleego tutorial, without changing the default sketch.
Once I loaded the sketch, the countdown showed:
9, 8, 7, 8, 9, 4 (without segment B), 3, 2, 1 (without segment B)
I really cannot understand what the problem may be, since as I told you I did not deviate from the default code/connections..
Thanks!
Alessandro
Sorry, all I can think of is that you'll need to re-check your wiring.
Segment @ 5:42 Wrong since Q3 connected to segment is ON when bit is 0; Also it's confusing when you say first sent bit goes to Q7 when in your animation first sent bit goes to Q0 first; Graph @6:07 wrong A should be 0 and C should be 1; hard enough to understand things when graphs are wrong too, otherwise i'm learning a lot.
Hi,
I think I have an issue with the shift register.
am using TPIC6C596 shift register and this register is capable of sending 8 bits. When I start sending 8 bits, I am getting only the last bit (i.e decimal point). But without the 8th bit (decimal point), my shift register can transfer whole 7 bits at a time. May i get the solution for this? When I implement in the proteus I am getting proper output. while doing the same in the hardware, I face the issue. For example, 0b00000110, I am getting the value as 1. if i do, 0b00000110 | 0b10000000, I am getting only .(dot) without 1. I should get 1.(one + dot). shiftOut(DS_pin, SHCP_pin, MSBFIRST, dec_digits[(buf[i] - 0x30)]|0x80); What will be the issue.?
0r my doubt is when supply goes to decimal point, all the other pins goes to OFF condition.
When supply don’t go to the decimal point, all the other pins goes to ON condition.
Is that correct?
I think that the TPIC6C596 shift register is a drain type shift register. It switches on the grounds for the LEDs rather than the source.
@@rickmorenojr Thanks
Too much procedure/ step with the arduiono.....make me confuse.....!!!!
hi
10:20
Pakistann
Pakistann