Go Down

Topic: Unlimited I/O pins (Read 4098 times) previous topic - next topic

Paulware

#15
Jul 06, 2012, 04:36 pm Last Edit: Jul 06, 2012, 08:26 pm by Paulware Reason: 1
The video describes why Serial IN/OUT should work.

Between the tlc5940 and 4051 could you place a pnp transistor?  Attaching the tlc5940 output to the base of the pnp transistor.  When tlc5940 is sinking current, pnp transistor would allow current to flow and could generate a '1' for the 4051.  In other cases would need a pull-down resistor when tlc5940 is not sinking current?

Or alternately connect tlc5940 to an inverter like SN54F04, whose output is then passed to 4051

Grumpy_Mike

Quote
Just maybe the 5490 will provide a stable output on your MUX control pins if you set a pin's grey scale to 0 or 4095

No you always get pulses, that is why there is a problem with inverting the drive sense, you can never turn the LEDs fully off. You don't notice that they are never fully on as one missing pulse in 4096 can't be seen.

Basically it is the wrong chip for the job, use normal shift registers if you want to drive a mux, don't waste the constant current drive on logic output.

Graynomad

#17
Jul 06, 2012, 11:41 pm Last Edit: Jul 06, 2012, 11:43 pm by Graynomad Reason: 1
Quote
The video describes why Serial IN/OUT should work.

OK, I didn't watch it because I don't have a lot of spare bandwidth for videos.

So you're using a flying lead, that gets around the problem. You could make it neater and automatic by using SMD headers if you can find some to match the Arduino ones in height.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

Paulware

#18
Jul 07, 2012, 03:27 am Last Edit: Jul 07, 2012, 04:02 am by Paulware Reason: 1
 Awesome.  This 74HCT164N shift register looks  cheap and should do the trick (its TTL rather than CMOS)?http://www.mouser.com/ProductDetail/NXP-Semiconductors/74HCT597N652/?qs=me8TqzrmIYXsoVpDH8r27nNtid1WYGOfPlFDvyOkLAs%3d

  Looks like there already is a library for the 74HC595 (http://arduino.cc/playground/Main/ShiftOutX).  Maybe I should go with them.  Or perhaps the library for the 74HC595 would work with the 74HCT597.  Mouser has 74HC595s for cheap alsohttp://www.mouser.com/ProductDetail/Toshiba/TC74HC595APFM/?qs=8GnAp0dDS0K%2fhdSuI3LXvWdzW04m25vQzTPL7BkTbzc%3d

 I see that an smd header is slightly offset: Is this what you are referring to?  In this way the lower serial out could connect to the upper serial in.  I could add another dip switch for the first shield or just not populate the smd header for the first shield.


Many thanks

Graynomad

#19
Jul 07, 2012, 06:05 am Last Edit: Jul 07, 2012, 08:55 am by Graynomad Reason: 1
If you are happy with standard shift regs have a look at the TPIC6B595, same functionality and pinout as the 74HC595 but a lot more drive capability, 150mA per pin or about 1W+ for the pack at 25C.

Speaking of which you may have trouble with 20 of these all sinking a lot of current as the backplane GND pins may not be rated that highly.

The headers and socket strips I'm talking about are vertical SMDs. Because the header is on one side of the PCB and the socket strip is on the other you can daisy-chain a signal up the stack. You can do that with a single pin although I doubt they make them in 1-pin sizes.

Samtec have them as do many other connector manufacturers.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

Grumpy_Mike

The 164 has no data latches where as the 595 has.
The common clock signal is going to struggle driving 20 shift registers, you need some 04s to buffer the chips in batches.

Paulware

Updated the schematic and board to use 74THC595.  Not sure if it is missing resistors, or if it is wired up correctly.  I used an example referenced in the tutorial.  Also changed D11 to D2 for first Serial in.
Used D4 and D7 for RCK, SCK (I didn't want to use any PWM outputs). If you could glance at this I appreciate it.  Loads up faster now. http://atmega.site40.net/?bookmark=Unlimited IO

Graynomad

I don't see any errors in the schematic, it would be nice to have an inverter on D4 instead of using D4 and D5 to select the 4051s, this would allow a straight 4-bit binary number to be used to select an analog channel plus give you back a digital output.

But unless you want to use an SMD gate that means a whole 14-pin DIP and it's not worth it I think.

EDIT: You could use a transistor to invert D4.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

Paulware

Thanks for the suggestion.  I added a pnp transistor and freed D5OUT.
Should I have a 1k resistor between D4OUT and the transistor?

Much appreciation http://atmega.site40.net/?bookmark=Unlimited IO

Graynomad

Yes you need a resistor on the base, 1k is OK.

As for the schematic I'd use an NPN, run...

Emitter to GND.
Collector to the 4051 EN pin and also pulled up with a 10k resistor.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

Paulware

Are 1k also needed between shift register and 3 pins that control mux input selection?
thanks

Graynomad

Rob Gray aka the GRAYnomad www.robgray.com

Paulware

ok..I added a 1k and a 10k and changed pnp to npn.
I think its ready.
Any other comments before I send this to iteadstudio?

http://atmega.site40.net/default.php?bookmark=Unlimited IO

Graynomad

The schematic looks OK to me, I didn't have time to look at the PCB though. Might do in the morning.

_______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

Paulware

#29
Aug 06, 2012, 06:39 am Last Edit: Aug 06, 2012, 06:43 am by Paulware Reason: 1
Got back the pcb from www.iteadstudio.com.  
I just wanted to check first that the shift register was wired correctly.
Here is a 30 sec youtube video
http://www.youtube.com/watch?v=8d9_fFQ2pi8&feature=channel&list=UL

Go Up