Topic: Progress of my 7400 competition entry (Read 3287 times)

## Progress of my 7400 competition entry

##### October 08, 2012, 06:14:51 pm
Just to keep myself motivated I'll document my progress of my 7400 entry here.  I won't tell you what the end result will be yet, but I'm not afraid of anyone "stealing" my idea either.  It's nothing groundbreaking and fascinating, just something resembling how things  were made when I started with electronics as a hobby back in the mid-70'ies.

I'll make my design modular so I can reuse (fat chance I'll ever do that) the modules for other projects and/or replace the backend with something else - or even  have multiple backends.  As of today I'm not 100% sure of what backend I'll use, but as times goes by and the deadline gets nearer I probably need to make a decision.

The first module is a keyboard encoder using a CD40147BE.  It's a 10 input priority encoder with a 4 bit binary output.  It output the binary code for the input (0-9) of the highest input.  So if input 3 is active the outputs will be active, active, inactive, inactive.
[attachment=0]

My usage of the word active instead of high is intentional. Looking at the Truth Table of the 40147 it seems at a first glance that the output would be high (1) when all inputs are 0/inactive/low. So that is how I made my design.  But when I had build it and was testing it nothing happened when I pressed the buttons.  I checked the wiring and I replaced the IC but no joy.  The output was stuck at low/high/high/low just as if the button 6 was pressed all the time.

After a nights sleep I looked at the datasheet again and realized that I've missed the very important words "Negative Logic".  So all inputs and outputs are inverted in the truth table.

[attachment=1]

So the the encoder actually had all buttons "pressed/activated" so it was giving the result for "9" which is the inverse bit pattern of "6".

My original design had pulldown resistors on all inputs and the buttons connected to vcc so the all the unpressed buttons would present 0 on the inputs of the IC and the pressed button would be 1.  But nope - that is not how the 40147 wants it....  Luckily it could be easily fixed by changing the pulldowns to pullups and connecting the switches to ground.  I only needed to change two wires on the pcb for that - that's the power of daisychaining.

I already had a hex inverting schmitt trigger (SN74HC14N) on the pcb for doing any-key-pressed detection and debouncing so I had a few spare inverters to also invert the four output signals of the encoder.  The SN74HC14 needs to be replaced with the pin compatible CN40106 since I will be running this project on 12 volts and the HC-series only eats 3-6 volts, but the HC14 was the only I already got in stock at home.

Happiness & joy. It all works as is should now, but I should have learned to read the datasheets more carefully after almost 40 years of electronics hacking.  But bloody hell - who in their right mind would represent a high voltage as "0" and a low voltage as "1" in a datasheet?

Module two will be up in a few days - stay tuned - don't touch that dial.....

## Re: Progress of my 7400 competition entry

##### Reply #1 – October 08, 2012, 07:40:43 pm
[quote author="matseng"]Happiness & joy. It all works as is should now, but I should have learned to read the datasheets more carefully after almost 40 years of electronics hacking.  But bloody hell - who in their right mind would represent a high voltage as "0" and a low voltage as "1" in a datasheet?[/quote]

Well, the datasheet is just about as old as your hacking career. Maybe the polarity reverses once in a while, like the magnetic field ;-) Datasheets are tricky documents.

Happy hacking.

--
Greetings Bertho

## Re: Progress of my 7400 competition entry

##### Reply #2 – October 29, 2012, 09:00:13 am
Progress for the last month - almost zero, nada, null, zilch, sifr, noll  ;-)

With just a few days left before the deadline I realized that I actually have to build my entry and not just plan for it. I've sent an order to Element14 for missing parts (that I believed that I actually already had in my lab) and I engaged End Game Mode for this project.

So yesterday I did three more modules...

A capacitive +12 --> -12 volt inverted based on a lowly 555, two caps and two diodes. I could have used a schmitt trigger inverter and made a oscillator followed by a push-pull stage with a transistor pair and then the caps/diodes for inverting, but I didn't have the energy to do that last night. But maybe I should try it anyways if I have some time to spare at the end.
[attachment=2]

A switched mode high voltage power supply that eats 12 volts and spits out 180-220 volts. Also using a 555 - no 7400/4000 logic here...
[attachment=1]

And a fugly etched board with four IN-16 nixie tubes , Russian K155ID1 nixie decoders/drivers  (same as the TTL 74141) and CMOS CD4050 hex non-inverting buffers at the inputs.
[attachment=0]

These boards will be combined with the Keypad module and two more modules into a single project.... Hurry hurry - only two more days til deadline :-)

## Re: Progress of my 7400 competition entry

##### Reply #3 – October 29, 2012, 06:52:53 pm
One more module tonight...  This got 4 pcs of CD4042 Quad Latch and 1 pcs CS4017 Decade Counter.  Its job is to collect and store four keypresses from the keyboard module and output it to the nixie module and the final module that I'll hopefully will be able to finalize tomorrow.

[attachment=0]

## Re: Progress of my 7400 competition entry

##### Reply #4 – October 30, 2012, 11:30:16 am
Boo&Hoo...  No parts from Element14 today...  So I spent some time putting my current modules together and doing some "integration testing" / debugging.
[attachment=0]