On interfaces, paper tape readers/punches, and single (small) chip micros

Chuck Guzis cclist at sydex.com
Thu Feb 28 19:29:35 CST 2008

On 28 Feb 2008 at 16:58, Tom Watson wrote:

>  In the end, all it took was a single 74LS00 to do the trick on changing the
> strobes to conform.
> I suppose I could have used an 8 pin ATMEL chip, but why bother.  Sometimes the
> "classic" solution is MUCH easier.

Apples and oranges in my opinion.  In the OP, the question was how to 
decode FSK into a serial bitstream.   An 8-pin PIC or AVR will do the 
job just fine, with plenty of extra program space left over, perhaps 
for parity checking or syncing up on the output stream.

Sure, if I have to invert the level on a single line, I might even 
use a discrete transistor or anything else I have rattling around in 
my junkbox.

Here's an example of another application that, while you could do it 
in discrete logic, is much simpler in a PIC or AVR.  

Suppose I want to simulate a hard-sectored floppy by generating 
sector pulses using an ordinary soft-sector floppy drive.  While I 
could set up one-shots and maybe even a PLL to track the floppy 
speed, I can use a PIC12F629 to measure the spindle speed and 
accurately generate the necessary pulses.  I can add input signals to 
specify whether I want 10 or 16 sector 300 RPM floppies (4msec pulse 
width) or 32 sector (2 msec pulse width) 360 RPM floppies.  I can 
detect a hard-sectored floppy already inserted in the drive and pass 
the sector pulses through without generating any extra ones.  Since 
I'm watching the index pulse, I can even generate a READY signal when 
the speed of the floppy comes within acceptable tolerances.

All within the same 8 pin package.  Nothing more than +5 and a pullup 
(for the index line from the drive).  And I'll still have a couple of 
hundred of instructions out of the 1K for enhancements. 

How many TTL packages would it take you to do that? 


More information about the cctech mailing list