Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
LiFePO4 Speicher Test

K (8-Bit Ansteuerung)
K
Zeile 1: Zeile 1:
 
{{Baustelle|m_a_r_v_i_n}}
 
{{Baustelle|m_a_r_v_i_n}}
  
[[Bild:lcdmodul_2.jpg|right|thumb|LCD-Modul]]
+
[[Bild:lcdmodul_2.jpg|right|thumb|350px|LCD-Modul]]
  
 
==Einleitung==
 
==Einleitung==
Zeile 100: Zeile 100:
  
 
Das Programm zur Ansteuerung des Displays im 4-Bit Mode.
 
Das Programm zur Ansteuerung des Displays im 4-Bit Mode.
 
+
<pre>
 
  $regfile = "m32def.dat"
 
  $regfile = "m32def.dat"
 
  $crystal = 16000000
 
  $crystal = 16000000
  
  Config Lcd = 20 * 4
+
  Config Lcd = 20 * 4   'wir verwenden ein 4 x 20 Zeichen Display
 
  Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4
 
  Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4
 
  Config Lcdbus = 4
 
  Config Lcdbus = 4
 
   
 
   
  Cls
+
  Cls               'loesche das LCD Display
  Locate 1 , 1
+
  Locate 1 , 1       'Cursor auf 1 Zeile, 1 Spalte
  Lcd "Hello world."
+
  Lcd "Hello world." 'String auf Display anzeigen
 
+
</pre>
 
===Ansteuerung über Porterweiterung===
 
===Ansteuerung über Porterweiterung===
  
Zeile 125: Zeile 125:
  
 
Diese Ansteuerung basiert auf der Application Note AN#118 von MCS electronics. Dazu gibt es auch eine fertige Library zu BASCOM-AVR. damit können die gleichen Befehle zur Ansteuerung verwendet werden. Das BASCOM Programm, um das LCD-Modul über I&sup2;C anzusprechen, sieht dann so aus.
 
Diese Ansteuerung basiert auf der Application Note AN#118 von MCS electronics. Dazu gibt es auch eine fertige Library zu BASCOM-AVR. damit können die gleichen Befehle zur Ansteuerung verwendet werden. Das BASCOM Programm, um das LCD-Modul über I&sup2;C anzusprechen, sieht dann so aus.
 +
<pre>
 +
$lib "Lcd_i2c.lib"  'ersetzt die Standard LCD Library
 +
$regfile = "m32def.dat"
 +
$crystal = 16000000
  
$lib "Lcd_i2c.lib"
+
  Const Pcf8574_lcd = &H40   'I2C Adresse
  Const Pcf8574_lcd = &H40
+
  Config Scl = Portd.6       'I2C SCL Pin
  Config Scl = Portd.6
+
  Config Sda = Portd.7       'I2C SDA Pin
  Config Sda = Portd.7
+
 
  Dim _lcd_e As Byte
 
  Dim _lcd_e As Byte
  _lcd_e = 128
+
  _lcd_e = 128               'LCDim 4-Bit Mode betreiben
 
+
Cls 'clear the LCD display
+
Locate 1 , 1
+
Lcd "Hello world." 'display this at the top line
+
  
 +
Cls                'loesche das LCD Display
 +
Locate 1 , 1      'Cursor auf 1 Zeile, 1 Spalte
 +
Lcd "Hello world." 'String auf Display anzeigen
 +
</pre>
 
===Ansteuerung über RS232===
 
===Ansteuerung über RS232===
  

Version vom 5. Juni 2006, 20:23 Uhr

Baustelle.gif An diesem Artikel arbeitet gerade Mitglied m_a_r_v_i_n.

Am besten momentan noch keine gravierenden Ergänzungen / Änderungen vornehmen.

Dieser Hinweis verschwindet wenn der Autor soweit ist. Sollte dieser Hinweis länger als drei Tage auf einer Seite sein, bitte beim Autor m_a_r_v_i_n per PM / Mail oder Forum nachfragen ob er vergessen wurde.

LCD-Modul

Einleitung

LCD ist eine Abkürzung und bedeutet Liquid Crystal Display. Übersetzt bedeutet dies Flüssig-Kristall-Anzeige.


Text-Displays

Text-Displays kommen wegen der problemlosen Anbindung in Mikrocontroller Projekten wie Robotern am häufigsten zum Einsatz.

Anschlußbelegung

Die meisten Text-Display verfügen über eine identisch belegte Anschlußbelegung und verfügen über 16 Anschluß Pins (LCD-Module ohne Backlight über 14 Pins). Lediglich bei der Backlight Versorgungsspannung und Polung kann es Unterschiede geben. Im Zweifelsfall hilft hier der Blick ins Datenblatt.

Pin Bezeichnung Beschreibung
1 GND Masse
2 VCC Spannungsversorgung +5V
3 VEE Kontrast Poti 0..0,5V
4 RS Register Select, 1=Daten schreiben / 0=Kommando senden.
5 R/W 1=Read / 0=Write zum lesen / schreiben in das Display RAM
6 Enable Fallende Flanke -> Übertragen des Kommandos oder der Daten, H-Pegel -> Lesen von Daten aus dem Display
7 DB0 Datenbus Bit0 LSB
8 DB1 Datenbus Bit1
9 DB2 Datenbus Bit2
10 DB3 Datenbus Bit3
11 DB4 Datenbus Bit4
12 DB5 Datenbus Bit5
13 DB6 Datenbus Bit6
14 DB7 Datenbus Bit7 MSB
15 GND BL Masse Hintergrundbeleuchtung
16 VCC BL Spannungsversorgung Hintergrundbeleuchtung, mit Vorwiderstand


8-Bit Ansteuerung

Für die 8-Bit Ansteuerung werden die meisten Prozessor-Ports benötigt. Da Prozessor-Ports normalerweise rar sind ist diese Anbindung sicher nicht die erste Wahl. Bei dieser Ansteuerung werden 10 Prozessor Ports benötigt. Die Anbindung erfolgt dabei im memory-mapped Mode. Diesen Mode unterstützen allerdings nur die wenigsten Atmel AVR Prozessoren, z.B. der AT90S8515 und ATmega128.

8-Bit Ansteuerung

4-Bit Ansteuerung

Mit die häufigste Anbindungsart sit sicher die 4-Bit Ansteuerung. Man spart gegenüber der 8-Bit Ansteuerung 4 Prozessor-Ports und kommt ohne zusätzliche Bauteile aus (abgesehen vom Poti zur Kontrastregelung). Bei dieser Ansteuerung werden 6 Prozessor Ports benötigt. Die R/W Leitung des Displays kann man einfach auf GND legen, man will das Display schließlich nur schreiben, niemals lesen.

4-Bit Ansteuerung

Das Programm zur Ansteuerung des Displays im 4-Bit Mode.

 $regfile = "m32def.dat"
 $crystal = 16000000

 Config Lcd = 20 * 4   'wir verwenden ein 4 x 20 Zeichen Display
 Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4
 Config Lcdbus = 4
 
 Cls                'loesche das LCD Display
 Locate 1 , 1       'Cursor auf 1 Zeile, 1 Spalte 
 Lcd "Hello world." 'String auf Display anzeigen

Ansteuerung über Porterweiterung

Mit einem Porterweiterungs Baustein wie dem 74HC595 lassen sich weitere Prozessor-Ports einsparen. Diese Lösung kommt mit 4 Prozessor Ports aus, läßt man die Abfrage des Busy-Bits weg, sogar nur mit 3 Prozessor Ports. Trotzdem wird das Display im 8-Bit Mode betrieben.

Ansteuerung über Porterweiterung

Ansteuerung über I²C

Die wenigsten Prozessor Ports benötigt man bei der I²C-Ansteuerung. Dazu wird als I²C Porterweiterungs IC der PCF8574P benötigt.

I²C-Ansteuerung

Diese Ansteuerung basiert auf der Application Note AN#118 von MCS electronics. Dazu gibt es auch eine fertige Library zu BASCOM-AVR. damit können die gleichen Befehle zur Ansteuerung verwendet werden. Das BASCOM Programm, um das LCD-Modul über I²C anzusprechen, sieht dann so aus.

 $lib "Lcd_i2c.lib"   'ersetzt die Standard LCD Library
 $regfile = "m32def.dat"
 $crystal = 16000000

 Const Pcf8574_lcd = &H40   'I2C Adresse 
 Config Scl = Portd.6       'I2C SCL Pin
 Config Sda = Portd.7       'I2C SDA Pin
 Dim _lcd_e As Byte
 _lcd_e = 128               'LCDim 4-Bit Mode betreiben

 Cls                'loesche das LCD Display
 Locate 1 , 1       'Cursor auf 1 Zeile, 1 Spalte 
 Lcd "Hello world." 'String auf Display anzeigen

Ansteuerung über RS232

Displays mit RS232 Ansteuerung sind teuerer als Displays mit Parallel Ansteuerung. Dafür bieten sie meistens noch

Graphik-Displays

In Mikrocontroller Anwendungen seltener anzutreffen sind Grafik-Displays. Da der Aufwand hier um einiges höher ist (jeder Pixel ist einzeln anzusteuern), kommen in der Praxis nur Grafik-Displays mit serieller Ansteuerung zum Einsatz.

Siehe auch

Weblinks

Autore(en)

m_a_r_v_i_n


LiFePO4 Speicher Test