From: "Michael Culley"
References: <firstname.lastname@example.org> <email@example.com> <firstname.lastname@example.org> <email@example.com> <firstname.lastname@example.org>
Subject: Re: Keypad keys per IO pin
Date: Thu, 16 Jan 2003 12:09:59 +1100
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
Can't you just connect each key to a different combination if IO pins. eg
for 4 io lines:
Key1 Pins 1,2
Key2 Pins 1,3
Key3 Pins 1,4
Key4 Pins 2,3
Key5 Pins 2,4
Key6 Pins 3,4
If N is the number of IO lines then this gives (N-1)! keys, so for 6 pins
you get 120 keys
"Jonathan Kirwan" wrote in message
> On Wed, 15 Jan 2003 08:04:07 -0500, "NCS Radio"
> >Thanks for the analysis! That was great reading!
> Thanks for the site. It cast my mind off in a fun direction.
> >What is the "simplex" topology you refer to where you can read 15
> >w/6 I/O lines?
> A simplex is used in a precise way in algebraic topology. A
> line segment is 1-dim, a triangle is 2-dim, a tetrahedron is
> 3-dim, and so on.
> However, that's more than I was trying to say about it.
> Actually, I meant the 2-d "shadow" of one of these N-dim shapes.
> In 2-D, it's really easy. Just take any polygon and connect all
> the vertices together to all the other vertices. For a 4-sided
> polygon (a square will do), you have to cross-connect the
> opposing corners so you have six lines connecting four vertices.
> Make sense?
> (This simplex square is just a shadow image of the tetrahedron.
> To try your mind at it, just to be sure you "see" this, first
> draw a triangle and then place a "dot" in the center of it. Now
> draw a line from that center dot to each of the three vertices
> of the triangle. That's one kind of shadow of the tetrahedron.
> Now draw a square and cross connect the opposing corners, as I
> mentioned above. Now try and "see" that this simplex square is
> actually the same tetrahedron just rotated so that one of the
> diagonals is a "behind edge" and the other diagonal is a "front
> edge" oriented precisely. If you do this, I think you'll see
> that both of these are just two special shadows of the same kind
> of 3-d object.)
> Anyway, getting back to your question, take those same 5 I/O
> lines. Draw a pentagon and cross connect all the vertices so
> that you have a "star" in side it. This gives you a total of 10
> lines. Now imagine that each of these lines is a connected
> switch, instead. That's 10 switches. Connect the I/O lines to
> the vertices. Now, you can scan the switches by activating one
> and only one I/O line as an output, one at a time, and "seeing"
> which of the other four inputs show a connection.
> With 6 I/O lines, it's a hexagon with the inscribed lines, which
> is six switches around the perimeter and another nine switches
> on the inscribed lines, for a total of up to 15 switches with 6
> I/O lines. You can actually detect some combinations of two
> switches being depressed this way. But it takes some effort to
> maximize that ability.
> You get (N^2-N)/2 switches with N I/O lines, this way, with no
> extra parts. You can use the same topology, with two oppositely
> arranged LEDs along each line or edge and with small valued
> resistors going from each I/O line to a vertex in order to
> selectively control up to (N^2-N) LEDs, as well. Typically,
> this is good if you only need one of them ON at a time. But you
> can do multiplexing tricks along with enabling multiple edges at
> a time to get some interesting effects.