Difference between revisions of "LCD Terminal"

From EttiWiki
Jump to navigationJump to search
m (Microcontroller)
(Microcontroller: added programmer)
Line 13: Line 13:
  
 
One important feature of this microcontroller family that it includes an internal 4MHz oscillator, which means I don't have to include clock generation circuitry.
 
One important feature of this microcontroller family that it includes an internal 4MHz oscillator, which means I don't have to include clock generation circuitry.
 +
 +
To flash new software into the PIC I required a flash programmer. The official in-circuit debugger (ICD) from Microchip was too expensive for this little project, so I decided to build a programmer on my own. I made a programmer similar to [http://www.sprut.de/electronic/pic/brenner/index.htm#brenner5 Brenner5] from Sprut's homepage.
  
 
=== Schematic ===
 
=== Schematic ===

Revision as of 22:52, 11 June 2011

When playing around with Linux on an embedded PC I noticed that the Linux kernel has the ability to output its startup log messages to a serial port. This fascinated me very much because I did not intent to run that embedded PC with a computer screen.

Also I was working on an embedded TCP/IP stack at that time (2002) and was looking for some way to find out what Ethernet frames and IP datagrams my stack is receiving.

So the idea came to me to build an LCD terminal. I had an LCD display with 2 lines with 20 characters each and was looking for some project to familiarize myself with PIC microcontrollers. With the Linux startup messages in mind I wanted to see all these messages scrolling over my display.

Components

Display

The display I got was a 20x2 character dot-matrix display with green backlight. It has an HD44780-compatible controller and a 16-pin interface. I used a ribbon cable with IDC connector to connect my microcontroller board.

Microcontroller

As I mentioned already, I wanted to get to know PIC microcontrollers a bit more. For that reason I chose a small 8-bit controller with flash memory and low pin-count: a 16F628A.

One important feature of this microcontroller family that it includes an internal 4MHz oscillator, which means I don't have to include clock generation circuitry.

To flash new software into the PIC I required a flash programmer. The official in-circuit debugger (ICD) from Microchip was too expensive for this little project, so I decided to build a programmer on my own. I made a programmer similar to Brenner5 from Sprut's homepage.

Schematic

Printed Circuit Board

Code