Till KTH:s startsida Till KTH:s startsida

LCD utrustningen

Hello LCD

Elektrokit 41000946.

16x1.gif
GTC-1601 ser ut som en enkelradig display med 16 tecken,
med består i sjäva verket av två rader om 8 tecken som placerats efter varandra.
Bekvämt om man ska skriva ut tabeller, men besvärligt om det gäller långa meningar.
( Se programexemplet ).

Läs om att experimentera med LCD:
How to use LCD's, Julyan Ilett   pdf Part1   pdf Part2

pdf font_table.pdf   pdf lcd_instr.pdf


LCD-displayernas kontaktstandard

 Pin nr.  Namn  Funktion  Pin nr.  Namn  Funktion 
 1  VSS  Gnd, jord  8  D1  (databit 1)
 2  VDD  +5V, matningsp.   9  D2  (databit 2)
 3  VEE  Kontrast  10  D3  (databit 3)
 4  RS  Char/!Command  11  D4  databit 4
 5  RD/!WR  Read/!Write  12  D5  databit 5
 6  EN  Enable, clock  13  D6  databit 6
 7  D0  (databit 0)  14  D7  databit 7

Att mata spädbarn ...

Att mata spädbarn går lättare när man ger smakbitar (nibble).
Eftersom två smakbitar blir till en munsbit (byte), kan barnet ändå bli mätt till slut.

 mata.gif

När det gäller små PIC-processorer har man ofta ont om pinnar, och man vill då ogärna ansluta en LCD-display med många ledningar. Alla LCD-displayer har därför en finess som gör att tecken och kommandon kan "matas in" med 2 st 4-bitarstal (nibble) i följd, i stället för med ett 8-bitarstal (byte). I så fall räcker det med att man ansluter 4 dataledningar och 2 styrledningar ( om man avstår från att kunna läsa i LCD-kretsens register, med RD/!WR ).
Det kommando som "ställer in" om 8 eller 4 dataledningar ska användas måste ges först. Detta kommando har naturligtvis valts så att 4 bitar räcker för att skilja det från de övriga kommandona!

lcdpins.png


Kopplingsdäcket en rad 8+8

hello_lcd_board_2.bmp

c.gifhello_lcd.c   ( text.gif hello_lcd.txt )    (  hex.gif hello_lcd.hex )

Utrustningen är från början programmerad med   hello_lcd.c   som skriver "Hello world" på displayen.

Kopplingsdäcket 2x16

16x2deck.png

lcd2x16.png

c.gif mini_hello_lcd.c   ( text.gif mini_hello_lcd.txt )      (  hex.gif mini_hello_lcd.hex )

Egendefinierade tecken?

Man kan ladda in pixeldefinitioner på upp till 8 egendefinierade tecken. De tecknen får därefter "ASCII-koderna" 0 ... 7.
För oss i Sverige är det naturligt att använda sex av de egendefinierade tecknen för å ä ö Å Ä Ö, så kvar för helt "egna" symboler blir två tecken.

Ett programexempel (för 8+8) med egendefinierade tecken är    c.gif lcd_udc.c   ( text.gif lcd_udc.txt )


Efter att ha studerat programexemplet  lcd_udc.c  kan Du säkert räkna ut hur "slipsten ska dras" och komponera ett eget tecken...

aaaeoe.gif

Se Mark Owen's sida om egendefinierade tecken )


Uppgifter

Med utrustningen går det att illustrera många typiska användningsfall för en display. Det finns även möjlighet att koppla till ytterligare komponenter på kopplingsdäcket. Nedan listas några idéer, men Du har säkert själv en ändå bättre idé.

  • Vrid på ratten - Bar-graph-display som visar med ökande antal svärtade kolumner hur mycket Du vridit (definiera egna tecken med olika många svärtade kolumner).
  • Progress-indicator. Skapa ett eget tecken som liknar en pilspets. Pilspetsen ska sedan förflytta sig längs displayen efter potentiometerutslaget. Före pilspetsen ska alla tecken vara binde-streck.
  • Menyval. Med potentiometern vrider man fram olika menyer. Med en knapp väljer man. Man kan sedan med potentiometern välja undermenyer. Till sist visas menyvalet och undermenyvalet på displayen.
  • Kombinationslås. Med potentiometern vrider man fram siffrorna 0 ... 9, med en knapp väljer man. Efter det att fyra siffror valts kontrolleras dessa mot ett "facit" och lämplig text skrivs på displayen.
  • Glosförhör. Ett ord (max 8 bokstäver) visas på vänster halva av displayen, efter en fördröjning-betänketid visas översättningen på andra displayhalvan.


Läs här om hur man kan få slumptal. (slumpa visning av ord).