MP3 Player control panel
The control panel is a 2x16 character LCD, with a 16 key keypad. The
display is a little small, and in fact most people who have built car
MP3 players on the web seem to have used 4x16 LCD's. For now I am
happy with the one I have, there is enough space for "Artist" and "Song
title".
The control panel is based on some software by Bob Blick (this guy is
amazing). The software uses a PIC'84 from Microchip to control the LCD
and monitor the keypad. It implements a 2400 baud RS232 serial
interface, and can be used as if it were a terminal attached to the PC.
Similar projects are described using the Basic Stamp from Parallax,
and other micros.
I hacked on Bob's code to make it do what I wanted. Basically, in my
application, the PIC is on at all times, monitoring the car's ignition
circuit. When the ignition comes on the PIC turns on the LCD backlight
and the control line for the PC PSU, and waits for one minute to allow
the Linux system enough time to boot. Whilst the ignition is on it
continuously monitors the keypad and sends keypresses as ASCII codes,
and monitors the serial line and displays incoming data on the display.
When Linux boots it starts two MP3 perl scripts, one of which has been
modified to handle the control panel on the serial port. When the
ignition is turned off the PIC sends '!' to the serial port every
second (which the perl script interprets as a shutdown command), then
after 40 seconds the PIC turns off the PC PSU control line.
This picture shows the components of the system.
The PC in its box will mount in the boot, the LCD and keypad (and
voltage regulator) will mount in the dash. Cabling is as simple as it
appears: power to the PC, power to the LCD (via the voltage regulator),
a serial link from the control panel to the PC, and a connection from
the audio output to the radio/cassette unit (not shown).
This picture almost shows the inverted display style of
this particular LCD module. The yellow PCB behind it supports the PIC.
On the bench everything is wired
up like a normal PC, with the LCD module connected to COM1. The bench
PSU outputs 13.8V at up to 7A, which is tidier than lugging around a
car battery.
Next: Installation
©2000 A M Errington