[GreenKeys] UART (sort of like) in software on Arduino

Harold Hallikainen harold at w6iwi.org
Sun Dec 12 14:47:51 EST 2021


There is indeed the problem that if all you have is a hammer, every
problem becomes a nail.

On the "design an audio amplifier with a gain of 10," I'd use the op amp
solution.

Before the AY-5-1013 UART became available, I designed a logging system
for radio stations that used a bunch of 8 bit parallel load shift
registers to drive a model 15. The parallel BCD output of a clock was
converted to Baudot for each digit with a diode array.

Later I designed a couple products that used a counter and some other
logic to route the strobe pulses out of a multiplexed BCD clock or ADC to
a 6402 UART. In the design with the multiplexed BCD clock. Converting BCD
to ASCII was pretty easy since I could just set the most significant bits
to 0x3. On the product with the ADC, I put the BCD in the 4 lsb, then put
the digit number (0 to 3) in the next 2 bits to transmit a 6 bit word that
was then sorted out at the other end for display. Of course, the data was
transmitted using AFSK.

There are, of course, many ways to solve a problem. I really like seeing
other people's approaches so I can learn stuff. In the past 20 years or
so, I've generally thought that if a digital circuit has more than a half
dozen chips, one of them should be a microcontroller. It is so much easier
to do stuff in software. But Baudot to ASCII or vice versa conversion
could be done with a single UART (like a 6402), appropriate clock sources,
and a ROM. I first used the MM6330-1 bipolar PROM that I made a programmer
for out of a thumbwheel switch to set the address, a rotary switch to
select the bit, and a push button to apply +12V to the output bit pin to
blow the appropriate fuse on the chip.

Most recently, everything has been on a Microchip PIC32 with most of the
code in C. The PIC is surrounded by various analog, DSP, digital, and
other hardware to do whatever is required.

Again, fun stuff!

Harold
https://w6iwi.org/rtty
14.083,875 MHz mark
14.086 MHz LSB, 2.125 kHz mark





More information about the GreenKeys mailing list