Forum: Mikrocontroller und Digitale Elektronik LPC2148 SRAM Ansteuerung über GPIO


von Benedikt S. (Firma: embedded projects GmbH) (flopper)


Lesenswert?

Hallo,

ich habe folgendes Problem. Vielleicht weiss jemand einen Tipp der mir 
weiterhilft.

Ich hab ein SRAM über die GPIO am LPc2148 hängen. Hab mit dieser 
Einstellung die Leitungen gut ansteuern koennen, als das SRAM noch nicht 
angebunden war.

Jetzt hab ich das SRAM angebunden und ich seh meine Ansteuerung noch 
aber die ist minimal bei 3,3 V. Also bei Low krieg ich das Signal nicht 
auf Low. Aber das ist nur der Fall bei den Adressleitungen. Die IO 
Leitungen verhalten sich weiterhin korrekt auch mit angebundenen SRAM.


 /* Address IO signals /*
  IOPIN0 |= 0x001FFFF0;  // A0-A16 as output
  IODIR0 |= 0x001FFFF0;  // A0-A16 as output
  IOCLR0 |= 0x001FFFF0;  // A0-A16 as output

/* IO signals */
  IOPIN1 |= 0x00FF0000;  // IO1-IO8 as output
  IODIR1 |= 0x00FF0000;  // IO1-IO8 as output
  IOCLR1 |= 0x00FF0000;  // IO1-IO8  to low



while(1){
  IOSET0 |= 0x001FFFF0;  // A0-A16 as output
  IOCLR0 |= 0x001FFFF0;  // A0-A16 as output

  IOCLR1 |= 0x00FF0000;
  IOSET1 |= 0x00FF0000;
}


Hat jemand einen Tipp oder eine Idee? Das SRAM ist 1:1 am LPC2148.

von Andreas K. (a-k)


Lesenswert?

Bei den SET/CLR Registern ist "|=" falsch, "=" richtig.

von Benedikt S. (Firma: embedded projects GmbH) (flopper)


Lesenswert?

stimmt aber eine idee was ich da anders machen muss hast du auch nicht?
irgendwie vermute ich brauch ich da pullups oder so?

von Andreas K. (a-k)


Lesenswert?

Moment nochmal: Port0 ist ok wenn SRAM nicht dran, aber angenagelt auf 
3,3V wenn dran? Dann solltest du evtl. mal den Anschluss vom SRAM 
kontrollieren (insbesondere GND), denn dessen Adressleitungen können, 
wenn korrekt, den Port nicht beeinflussen.

von Benedikt S. (Firma: embedded projects GmbH) (flopper)


Lesenswert?

puh das war mal wieder ein klassiker.

Ein Kommentar davor wurde /* so beendet und somit war der ganze bereich 
auskommentiert :-)

au backe g danke nochmal!

von Dominic R. (dominic)


Lesenswert?

Hallo Benedikt,

was mir zu dem Thema noch einfällt:
Die LPCs haben einige Open-Drain Pins für I2C. Das betrifft in deinem 
Fall P0.11 und P0.14. Diese Pins können nur low-pullen, für high 
brauchst du einen externen pull-up (siehe Datasheet Rev.02 Seite 11).

Gruß,

Dominic

von Benedikt S. (Firma: embedded projects GmbH) (flopper)


Lesenswert?

Ah Hallo Dominic,

ja danke die hab ich bereits eingebaut jetzt gehts einwandfrei.


P.S. Hast du meine E-Mail letztens bekommen mit der neuen usbprog.c 
Version?

Gruss Bene

von Dominic R. (dominic)


Lesenswert?

Ah, jo, hatte ich bekommen, und ist in der aktuellen Revision auch 
bereits eingebaut, nur ein Reply hatte ich vergessen.

Gruß,

Dominic

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.