Programming Tetris by first building a logic gate, then a computer, then…

Hone your fundamental understanding of computer systems by completing this online course called NAND to Tetris. The idea is to develop each fundamental unit that goes into making computer programs a reality. This starts with logic gates, which are put together into modules that eventually become a functioning computer. From there you need an operating system,  a compiler, and eventually you’ll be playing a game of Tetris which you programmed yourself.

It’s certainly not an easy journey, but if you have a computer at your disposal you should be able to make it all the way through the course. There’s a software suite which includes a hardware simulator so that the computer you’re building can be assembled using HDL instead physical components.

The concept is discussed in this TED talk given by [Shimon Schocken]. It is also embedded after the break and in addition to the NAND to Tetris project he shows off some self learning software on the iPad. To us it seems very much like the learning software [Neal Stephenson] envisions in the Young Lady’s Illustrated Primer from his Diamond Age novel.

[Read more...]

2012 Open 7400 Logic Competition

The Open 7400 Logic Competition is being held again this year. Start thinking about your entries, they’ll need to be finished and submitted by October 31st. As motivation, Digilent has put up two of their Analog Discovery kits as prizes. They can be used as a dual channel oscilloscope, function generator, or 16-channel logic analyzer. Last year was the first time the competition was held. As hype for the event built, more and more prize sponsors signed on and we hope to see the same thing happen this year.

Your entry can be just about anything as long as you show your schematic, explain the project, and use logic. It can be 7400 TTL, 4000 CMOS, discrete gates, or even a CPLD. Last year’s entries spanned a wide range of themes from LED blinkers, to unorthodox 74xx chip hacking, to boards packed full of chips. Good luck and don’t forget to tip us off about your work!

[Thanks Adrian]

CMOS logic clock tracks 24-hour time

Here’s an IC logic project that displays 24-hour time. Planning was the name of the game for this project. [Mattosx] took the time to layout his design as a PCB in order to avoid the wiring nightmare when build with point-to-point connections.

Much of the complexity is caused by the display itself. Each of the six digits has its own binary-coded decimal chip and array of discrete resistors. Timekeeping is handled by six decade counters, two divider chips, one AND gate chip, and one OR gate chip. He chose a SOIC crystal oscillator chip as the clock signal. We’re more partial to the idea of using mains voltage as the clock signal.

[Mattosx] posted the board artwork if you’d like to etch your own 5″x8″ PCB. Just make sure you read through all of his notes as not all of the chips are oriented in the same direction.

[via Reddit]

Automatic speaker control via TV

[Jon] wanted his speakers to come on and off along with his TV. The speaker heats up if left on so he didn’t want to do that. But killing the power also resets the volume level (this is an old set of PC speakers and the remote is wired, not IR) so using one of those switched power strips was out as well. He thought a bit about trying to use the power LED on the TV to build his own circuit when it dawned on him. It’s possible to monitor the USB port on the TV and use it to switch on the speakers.

The circuit above uses a couple of opto-isolators to protect both the television and the speakers. The 5V line from the USB port on the back of the TV is monitored by an XNOR gate (which helps to filter out some of the toggling at power-on). When that gate latches it activates a 555 timer which in turn fires up the speakers. Presumable this happens when power is cut as well, but we’ll let you work through the circuit logic yourself.

Adding a serial trigger to a logic analyzer

If you’re attempting to debug a serial bus with a bare-bones logic analyzer, you’re going to have a bad time. Most of the inexpensive analyzers available don’t have a serial pattern trigger, or a way to start recording data after a specific pattern of bits comes down the pipe. [Neil] sent in a great little project that adds a serial trigger to these analyzers, we’ve got to hand it to him for designing such a useful board.

[Neil] designed a small board featuring a CLPD that converts serial data to parallel data. By setting the trigger condition of the logic analyzer to any 24-bit pattern he wants, it’s possible for [Neil] to sniff a serial bus exactly when he wants to.

The circuit is quite minimal, basically just a 100-pin CLPD and a bunch of 0.100″ header pins. It’s a useful tool, and although we couldn’t find the board file to make our own, we’re sure [Neil] will be providing that shortly.

Dual PIR photo trigger by crossing the streams

Motion sensing can be quite effective when taking photographs of wildlife. But how can one be sure that the motion was at the center of the frame? A PIR sensor picks up motion in its entire viewing range. It’s not really something that can be aimed. But if you use two PIR sensors you can monitor a focused area for motion.

The trick is to use a logic circuit. By building an AND gate you can trigger based on motion in the area which is overlapped by both of the sensors. In this case the AND gate is built from a voltage divider. The outputs of the PIR sensors are connected above and below the divider’s connection to the photo trigger. Both have a protection diode, and the divider is tuned so that both PIR outputs must come one in order to raise the trigger input above the voltage threshold. So much for never crossing the streams.

[via TriggerTrap]

Mechanical relay logic that was snubbed for a microcontroller

[Alex] was tasked with a control design problem for a set of motors. The application called for the back of a truck to open up, some 3D scanning equipment to rise from its enclosure, and finally the equipment needed to rotate into place. All of this needed to happen with one flip of a switch, then proceed in reverse when the switch was turned off. We can understand why the final design used a microcontroller, but we also think that [Alex's] relay logic circuit is an eloquent way of doing things.

He uses limiting switches as the feedback loop for the logic. In the video after the break he walks us through the schematic. Each of the three motors has an up and down limiting switch. These control the three relays which switch power to the motors. We like the design because interrupting the movement mid-operation provides no problem for the system. The only real issue we see is that relays wear out, and the automotive application of the hardware may cause this to happen more quickly than normal.

You may recognize the clear gears used in the demo. [Alex] previously showed us how he makes those.

[Read more...]