[ 3 / biz / cgl / ck / diy / fa / ic / jp / lit / sci / vr / vt ] [ index / top / reports ] [ become a patron ] [ status ]
2023-11: Warosu is now out of extended maintenance.

/diy/ - Do It Yourself

Search:


View post   

>> No.800374 [View]
File: 306 KB, 1280x720, 5.jpg [View same] [iqdb] [saucenao] [google]
800374

>>800365
I2C is more complicated than SPI. You can't use I2C for generic shift register interfaces; only ICs designed to to accept I2C.

SPI is just the regular shift register interface where you have a clock and data wire. Send a byte by changing the data line to each bit with a clock pulse between each change. An SPI port is just asynchronous hardware that will do this for you instead of an implementation in code (bit banging).

For shift registers I have two suggestions:
74HC164. This is a standard eight bit shift register. It doesn't run above 7v so you will need something like a ULN2803 or row of transistors to drive 24v LEDs. You will also probably need current limiting resistors because you're working with voltage source outputs.

WS2803. This is an IC specifically designed for running LEDs with all the bells and whistles. It has eighteen outputs (enough for six RGB LEDs). The logic power supply is separated from the output supply so it can drive up to 30v 30mA LEDs with no additional hardware. It uses current outputs so you can connect it straight to LEDs with no resistor. It behaves like a shift register, but you push in 144 bits (eight bits per each of the eighteen outputs). This is because it has internal PWM dimming capabilities; LEDs can be at 256 different brightness levels.

Navigation
View posts[+24][+48][+96]