This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SN74HC165: SN74HC165 . How much load do the CLK and SH/LD pins place on a micro controller, do I need to buffer?

Part Number: SN74HC165
Other Parts Discussed in Thread: SN74LS04, SN74LS07, SN74HC244

Hello.

I am currently working on a project which I wish to cascade 20 x SN74HC165 shift registers, thus reading 160 inputs.

My concern is, can my micro controller drive 20 shift registers i.e the CLK and SH/LD pins, or should I use a buffer of some kind?

The micro I am using can apparently drive up to 40ma from a digital pin.

I have been pouring over the data sheet looking at current specifications on the 74HC165. I can see a value of 80ua max which I assume is the whole IC.

There is another value of 1ua max mentioned for 'input current'. Is this referring to how much current the CLK, SH/LD and CLK/EN pins place on the micro controller?

Thank you for your assistance.

Best Regards

  • Hi Paul,

    The CLK and SH/LD are CMOS high impedance inputs which you would refer to the input leakage current spec on the datasheet which you have listed here already as 1uA. although the input current is well supported by the MCU with 40mA drive, the concern would be on the fan out of 20 channels from the MCU which must overcome the input capacitance of the each of the pins whcih is ~ 10pF * 20 = 200pF max.
    You can try the MCU to drive this. I would be careful with skew between devices for the CLK signal to not create timing issues. Buffer can be used in the case where there are relaibility issues.
  • Thank you Shreyas.

    Your information was very helpful. I did not think of the capacitance issues.
    With a total of 200pf for 20 shift registers at 4mhz (my clock speed) this would represent approx 198 ohms of load. At 5 volts this would be around 25ma. It is within capability of my MCU but probably not good practice to do it this way.
    I should definitely consider a buffer. Would you suggest something like SN74LS04 Hex invertor or SN74LS07 Hex buffer? Which would be better?

    Best Regards,

    Paul
  • Hi Paul,
    This is a fairly common application called "fanout" where a buffer is used to drive multiple inputs to reduce capacitive loading. I would recommend using SN74HC244 (or '245 if you prefer a flow-through pinout) and spreading the load out across the 8 buffers in that device (connect all 8 inputs directly to the MCU). Note that you will want to try to match trace lengths for that number of shift registers to avoid delay issues.
  • Thank you Emrys.

    I very much appreciate your information.

    I will check out your suggestions.

    Best Regards,

    Paul