Forum: Mikrocontroller und Digitale Elektronik DOGM an Lauchnpad


von bitzel (Gast)


Lesenswert?

Hallo,

bin gerade dabei ein DOGM128 an eine Launchpad zu testen. Controller ist 
ein MSP430G2231. Leider tut sich gar nix am Display.
Hab bis jetzt nur die Init geschrieben. Diese müsste ja zumindest die 
Spannungen an den den Kondensatoren "freischalten", leider ohne Erfolg!

Connected habe ich wie folgt:

SI -> P1.6
SCL -> P1.5
A0 -> P1.4
CS1B -> liegt ständig auf Masse
Reset -> P1.3

Code ist folgender:
1
#include  <msp430g2231.h>
2
3
void spi_init (void){
4
    USICTL0 |= USIPE7 + USIPE6 + USIPE5 + USIMST + USIOE; // Port, SPI Master
5
    USICTL1 |= USICKPH;
6
    USICKCTL = USIDIV_0 + USISSEL_2;          // SPI Clk = SMCLK
7
    USICTL0 &= ~USISWRST;                     
8
    USICNT = 8;                               // init-load counter
9
}
10
11
void spi_send_byte(char spi_data){
12
 
13
    USISRL = spi_data;            
14
    USICNT = 8;                              
15
    while (!(USIIFG & USICTL1));           
16
 
17
}
18
19
20
void main(void)
21
{
22
  
23
  WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog timer
24
   unsigned int i;
25
  //A0
26
  P1DIR |= BIT4;
27
  P1OUT |= BIT4;
28
  //reset
29
  P1DIR |= BIT3;
30
  P1OUT |= BIT3;
31
  //kurzer Reset
32
  P1OUT &= ~BIT3;
33
  for(i=0;i<500;i++);
34
  P1OUT |= BIT3;
35
  //Ende reset
36
  
37
  //setze A0 für Programmierung LCD
38
  P1OUT &= ~BIT4;
39
  
40
  spi_init();
41
 
42
  spi_send_byte(0x40);
43
  spi_send_byte(0xA1);
44
  spi_send_byte(0xC0);   
45
  spi_send_byte(0xA6);  
46
  spi_send_byte(0xA2);
47
  spi_send_byte(0x2F);   
48
  spi_send_byte(0xF8);
49
  spi_send_byte(0x00);  
50
  spi_send_byte(0x27);  
51
  spi_send_byte(0x81); 
52
  spi_send_byte(0x16);  
53
  spi_send_byte(0xAC); 
54
  spi_send_byte(0x00);  
55
  spi_send_byte(0xAF);  
56
  
57
  //setze A0 wieder auf 1
58
  P1OUT |= BIT4;
59
         
60
  
61
  }

von bitzel (Gast)


Lesenswert?

Wo sind die MSP430-Experten, keiner ne Ahnung?

von TestX .. (xaos)


Lesenswert?

oszi an die spi leitungen und schauen ob überhaupt was 
rüberkommt...danach initialisierugn prüfen

von bitzel (Gast)


Lesenswert?

bereits passiert, signale kommen definitiv am LCD an

von Krapao (Gast)


Lesenswert?

Das LCD ist vielleicht falsch angeschlossen (Datenblatt kontrollieren).

Die Sequenz ist vielleicht falsch (Datenblatt kontrollieren).

Kann das LCD dem MSP430 ACK/NACK über SPI Rückmeldungen geben 
(Datenblatt kontrollieren).

von Gerhard G. (xmega)


Lesenswert?

Hallo,


DOGM128 SCL

Taktsignal im Ruhezustand auf High-Pegel
Datenübernahme bei steigender Taktflanke

passt das?

Gruß xmega

von Wal (Gast)


Lesenswert?

Falsche clock polarity ! Zumindest geht es mit der anderen. Und ggf. 
USIGE

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.