Provides all modes of a HD44780 controller in a easy way ++

-There is enough of poorly constructed RS232 alike TTL level
interfaces (+5volt) , this one generates it's own +/- 10..11volts
as RS232 specs. require , and is able to use very long cables like
RS232 can , and protects computer as well , nice in funny environment
like inside a "MP3 in car" setup.

-There is plenty of ready RS232-Lcd controllers 4 sale , at least 3
types I know about... Common to them all is that they are slow or
does not have button support and/or are expensive... that's my opinion

PostScript can be dumped to a PostScript printer or printed on any
printer using Paint Shop Pro from www.jasc.com
or similiar software.

HPGL files can be dumped to a HP-Plotter or other HPGL device.

Component List...

T1= BC547

OSC= 4Mhz 3-pin Resonator

R1 = 1K

C1 = 10uF

C3 = 100uF

C2,C4,C5,C6 = 0,1uF

U1 = 7805 (voltage regulator)

IC1 = PIC16F876

IC2 = 74174

IC3 = MAX202CPE or MAX232CPE

D1 , D2 = 1N4004

D3 = 4,7Volt Zener Diode

LCD's for 6$ each or lower (when buying 10) with cool backlit &
stuff , can be bought at Earth
Computer Technologies and many other places , most alphanumeric
LCD's are HD44780 compatible even if they chips are "Japan's Radio" or
something else.

Software ...

The PIC16F876 should be treated as freeware , it's free for
non-commercial use ...If you don't have a programmer for those
processors , I can sell you a pre-programmed processor for the price of
the CPU + shipping , after all ...it's freeware.

INTERFACE

All RS232 input is treated as characters , unless number "254" is
sent first (as one byte) ,if so , the next character is treated as
instruction , use table below to lookup instruction values.:

128

64

32

16

8

4

2

1

Instruction/Description

0

0

0

0

0

0

0

1

Clear Display

0

0

0

0

0

0

1

*

Return Cursor and LCD to Home Position

0

0

0

0

0

1

ID

S

Set Cursor Move Direction

0

0

0

0

1

D

C

B

Enable Display/Cursor

0

0

0

1

SC

RL

*

*

Move Cursor/Shift Display

0

0

0

1

0

0

0

1

Next value (0-255) will be used to
control the Backlit

0

0

0

1

0

0

1

0

Next value (0-255) will be used to
control the Contrast

0

0

1

A

A

A

A

A

Set Interface Length

0

1

A

A

A

A

A

A

Move Cursor into CGRAM

1

A

A

A

A

A

A

A

Move Cursor to Display

The bit descriptions for the different commands are:

"*" - Not Used/Ignored. This bit can be either "1" or "0"

Set Cursor Move Direction: ID - Increment the Cursor After Each Byte Written to Display if Set S - Shift Display when Byte Written to Display