<div dir="ltr">Adam,<div><br></div><div>The only thing I can think of that may work in your situation are 8 bit latching shift registers. Here are two links to PDF datasheets that could help.</div><div><br></div><div><a href="https://www.fairchildsemi.com/datasheets/MM/MM74HC595.pdf">https://www.fairchildsemi.com/datasheets/MM/MM74HC595.pdf</a><br></div><div><br></div><div><a href="http://www.ti.com/lit/ds/symlink/sn74ls673.pdf">http://www.ti.com/lit/ds/symlink/sn74ls673.pdf</a><br></div><div><br></div><div>~Carl</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 30, 2015 at 2:08 PM, Adam Haile via TriEmbed <span dir="ltr"><<a href="mailto:triembed@triembed.org" target="_blank">triembed@triembed.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Oh... yeah. Important part. The data in the chip needs to be non-volatile!<div>So, the data would be stored on each chip individually and then read serially. </div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 30, 2015 at 2:07 PM, Brian <span dir="ltr"><<a href="mailto:triembed@undecidedgames.net" target="_blank">triembed@undecidedgames.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">If you can spare three pins, shift registers are (maybe) exactly what you need.<br>
<br>
You didn't mention how the bytes get there to begin with, which does affect the answer.<br>
<br>
Most (?) serial-out shift registers support chaining out-of-the-box; they have a latch signal to preload their internal flip-flops as well as an external serial input.  By their very nature, the first (n) bits clocked out will be their own bits, followed by whatever bits clock in on the serial input.  Natural chaining.<br>
<br>
If you have parallel inputs that can all be latched at once, a single latch + clock-out + data-in is all you need on the host MCU.<br>
<br>
If the data comes into the registers serially, well, that's a bit more complicated.<br>
<br>
-B<br>
<br>
<br>
On 11/30/2015 1:35 PM, Adam Haile via TriEmbed wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I have /no/ idea if this technically is something that exists, but I<span class=""><span><br>
have to imagine it's possible.<br>
<br>
I need a small, cheap (isn't it always?) chip that can store a few bytes<br>
of data. Actually a single byte is all I need. And can be accessed kind<br>
of like a shift register where I can query an unknown number of devices<br>
int the chain and get, in order, the byte that each one stores.<br>
<br>
The intent here is  so that I can have multiple, pre-wired, sets of LEDs<br>
with an arbitrary order and number of LEDs on each. This chip would<br>
store the LED count for each pre-wired section. Without knowing anything<br>
about the pre-wired sections, I need to be able to poll all these chips<br>
and from that know how many pre-wired sections there are, how many LEDs<br>
each has, and in what order. The data returned just needs to basically<br>
look like: 48, 36, 24, 18 (4 sections with 48, 36, 24, 18 LEDs, in that<br>
order).<br>
<br>
I assume it would use an SPI-like interface... not exactly since I can't<br>
use chip selects. Since I would have an arbitrary number. A 2 wire<br>
interface would be great. Is it possible to do something like this with<br>
I2C? Basically, I know what I need, but don't know what to call it.<br>
<br>
Any thoughts?<br>
<br>
<br>
<br>
<br></span></span>
_______________________________________________<br>
Triangle, NC Embedded Computing mailing list<br>
<a href="mailto:TriEmbed@triembed.org" target="_blank">TriEmbed@triembed.org</a><br>
<a href="http://mail.triembed.org/mailman/listinfo/triembed_triembed.org" rel="noreferrer" target="_blank">http://mail.triembed.org/mailman/listinfo/triembed_triembed.org</a><br>
TriEmbed web site: <a href="http://TriEmbed.org" rel="noreferrer" target="_blank">http://TriEmbed.org</a><br>
<br>
</blockquote>
<br>
</blockquote></div><br></div>
<br>_______________________________________________<br>
Triangle, NC Embedded Computing mailing list<br>
<a href="mailto:TriEmbed@triembed.org">TriEmbed@triembed.org</a><br>
<a href="http://mail.triembed.org/mailman/listinfo/triembed_triembed.org" rel="noreferrer" target="_blank">http://mail.triembed.org/mailman/listinfo/triembed_triembed.org</a><br>
TriEmbed web site: <a href="http://TriEmbed.org" rel="noreferrer" target="_blank">http://TriEmbed.org</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">-------------------------------------------------------------------------------<br>Carl J. Nobile (Software Engineer)<br><a href="mailto:carl.nobile@gmail.com" target="_blank">carl.nobile@gmail.com</a><br>-------------------------------------------------------------------------------</div>
</div>