Forum: Mikrocontroller und Digitale Elektronik TLC5940 - SPI - ATMEGA88


von Frank L. (franklink)


Lesenswert?

Hallo Zusammen,
ich arbeite gerade an einer kleinen LED-Spielerei mit MEGA88 und 
TLC5940.

Jetzt stehe ich im Schaltplan gerade vor dem Problem, das die folgenden 
Leitungen gemeinsam genutzt werden sollen.

ATMEGA88 (MISO) - SPI - TLC5940 (VPRG)
ATMEGA88 (MOSI) - SPI - TLC5940 (GSCLK)
ATMEGA88 (SCK)  - SPI - TLC5940 (SIN)

Kann ich diese Leitungen bedenkenlos parallel nutzen, oder sollte ich 
vorsichtshalber 10K Pullup-Widerstände vorsehen?

Gruß
Frank

von Falk B. (falk)


Lesenswert?

@  Frank Link (franklink)

>Jetzt stehe ich im Schaltplan gerade vor dem Problem, das die folgenden
>Leitungen gemeinsam genutzt werden sollen.

Wieso gemeinsam? Weil auch das AVR ISP dort dranhängt?

>ATMEGA88 (MISO) - SPI - TLC5940 (VPRG)
>ATMEGA88 (MOSI) - SPI - TLC5940 (GSCLK)
>ATMEGA88 (SCK)  - SPI - TLC5940 (SIN)

Nicht sinnvoll. Warum nicht so, da kann man SPI ohne Handstand 
nutzen.

ATMEGA88 (MOSI) - SPI - TLC5940 (SIN)
ATMEGA88 (SCK)  - SPI - TLC5940 (SCLK)

Wenn du die PWM-Funktion nutzen willst, nimm einen Timer und generiere 
damti einen Takt für GSCLK.

>Kann ich diese Leitungen bedenkenlos parallel nutzen, oder sollte ich
>vorsichtshalber 10K Pullup-Widerstände vorsehen?

Hier ist es unkritisch, weil die beiden Eingänge am SPI den ISP-Vorgang 
nicht beeinflußten bzw. von diesem nicht beeinflußt werden. Ein 
Pull-Down am XLAT wäre aber sinnvoll.

MFG
Falk

von Frank L. (franklink)


Lesenswert?

Hallo Falk,
danke für Deine Antwort und ja, es geht genau um die parallel Nutzung 
von ISP-Adapter und TLC5940. SPI war ein Buchstabendreher meinerseits!

Für die Erzeugung des GSCLK und SCLK nutze ich bereits Timer.

GSCLK wird mit OC2A im CTC-Mode erzeugt. Deshalb auch PB3 (MOSI/OC2) als 
Pinentsprechung.

Für XLAT werde ich noch einen Pullup-Widerstand vorsehen.

Gruß
Frank

von Falk B. (falk)


Lesenswert?

@  Frank Link (franklink)

>Für die Erzeugung des GSCLK

Richtig.

> und SCLK nutze ich bereits Timer.

Unsinn.

>GSCLK wird mit OC2A im CTC-Mode erzeugt. Deshalb auch PB3 (MOSI/OC2) als
>Pinentsprechung.

Passt.

>Für XLAT werde ich noch einen Pullup-Widerstand vorsehen.

Pull-DOWN!

MfG
Falk

von Frank L. (franklink)


Lesenswert?

Hallo Falk,

Missverständnis, wenn die Finger schneller als die Gedanken sind, meinte 
natürlich Pulldown.

Für XLAT, SCLK und BLANK nutze ich den TIMER1_OVF_vect der in 
Abhängigkeit verschiedener Statusinformationen, die er von anderen 
Routinen erhält, die entsprechenden Portausgänge schaltet.

Gruß
Frank

von Christian R. (cmrudolph)


Lesenswert?

Falk Brunner schrieb:
> Hier ist es unkritisch, weil die beiden Eingänge am SPI den ISP-Vorgang
> nicht beeinflußten bzw. von diesem nicht beeinflußt werden. Ein
> Pull-Down am XLAT wäre aber sinnvoll.

Sry für das Ausgraben dieses alten Threads, aber ich bin über diese 
Aussage gestolpert, weil ich keinen Pull-Down am XLAT vorgesehen hätte. 
Gilt das nur für den Fall der Parallelnutzung der Ports?

von Falk B. (falk)


Lesenswert?

@ Christian Rudolph (cmrudolph)

>Aussage gestolpert, weil ich keinen Pull-Down am XLAT vorgesehen hätte.
>Gilt das nur für den Fall der Parallelnutzung der Ports?

Gilt allgemein, damit das Pin definiert auf GND liegt, wenn der 
Mikrocontroller im Reset ist bzw. programmiert ist. Ich würde auch einen 
Pull-Up an BLANK klemmen, damit die Ausgänge definitiv AUS sind. Man 
weiß ja nie.

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.