RDS Decoder with 2 x 16 LCD for AT90S2313-10

This is an quite old project I made in 1996 but still interesting. It's an simple RDS decoder based on TDA7330B RDS demodulator and AT90S2313 (obsolete part, replace with Atmel ATtiny2313) controller. The RDS data is displayed on an 2 x 16 character LCD. It shows program service name, RDS clock, TA flag status and scrolling 64 characters long radio text. The decoder needs an Stereo multiplex signal as input which is normally found at the input pin of an Stereo decoder IC in many radios.

Source code is avail. in assembler, I will make a C version later. Decoding of the RDS data stream is based on Motorola's "AN460 - RDS decoder using the MC68HC05", see this document for details.

Some pictures (Click to enlarge):

Complete

PCB with LCD connected

Top

PCB top

Bottom

PCB bottom

Scroll text 1

Showing program service name, clock, TA flag and scrolling radio text A

Scroll text 2

Showing program service name, clock, TA flag and scrolling radio text B

Reworked schematic and layout of the original version

Changes: none

Reviewed original source code, released under GPL, see licence.txt for detail. Code for ATtiny2313 / AT90S2313.

This assembler code is the fastest and code efficient way. I tried a C version but was not able to fit the code into 2k flash memory.

Mictronics.de