Forum: Mikrocontroller und Digitale Elektronik Problem mit der Displayansteuerung eines glcd's über SPI (ARM 7)


von Marc K. (Gast)


Lesenswert?

Hallo Leute,

ich bin fast am verzweifeln...

und zwar ich habe einen glcd von Kent in der Auflösung 240x160

http://www.sparkfun.com/commerce/product_info.php?products_id=9560

der über SPI mit einem ARM 7 (LPC2368) Prozessor kommunizieren soll.

Da dieses Kent Display ein sog. cholesteric liquid crystal display ist 
(Bild bleibt bestehen auch wenn kein Strom mehr fließt) hab ich sog. 
pressure points auf dem display, die laut Datenblatt mit dem Befehl 0x2A 
gelöscht werden können.

Zu meiner Frage:

Nach meiner Initialisierung:
1
void initglcd(void)
2
{
3
  unsigned char Register;
4
5
  PINSEL0 = 0x00000000;
6
  PINSEL1 = 0x00000000;
7
8
9
  PINSEL0 |= 0xC0000000;     // SCK  0  Port 0.15
10
11
  PINSEL1 |= 0x0000003F;     // Miso, Mosi, CS            
12
  
13
  S0SPCCR = 12;                       // Clock Counter (1MHz)
14
15
  S0SPCR   = 0x00;                // Control Register Löschen
16
  S0SPCR   |= 0x28;
17
  
18
  if (S0SPINT & 0x01)            // Wenn das Interruptflag gesetzt ist
19
        {
20
        S0SPINT = 0x01;        // Interruptflag zurück setzen
21
        }
22
23
  // Statusregister laden
24
  
25
  Register   = S0SPSR;      // Register lesen
26
  Register   = S0SPDR;      // Empfangene Daten Speichern
27
28
}

versuche ich über die Funktion spi_transfer(0x2A) die Adresse an das 
Display zu Übertragen, leider ohne Erfolg.
1
char spi_transfer(volatile char data)
2
{
3
    S0SPDR = data;
4
    while (!(S0SPSR & 0x80));
5
    return S0SPSR;
6
}

Es tut sich rein gar nichts am Display. Die einzige Reaktion die ich bis 
jetzt am Display erkennen konnte ist, dass sich der BUSY Pin von 0 auf 
3,3V kurzzeitig anhebt nach einem RESET.

Die Pinsel0 und Pinsel1 sind richtig angesprochen, nur bei dem Control 
Register bin ich mir nicht ganz sicher.

Reicht dieser Code normalerweise aus um diese Adresse zu empfangen oder 
vergesse ich da noch was?

Wäre klasse wenn mir einer helfen könnte...

Danke schon mal

VG Marc K.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.