Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: lcd Kategorie: C-Control I V1.2/2.0 (von michi - 13.06.2005 15:58)
 Als Antwort auf Re: lcd von Hanns - 12.06.2005 19:00

>
> >
> > >
> > > >
> > > > Vermutlich hast du einen Fehler beim Anschluß gemacht.
> > > > Siehe auch bei www.c-control-support.de
> > > > PIN 1  - GND
> > > > PIN 2  - 5V
> > > > PIN 3  - KONTRAST
> > > > PIN 4  - RS (PORT 14)
> > > > PIN 5  - RW (PORT 13)
> > > > PIN 6  - E  (PORT 15)
> > > > PIN 7  - D0
> > > > PIN 8  - D1
> > > > PIN 9  - D2
> > > > PIN 10 - D3
> > > > PIN 11 - D4 (PORT 9)
> > > > PIN 12 - D5 (PORT 10)
> > > > PIN 13 - D6 (PORT 11)
> > > > PIN 14 - D7 (PORT 12)
> > >
> > > hallo!
> > > Anschlüsse stimmen,das folgende Programmbeispiel funkt.einwandfrei!
> > > ist mir aber zu umständlich,da es lt.Beschreibung einfacher geht.
> > > irgendwie blicke ich nicht durch
> > >
> > > mfgHanns
> > >
> > >  
> > >
> >
> > Aha...
> > Wieso geht es, du hast doch geschrieben es blinkt nur der Cursor?
> > Das Programmbeispiel ist eigentlich zur Ansteuerung eines PCF8574,
> > Die LCDAusgabe ist nur dies:
> >
> > print"#ON_LCD#";
> > print"#INIT#";
> > print"PCF8574 IIC-TEST";
> > print"#L206#";
> > print"WRITE";
> > print"#OFF#";
> >
>
> hallo!
>  irgendwie ist das 2.Beispiel nicht mitgekommen,das funkt.
>
> define SDA      port[9]
> define SCL      port[10]
> define EXTPORT  byteport[10]
> '--------------------------
> '------ SYSTEM MEMORY -----
> '--------------------------
> '--- IIC INTERFACE  -------
> define OUTBYTE      byte[2]
> define LCDDATA      byte[3]
> define BUF          byte[4]
>
>
>
> '---- ZEICHENSATZ DEFINITION -------------
> define Z0&H30:define Z1&H31:define Z2&H32:define Z3&H33
> define Z4&H34:define Z5&H35:define Z6&H36:define Z7&H37
> define Z8&H38:define Z9&H39
> define A&H41:define B&H42:define C&H43:define D&H44
> define E&H45:define F&H46:define G&H47:define H&H48
> define I&H49:define J&H4A:define K&H4B:define L&H4C
> define M&H4D:define N&H4E:define O&H4F:define P&H50
> define Q&H51:define R&H52:define S&H53:define T&H54
> define U&H55:define V&H56:define W&H57:define X&H58
> define Y&H59:define Z&H5A:define BLK&H20
>
>
> print"#ON_LCD#";
> print"#INIT#";
> print"#OFF#";
>
> '---------- IICBUS INIT ------------------
> SDA=on:SCL=on
>
>
> 'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
> 'II   PCF 8574 PORTERWEITERUNG FÜR LCD        II
> 'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
> pause 20
> gosub lcd_init
>
> '----- WRITE CHARACTERS LINE 1 ---------------
> LCDDATA=4:gosub L1_GOTOPOS    'LINE 1 POS 4
> LCDDATA=D:gosub lcd_writechar
> LCDDATA=E:gosub lcd_writechar
> LCDDATA=M:gosub lcd_writechar
> LCDDATA=O:gosub lcd_writechar
> LCDDATA=BLK:gosub lcd_writechar
> LCDDATA=M:gosub lcd_writechar
> LCDDATA=BLK:gosub lcd_writechar
> LCDDATA=Z2:gosub lcd_writechar
> LCDDATA=&H2E:gosub lcd_writechar
> LCDDATA=Z0:gosub lcd_writechar
> '----- WRITE CHARACTERS LINE 2 ---------------
> LCDDATA=3:gosub L2_GOTOPOS    'LINE 2 POS 3
> LCDDATA=P:gosub lcd_writechar
> LCDDATA=C:gosub lcd_writechar
> LCDDATA=F:gosub lcd_writechar
> LCDDATA=BLK:gosub lcd_writechar
> LCDDATA=Z8:gosub lcd_writechar
> LCDDATA=Z5:gosub lcd_writechar
> LCDDATA=Z7:gosub lcd_writechar
> LCDDATA=Z4:gosub lcd_writechar
> LCDDATA=BLK:gosub lcd_writechar
> LCDDATA=L:gosub lcd_writechar
> LCDDATA=C:gosub lcd_writechar
> LCDDATA=D:gosub lcd_writechar
>
> #LOOP
> goto LOOP
> 'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
>
>
>
>
>
> '-------------------------------------------------------
> '--- PCF 8574 LCD DRIVER AT ADDR 7 / EXT BYTEPORT 10 ---
> '-------------------------------------------------------
> #LCD_INIT
> EXTPORT=0
> LCDDATA=&H38:gosub LCD_WRITECMD
> EXTPORT= &B00000010:EXTPORT= &B01000010:EXTPORT= &B00000010:
> LCDDATA=&H28:gosub LCD_WRITECMD:LCDDATA=&H0C:gosub LCD_WRITECMD
> #LCD_CLR
> LCDDATA=&H02:gosub LCD_WRITECMD:LCDDATA=&H01:gosub LCD_WRITECMD:pause 20:return
> #L1_GOTOPOS
> LCDDATA=LCDDATA +&H7F:goto LCD_WRITECMD
> #L2_GOTOPOS
> LCDDATA=LCDDATA +&HBF:goto LCD_WRITECMD
> #LCD_WRITECMD
> BUF = off:goto LCD_WRITE
> #LCD_WRITECHAR
> BUF = &B00100000
> #LCD_WRITE
> '--------- ------WRITE HI NIBBLE ------------------------
> OUTBYTE=BUF or (LCDDATA shr 4)
> EXTPORT=OUTBYTE or &B01000000:EXTPORT=OUTBYTE and &B10111111
> '--------------- WRITE LO NIBBLE ------------------------
> OUTBYTE=BUF or (LCDDATA and &H0F)
> EXTPORT=OUTBYTE or &B01000000:EXTPORT=OUTBYTE and &B10111111
> return
>


Hallo
Das geht bei einem LCD am I2CBUS nicht anders.

 Antwort schreiben

Bisherige Antworten: