Q: simple way to switch between 6 eproms?

E

Eddy

Guest
I salvaged a nice little pc board that houses 6 eproms, all the
data,address lines,vcc,gnd lines are connected already, with the
addition of a LS138 selector thats tied to each /ce of every eproms.
MY application can only read one eprom at once, so, is there a way I
can devise a physical switch to connect to the LS138 or otherwise to
select each eprom individually & sequentially? in other words, when I
would press the one switch, I would select the 1st, 2nd, 3rd .... 6th
eprom, and maybe just put a LED for each eprom to display which one is
being accessed. IS this possible?
any ideas, suggestions ..links, schems much appreciated..
THanks
 
"Eddy" <gatezeddy@hotmail.com> wrote in message
news:97e43a5a.0312062129.8d77087@posting.google.com...
I salvaged a nice little pc board that houses 6 eproms, all the
data,address lines,vcc,gnd lines are connected already, with the
addition of a LS138 selector thats tied to each /ce of every eproms.
MY application can only read one eprom at once, so, is there a way I
can devise a physical switch to connect to the LS138 or otherwise to
select each eprom individually & sequentially? in other words, when I
would press the one switch, I would select the 1st, 2nd, 3rd .... 6th
eprom, and maybe just put a LED for each eprom to display which one is
being accessed. IS this possible?
any ideas, suggestions ..links, schems much appreciated..
THanks
Your eproms have a pin labeled /CE (Chip Enable). This pin is active low,
so you would switch it to ground to enable a specific eprom, and bring the
same pin to logic high on all the others to disable them.
Easier to use a 2P6Pos rotart switch rather than trying to implement a
series of momentary push switches. Use one section of the switch to select
the /CE pin, and the other to turn on the LED for that eprom.

Tweetldee
Tweetldee at att dot net (Just subsitute the appropriate characters in the
address)

Never take a laxative and a sleeping pill at the same time!!
 
Tweetldee <dgmason99@att99.net> wrote in message
news:ObAAb.161436$Ec1.6274194@bgtnsc05-news.ops.worldnet.att.net...
"Eddy" <gatezeddy@hotmail.com> wrote in message
news:97e43a5a.0312062129.8d77087@posting.google.com...
I salvaged a nice little pc board that houses 6 eproms, all the
data,address lines,vcc,gnd lines are connected already, with the
addition of a LS138 selector thats tied to each /ce of every eproms.
MY application can only read one eprom at once, so, is there a way I
can devise a physical switch to connect to the LS138 or otherwise to
select each eprom individually & sequentially? in other words, when I
would press the one switch, I would select the 1st, 2nd, 3rd .... 6th
eprom, and maybe just put a LED for each eprom to display which one is
being accessed. IS this possible?

Your eproms have a pin labeled /CE (Chip Enable). This pin is active low,
so you would switch it to ground to enable a specific eprom, and bring the
same pin to logic high on all the others to disable them.
Easier to use a 2P6Pos rotart switch rather than trying to implement a
series of momentary push switches. Use one section of the switch to
select
the /CE pin, and the other to turn on the LED for that eprom.

Tweetldee
Or wire a BCD (binary code decimal) switch to the ABC inputs of the LS138
chip and the switch common to 0V. Don't forget to wire a pull-up resistor
to each ABC inputs. If the switch contacts are all open for position '0'
and clossed for '7' the output sequence might be 7,6,5,4,3,2,1 & 0 instead
of 0,1,2,3,4,5,6 & 7. To fix, just reverse the EPROM socket positions.

Gerhad van den Berg
 
On 6 Dec 2003 21:29:31 -0800, gatezeddy@hotmail.com (Eddy) wrote:

I salvaged a nice little pc board that houses 6 eproms, all the
data,address lines,vcc,gnd lines are connected already, with the
addition of a LS138 selector thats tied to each /ce of every eproms.
MY application can only read one eprom at once, so, is there a way I
can devise a physical switch to connect to the LS138 or otherwise to
select each eprom individually & sequentially? in other words, when I
would press the one switch, I would select the 1st, 2nd, 3rd .... 6th
eprom, and maybe just put a LED for each eprom to display which one is
being accessed. IS this possible?
---
Yes.

The easiest way would be to use a BCD coded rotary or thumbwheel switch
with true outputs with the three LSBs connected to the '138's address
inputs. You'd need to pull down the '138's inputs and connect the
switch's common to Vcc. You won't find any switches with only six
positions, but there are some with stops. A minor complication, if the
all-zeroes input to the '138 is used to select one of the EPROMs, will
be that with your switch indicating "0" one of the EPROMs will be
selected, so you'll need to think of your EPROMS as going from zero to
five instead of from one to six. If you use LEDs to indicate which
EPROM is hot, though, that won't be a problem. To do that I'd use
high-efficiency 2mA LED's wired to the '138 outputs, like this: (View in
a non-proportional font like Courier)

Vcc
|
[1k5]
|
|A
[LED]
_ | __ __
Yn>-----+-----CEn> TO EPROM CE

But...

You've indicated that you want to push a button to switch EPROMs, so in
order to do that you could use a debounced pushbutton switch to drive
the clock input of a four bit binary counter and use the counter's three
LSBs to drive the '138 on the board. If you wanted to keep all the LED
wiring off the board you could wire an additional '138 to the counter's
Q outputs to drive the LED's.
--
John Fields
Professional circuit designer
http://austininstruments.com
 
On Sun, 07 Dec 2003 10:16:20 -0600, John Fields
<jfields@austininstruments.com> wrote:


You've indicated that you want to push a button to switch EPROMs, so in
order to do that you could use a debounced pushbutton switch to drive
the clock input of a four bit binary counter and use the counter's three
LSBs to drive the '138 on the board. If you wanted to keep all the LED
wiring off the board you could wire an additional '138 to the counter's
Q outputs to drive the LED's.
---
Error:

If you use a 4 bit counter clocked sequentially here's what you'll get:

CLK COUNT OUT '138 IN LED ON

N QD QC QB QA A3 A2 A0 N 6 5 4 3 2 1
-------------------------------------------------------
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 1 0 0 1 1 0 0 0 0 1 0
2 0 0 1 0 0 1 0 2 0 0 0 1 0 0
3 0 0 1 1 0 1 1 3 0 0 1 0 0 0
4 0 1 0 0 1 0 0 4 0 1 0 0 0 0
5 0 1 0 1 1 0 1 5 1 0 0 0 0 0
6 0 1 1 0 1 1 0 6 0 0 0 0 0 0
7 0 1 1 1 1 1 1 7 0 0 0 0 0 0
8 1 0 0 0 0 0 0 0 0 0 0 0 0 1
9 1 0 0 1 0 0 1 1 0 0 0 0 1 0
10 1 0 1 0 0 1 0 2 0 0 0 1 0 0
11 1 0 1 1 0 1 1 3 0 0 1 0 0 0
12 1 1 0 0 1 0 0 4 0 1 0 0 0 0
13 1 1 0 1 1 0 1 5 1 0 0 0 0 0
14 1 1 1 0 1 1 0 6 0 0 0 0 0 0
15 1 1 1 1 1 1 1 7 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

So, when the counter counts to 6, 7, 14, and 15, no EPROM will be
selected and no LED will be lit. The easy way around that problem is to
clear the counter when it gets to six, but you have to be careful with
decoding glitches if you clear the counter asynchronously and it takes a
little extra circuitry if you want to clear it synchronously. If you
want to do it that way, (as opposed to using an encoding switch) post a
request and I'll post a schematic for you on
alt.binaries.schematics.electronic.

--
John Fields
 
John Fields <jfields@austininstruments.com> wrote in message news:<f5g6tv46ctpuiuql2ab6lhjvklhcfcnukh@4ax.com>...
On 6 Dec 2003 21:29:31 -0800, gatezeddy@hotmail.com (Eddy) wrote:

I salvaged a nice little pc board that houses 6 eproms, all the
data,address lines,vcc,gnd lines are connected already, with the
addition of a LS138 selector thats tied to each /ce of every eproms.
MY application can only read one eprom at once, so, is there a way I
can devise a physical switch to connect to the LS138 or otherwise to
select each eprom individually & sequentially? in other words, when I
would press the one switch, I would select the 1st, 2nd, 3rd .... 6th
eprom, and maybe just put a LED for each eprom to display which one is
being accessed. IS this possible?

---
Yes.

The easiest way would be to use a BCD coded rotary or thumbwheel switch
with true outputs with the three LSBs connected to the '138's address
inputs. You'd need to pull down the '138's inputs and connect the
switch's common to Vcc. You won't find any switches with only six
positions, but there are some with stops. A minor complication, if the
all-zeroes input to the '138 is used to select one of the EPROMs, will
be that with your switch indicating "0" one of the EPROMs will be
selected, so you'll need to think of your EPROMS as going from zero to
five instead of from one to six. If you use LEDs to indicate which
EPROM is hot, though, that won't be a problem. To do that I'd use
high-efficiency 2mA LED's wired to the '138 outputs, like this: (View in
a non-proportional font like Courier)

Vcc
|
[1k5]
|
|A
[LED]
_ | __ __
Yn>-----+-----CEn> TO EPROM CE

But...

You've indicated that you want to push a button to switch EPROMs, so in
order to do that you could use a debounced pushbutton switch to drive
the clock input of a four bit binary counter and use the counter's three
LSBs to drive the '138 on the board. If you wanted to keep all the LED
wiring off the board you could wire an additional '138 to the counter's
Q outputs to drive the LED's.

Hi John, the second option with pushbutton is exactly what I had in mind.
can you give me more details on the debounced switch?
Will a 74ls90 or a 161(asynchronous) do? or any others you could recommend?
really appreciate it.
thanks alot
 
John Fields <jfields@austininstruments.com> wrote in message news:<bs47tvsrm342lht0qbba1qq1k15i24iddr@4ax.com>...
On Sun, 07 Dec 2003 10:16:20 -0600, John Fields
jfields@austininstruments.com> wrote:


You've indicated that you want to push a button to switch EPROMs, so in
order to do that you could use a debounced pushbutton switch to drive
the clock input of a four bit binary counter and use the counter's three
LSBs to drive the '138 on the board. If you wanted to keep all the LED
wiring off the board you could wire an additional '138 to the counter's
Q outputs to drive the LED's.

---
Error:

If you use a 4 bit counter clocked sequentially here's what you'll get:

CLK COUNT OUT '138 IN LED ON

N QD QC QB QA A3 A2 A0 N 6 5 4 3 2 1
-------------------------------------------------------
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 1 0 0 1 1 0 0 0 0 1 0
2 0 0 1 0 0 1 0 2 0 0 0 1 0 0
3 0 0 1 1 0 1 1 3 0 0 1 0 0 0
4 0 1 0 0 1 0 0 4 0 1 0 0 0 0
5 0 1 0 1 1 0 1 5 1 0 0 0 0 0
6 0 1 1 0 1 1 0 6 0 0 0 0 0 0
7 0 1 1 1 1 1 1 7 0 0 0 0 0 0
8 1 0 0 0 0 0 0 0 0 0 0 0 0 1
9 1 0 0 1 0 0 1 1 0 0 0 0 1 0
10 1 0 1 0 0 1 0 2 0 0 0 1 0 0
11 1 0 1 1 0 1 1 3 0 0 1 0 0 0
12 1 1 0 0 1 0 0 4 0 1 0 0 0 0
13 1 1 0 1 1 0 1 5 1 0 0 0 0 0
14 1 1 1 0 1 1 0 6 0 0 0 0 0 0
15 1 1 1 1 1 1 1 7 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

So, when the counter counts to 6, 7, 14, and 15, no EPROM will be
selected and no LED will be lit. The easy way around that problem is to
clear the counter when it gets to six, but you have to be careful with
decoding glitches if you clear the counter asynchronously and it takes a
little extra circuitry if you want to clear it synchronously. If you
want to do it that way, (as opposed to using an encoding switch) post a
request and I'll post a schematic for you on
alt.binaries.schematics.electronic.


John, I have no access to al.binaries.schematics.electronic, just
explain the wiring, I should be able to pick it up.
But what about a 74LS90 it counts up to 9 and has a master set/reset
and by tying Qa,Qc to the master reset Mr1,Mr2
should clear and start over at 0 ?
what do you think? give me more info
thanks again..
 
On 7 Dec 2003 21:21:31 -0800, gatezeddy@hotmail.com (Eddy) wrote:

John Fields <jfields@austininstruments.com> wrote in message news:<bs47tvsrm342lht0qbba1qq1k15i24iddr@4ax.com>...
On Sun, 07 Dec 2003 10:16:20 -0600, John Fields
jfields@austininstruments.com> wrote:


You've indicated that you want to push a button to switch EPROMs, so in
order to do that you could use a debounced pushbutton switch to drive
the clock input of a four bit binary counter and use the counter's three
LSBs to drive the '138 on the board. If you wanted to keep all the LED
wiring off the board you could wire an additional '138 to the counter's
Q outputs to drive the LED's.

---
Error:

If you use a 4 bit counter clocked sequentially here's what you'll get:

CLK COUNT OUT '138 IN LED ON

N QD QC QB QA A3 A2 A0 N 6 5 4 3 2 1
-------------------------------------------------------
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 1 0 0 1 1 0 0 0 0 1 0
2 0 0 1 0 0 1 0 2 0 0 0 1 0 0
3 0 0 1 1 0 1 1 3 0 0 1 0 0 0
4 0 1 0 0 1 0 0 4 0 1 0 0 0 0
5 0 1 0 1 1 0 1 5 1 0 0 0 0 0
6 0 1 1 0 1 1 0 6 0 0 0 0 0 0
7 0 1 1 1 1 1 1 7 0 0 0 0 0 0
8 1 0 0 0 0 0 0 0 0 0 0 0 0 1
9 1 0 0 1 0 0 1 1 0 0 0 0 1 0
10 1 0 1 0 0 1 0 2 0 0 0 1 0 0
11 1 0 1 1 0 1 1 3 0 0 1 0 0 0
12 1 1 0 0 1 0 0 4 0 1 0 0 0 0
13 1 1 0 1 1 0 1 5 1 0 0 0 0 0
14 1 1 1 0 1 1 0 6 0 0 0 0 0 0
15 1 1 1 1 1 1 1 7 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

So, when the counter counts to 6, 7, 14, and 15, no EPROM will be
selected and no LED will be lit. The easy way around that problem is to
clear the counter when it gets to six, but you have to be careful with
decoding glitches if you clear the counter asynchronously and it takes a
little extra circuitry if you want to clear it synchronously. If you
want to do it that way, (as opposed to using an encoding switch) post a
request and I'll post a schematic for you on
alt.binaries.schematics.electronic.



John, I have no access to al.binaries.schematics.electronic, just
explain the wiring, I should be able to pick it up.
But what about a 74LS90 it counts up to 9 and has a master set/reset
and by tying Qa,Qc to the master reset Mr1,Mr2
should clear and start over at 0 ?
what do you think? give me more info
thanks again..
---
If you decode 0101 and use it to clear an asynchronous counter like an
LS90, then as soon as it counts to 5 it will reset to 0, which means
that you'll only enable the sixth EPROM for an instant before it jumps
to the first, so that's not a viable solution. If you decode 0110
there's no guarantee that the transition from 0011 to 0100 will be
glitch-free, so you could wind up resetting early there as well.

I think the easiest solution would be to decode 0101 and send that
decode to either the synchronous preset or synchronous reset input of a
counter. You could use the '138 to do the decoding and send /Y5 to the
/RESET input of a '162 or '163 or to the /PRESET input of a '160, '161,
'162, or 163. If you go the /PRESET route you'll need to connect the
broadside load inputs to ground.

Here's the truth table for either way:

COUNT OUT '138 IN LED ON
QD QC QB QA A3 A2 A0 N 6 5 4 3 2 1
---------------------------------------------------
0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 1 0 0 1 1 0 0 0 0 1 0
0 0 1 0 0 1 0 2 0 0 0 1 0 0
0 0 1 1 0 1 1 3 0 0 1 0 0 0
0 1 0 0 1 0 0 4 0 1 0 0 0 0
0 1 0 1 1 0 1 5 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 1 0 0 1 1 0 0 0 0 1 0
0 0 1 0 0 1 0 2 0 0 0 1 0 0
0 0 1 1 0 1 1 3 0 0 1 0 0 0
0 1 0 0 1 0 0 4 0 1 0 0 0 0
0 1 0 1 1 0 1 5 1 0 0 0 0 0

The classical way to get a clean clock from a switch is to use a SPDT
switch with an RS latch, like this, where A and B are the inputs and Y
are the outputs of 2-input NANDs.


Vcc Vcc
| |
[R] [R]
| |
+-->\ <--+--A
| NC \ NO Y--+--->CLK
| O +--B |
| | | |
| GND | A--+
| +--Y
+----------------B

If you only have a SPST switch, you could use a 7555 to debounce it.

--
John Fields
 
In article <gln8tvoueksrcoh76v4vmggr0m3h2ei2ee@4ax.com>,
jfields@austininstruments.com says...
On 7 Dec 2003 21:21:31 -0800, gatezeddy@hotmail.com (Eddy) wrote:
John, I have no access to al.binaries.schematics.electronic, just
explain the wiring, I should be able to pick it up.
But what about a 74LS90 it counts up to 9 and has a master set/reset
and by tying Qa,Qc to the master reset Mr1,Mr2
should clear and start over at 0 ?
what do you think? give me more info
thanks again..

---
If you decode 0101 and use it to clear an asynchronous counter like an
LS90, then as soon as it counts to 5 it will reset to 0, which means
that you'll only enable the sixth EPROM for an instant before it jumps
to the first, so that's not a viable solution. If you decode 0110
there's no guarantee that the transition from 0011 to 0100 will be
glitch-free, so you could wind up resetting early there as well.
Yes, one should avoid any async paths. Though...
I think the easiest solution would be to decode 0101 and send that
decode to either the synchronous preset or synchronous reset input of a
counter. You could use the '138 to do the decoding and send /Y5 to the
/RESET input of a '162 or '163 or to the /PRESET input of a '160, '161,
'162, or 163. If you go the /PRESET route you'll need to connect the
broadside load inputs to ground.
Depending on the PROM, a shift register loaded with 100000 (or
similar), with feedback tapped from the appropriate bit, with the
Q0-5 tied to a CS pin on the PROMs may be simpler.

If you only have a SPST switch, you could use a 7555 to debounce it.
....or do the whole thing in a PIC. ;-)

--
Keith
 
On Mon, 8 Dec 2003 22:29:36 -0500, Keith R. Williams <krw@attglobal.net>
wrote:


Depending on the PROM, a shift register loaded with 100000 (or
similar), with feedback tapped from the appropriate bit, with the
Q0-5 tied to a CS pin on the PROMs may be simpler.
---
The OP said that the board he has already has a '138 installed and wired
to do the /CS decodes, so removing it just to be able to outboard a
shift register to do the /CS thing seems seems to be an ugly way to go
about it, no?

...or do the whole thing in a PIC. ;-)
Aaaarrghhhh!!!!^)

--
John Fields
 
John Fields wrote:
....
So, when the counter counts to 6, 7, 14, and 15, no EPROM will be
selected and no LED will be lit. The easy way around that problem is to
clear the counter when it gets to six, but you have to be careful with
decoding glitches if you clear the counter asynchronously and it takes a
little extra circuitry if you want to clear it synchronously.
I doubt if a glitch at 110 would be a problem, since you're clocking
it with a pushbutton.

Cheers!
Rich

If you
want to do it that way, (as opposed to using an encoding switch) post a
request and I'll post a schematic for you on
alt.binaries.schematics.electronic.

--
John Fields
 
In article <rcjatv8jhgbj0cb0p09vn7l3gioa6ftf6s@4ax.com>,
jfields@austininstruments.com says...
On Mon, 8 Dec 2003 22:29:36 -0500, Keith R. Williams <krw@attglobal.net
wrote:


Depending on the PROM, a shift register loaded with 100000 (or
similar), with feedback tapped from the appropriate bit, with the
Q0-5 tied to a CS pin on the PROMs may be simpler.
---
The OP said that the board he has already has a '138 installed and wired
to do the /CS decodes, so removing it just to be able to outboard a
shift register to do the /CS thing seems seems to be an ugly way to go
about it, no?
Ok, since it's already ugly...
...or do the whole thing in a PIC. ;-)

Aaaarrghhhh!!!!^)
The right answer is never ugly! ;-)

--
Keith
 
On Tue, 09 Dec 2003 05:01:45 GMT, Rich Grise <spamdump@nowhere.net>
wrote:

John Fields wrote:

...
So, when the counter counts to 6, 7, 14, and 15, no EPROM will be
selected and no LED will be lit. The easy way around that problem is to
clear the counter when it gets to six, but you have to be careful with
decoding glitches if you clear the counter asynchronously and it takes a
little extra circuitry if you want to clear it synchronously.

I doubt if a glitch at 110 would be a problem, since you're clocking
it with a pushbutton.
---
It's not the glitch at the 101 to 110 transition that would be a
problem, it's the possibility of one at the 011 to 101 transition if the
MSB goes high before the middle bit goes low.

--
John Fields
 
On Tue, 9 Dec 2003 00:09:49 -0500, Keith R. Williams <krw@attglobal.net>
wrote:

In article <rcjatv8jhgbj0cb0p09vn7l3gioa6ftf6s@4ax.com>,
jfields@austininstruments.com says...
On Mon, 8 Dec 2003 22:29:36 -0500, Keith R. Williams <krw@attglobal.net
wrote:


Depending on the PROM, a shift register loaded with 100000 (or
similar), with feedback tapped from the appropriate bit, with the
Q0-5 tied to a CS pin on the PROMs may be simpler.
---
The OP said that the board he has already has a '138 installed and wired
to do the /CS decodes, so removing it just to be able to outboard a
shift register to do the /CS thing seems seems to be an ugly way to go
about it, no?

Ok, since it's already ugly...
---
??? AFAIK he's got a PCB with the address inputs of the 138 brought out
to IO's, So all he has to do is build what he needs and, ostensibly
plug the PCB into it. What's ugly about that?
---

...or do the whole thing in a PIC. ;-)

Aaaarrghhhh!!!!^)

The right answer is never ugly! ;-)
---
Ergo, using a PIC here is not the right answer!

--
John Fields
 
In article <0lmbtvsu0dtfsc9r0kmkul4pavdqc2k6ug@4ax.com>,
jfields@austininstruments.com says...
On Tue, 9 Dec 2003 00:09:49 -0500, Keith R. Williams <krw@attglobal.net
wrote:

In article <rcjatv8jhgbj0cb0p09vn7l3gioa6ftf6s@4ax.com>,
jfields@austininstruments.com says...
On Mon, 8 Dec 2003 22:29:36 -0500, Keith R. Williams <krw@attglobal.net
wrote:


Depending on the PROM, a shift register loaded with 100000 (or
similar), with feedback tapped from the appropriate bit, with the
Q0-5 tied to a CS pin on the PROMs may be simpler.
---
The OP said that the board he has already has a '138 installed and wired
to do the /CS decodes, so removing it just to be able to outboard a
shift register to do the /CS thing seems seems to be an ugly way to go
about it, no?

Ok, since it's already ugly...
---
??? AFAIK he's got a PCB with the address inputs of the 138 brought out
to IO's, So all he has to do is build what he needs and, ostensibly
plug the PCB into it. What's ugly about that?
---
Evidently it was designed for another purpose? It's ugly for his use,
but re-use isn't so.

Whay about a Gray counter? That would solve the asynchronous thing.

...or do the whole thing in a PIC. ;-)

Aaaarrghhhh!!!!^)

The right answer is never ugly! ;-)

---
Ergo, using a PIC here is not the right answer!
John, John, John. You know better than this! Whatever the question,
the answer is "Use a PIC". Somehow I don't think you agree with this
fundamental truth of the universe (and SED). ;-)

--
Keith

P.S. Never used a PIC, myself. 8051s, yes (UCs make it easy to do the
trivia, so I can get on with the "fun" stuff).
 
gatezeddy@hotmail.com (Eddy) wrote in message news:<97e43a5a.0312071802.1d5777cd@posting.google.com>...
John Fields <jfields@austininstruments.com> wrote in message news:<f5g6tv46ctpuiuql2ab6lhjvklhcfcnukh@4ax.com>...
On 6 Dec 2003 21:29:31 -0800, gatezeddy@hotmail.com (Eddy) wrote:

I salvaged a nice little pc board that houses 6 eproms, all the
data,address lines,vcc,gnd lines are connected already, with the
addition of a LS138 selector thats tied to each /ce of every eproms.
MY application can only read one eprom at once, so, is there a way I
can devise a physical switch to connect to the LS138 or otherwise to
select each eprom individually & sequentially? in other words, when I
would press the one switch, I would select the 1st, 2nd, 3rd .... 6th
eprom, and maybe just put a LED for each eprom to display which one is
being accessed. IS this possible?

---
Yes.

The easiest way would be to use a BCD coded rotary or thumbwheel switch
with true outputs with the three LSBs connected to the '138's address
inputs. You'd need to pull down the '138's inputs and connect the
switch's common to Vcc. You won't find any switches with only six
positions, but there are some with stops. A minor complication, if the
all-zeroes input to the '138 is used to select one of the EPROMs, will
be that with your switch indicating "0" one of the EPROMs will be
selected, so you'll need to think of your EPROMS as going from zero to
five instead of from one to six. If you use LEDs to indicate which
EPROM is hot, though, that won't be a problem. To do that I'd use
high-efficiency 2mA LED's wired to the '138 outputs, like this: (View in
a non-proportional font like Courier)

Vcc
|
[1k5]
|
|A
[LED]
_ | __ __
Yn>-----+-----CEn> TO EPROM CE

But...

You've indicated that you want to push a button to switch EPROMs, so in
order to do that you could use a debounced pushbutton switch to drive
the clock input of a four bit binary counter and use the counter's three
LSBs to drive the '138 on the board. If you wanted to keep all the LED
wiring off the board you could wire an additional '138 to the counter's
Q outputs to drive the LED's.


Hi John, the second option with pushbutton is exactly what I had in mind.
can you give me more details on the debounced switch?
Will a 74ls90 or a 161(asynchronous) do? or any others you could recommend?
really appreciate it.
thanks alot

Guys, definitely no pic or micros,
I just want to use a few chips with some gates to do this. The board
is actually part of a data archiving module, and there is a ls138 tied
to each eproms /cs already for their selection.
John, I wired the board using a switch to a quad 2-input 4093 NAND
schmitt trigger feeding a 74HCT161(the only one I could get) Qa,Qb,Qc
feed the LS138 and for some reason all the LED's come ON at the same
time, any suggestions for caps and resistor values?
I've wired the CAThode to the resistor to +Vcc and the anode to the
output of the LS138 going to the wouldbe /CS.
Just a question about the LS138, according to the truth table, I need
to wire E1(Lo),E2(Lo)E3(hi) for the outputs 0-5 to go LO..I guess
thats right? also, the HCT161, I've only wired the clk(input from the
4093) and the outputs to the LEDs..am I missing anything?
thanks for the help
 
On 10 Dec 2003 12:53:04 -0800, gatezeddy@hotmail.com (Eddy) wrote:


Guys, definitely no pic or micros,
I just want to use a few chips with some gates to do this. The board
is actually part of a data archiving module, and there is a ls138 tied
to each eproms /cs already for their selection.
John, I wired the board using a switch to a quad 2-input 4093 NAND
schmitt trigger feeding a 74HCT161(the only one I could get) Qa,Qb,Qc
feed the LS138 and for some reason all the LED's come ON at the same
time, any suggestions for caps and resistor values?
I've wired the CAThode to the resistor to +Vcc and the anode to the
output of the LS138 going to the wouldbe /CS.
Just a question about the LS138, according to the truth table, I need
to wire E1(Lo),E2(Lo)E3(hi) for the outputs 0-5 to go LO..I guess
thats right? also, the HCT161, I've only wired the clk(input from the
4093) and the outputs to the LEDs..am I missing anything?
---
Yes, the 161's ENABLE, /CLEAR, and /LOAD input all have to be wired.
I've posted a schematic to alt.binaries.schematics.electronic, but since
you can't get that group I'll post it to you via email also.

I've shown the resistors for the LEDs as 1.5K (for 2mA LEDs) but if
you're using higher current LEDs you could make the resistors smaller,
but you'll need to be careful not to allow the voltage out of the '138
to rise to too high a value to turn on the EPROM you select as well as
not force the 138's outputs to sink more current than they're supposed
to. (8mA total, for the LED _and_ the Eprom)

Also, I'm assuming that the '138 I've shown is the one on the board and
that the only other thing it's driving besides the EPROMS is the LEDs.

Good luck, and post back if you have any more problems.

--
John Fields
 
John Fields <jfields@austininstruments.com> wrote in message news:<bgaftv84vl4k1t404jgr9drtos30ijjqgd@4ax.com>...
On 10 Dec 2003 12:53:04 -0800, gatezeddy@hotmail.com (Eddy) wrote:


Guys, definitely no pic or micros,
I just want to use a few chips with some gates to do this. The board
is actually part of a data archiving module, and there is a ls138 tied
to each eproms /cs already for their selection.
John, I wired the board using a switch to a quad 2-input 4093 NAND
schmitt trigger feeding a 74HCT161(the only one I could get) Qa,Qb,Qc
feed the LS138 and for some reason all the LED's come ON at the same
time, any suggestions for caps and resistor values?
I've wired the CAThode to the resistor to +Vcc and the anode to the
output of the LS138 going to the wouldbe /CS.
Just a question about the LS138, according to the truth table, I need
to wire E1(Lo),E2(Lo)E3(hi) for the outputs 0-5 to go LO..I guess
thats right? also, the HCT161, I've only wired the clk(input from the
4093) and the outputs to the LEDs..am I missing anything?
---
Yes, the 161's ENABLE, /CLEAR, and /LOAD input all have to be wired.
I've posted a schematic to alt.binaries.schematics.electronic, but since
you can't get that group I'll post it to you via email also.

I've shown the resistors for the LEDs as 1.5K (for 2mA LEDs) but if
you're using higher current LEDs you could make the resistors smaller,
but you'll need to be careful not to allow the voltage out of the '138
to rise to too high a value to turn on the EPROM you select as well as
not force the 138's outputs to sink more current than they're supposed
to. (8mA total, for the LED _and_ the Eprom)

Also, I'm assuming that the '138 I've shown is the one on the board and
that the only other thing it's driving besides the EPROMS is the LEDs.

Good luck, and post back if you have any more problems.
Hi John,
I haven't received the schem yet, please try both my emails
thanks again
 
On 11 Dec 2003 21:48:20 -0800, gatezeddy@hotmail.com (Eddy) wrote:


Hi John,
I haven't received the schem yet, please try both my emails
thanks again
---
I sent it to your gatezeddy@hotmail.com address; if that's wrong or you
want me to post it somewhere else please post the other address(es)

--
John Fields
 
John Fields <jfields@austininstruments.com> wrote in message news:<v5njtv0rp7vbbajqhk9f7fcrfqe0deaisb@4ax.com>...
On 11 Dec 2003 21:48:20 -0800, gatezeddy@hotmail.com (Eddy) wrote:


Hi John,
I haven't received the schem yet, please try both my emails
thanks again

---
I sent it to your gatezeddy@hotmail.com address; if that's wrong or you
want me to post it somewhere else please post the other address(es)
John, please try nspy@NOSPAMexcite.com as I still haven't received it
at hotmail. discard nospam..

thanks again
 

Welcome to EDABoard.com

Sponsor

Back
Top