mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik kurze Frage: SCK mit Transistor gegen GND schalten


Autor: Julian W. (julian-w) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
kurz meine Situation: An der Hardware-SPI des Atmegas hängen mehrere 
SPI-ICs (CAN, ...) und nun soll noch ein TLC5940 angeschlossen werden. 
Dummerweise hat der TLC5940 keinen seperaten CS-Pin, um ihn vom SPI-Bus 
zu "trennen".
Daher wurde mir empfohlen, einfach das SCK-Signal auf Masse zu ziehen, 
und somit einen CS-Pin "nachzubauen".

Im Anhang hab mir nun eine Skizze gemacht, wie es aussehen könnte. Würde 
das so funktionieren? SPI-Takt wäre 8MHz, dürfte das gehen oder könnte 
das Probleme geben?

Würde mich über eure Hilfe und Erfahrung freuen :)

Viele Grüße
Julian

Autor: R. Max (rmax)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum willst Du denn das Taktsignal vom TLC5940 trennen? Soweit ich 
sehe, ignoriert er die Daten, solange er keinen positiven Puls auf XLAT 
bekommt. Damit erfüllt XLAT die Funktion eines CS-Pins, nur daß er eben 
nicht für die gesamte Übertragung aktiv gehalten, sonden nach dem 
Eintakten der Bits nur kurz aktiviert wird.

Autor: Julian W. (julian-w) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stimmt eigentlich.
Aber könntest du mir das genaue erklären, warum er nicht die ganze Zeit 
lang aktiv sein muss, dass versteh ich momentan nämlich nicht so ganz...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Julian W. schrieb:
> Stimmt eigentlich.
> Aber könntest du mir das genaue erklären, warum er nicht die ganze Zeit
> lang aktiv sein muss, dass versteh ich momentan nämlich nicht so ganz...

Du musst gedanklich bei diesem Chip zwischen dem Schieberegister und den 
eigentlichen Datenregistern trennen.

In die Schieberegister taktest du deine Daten rein. Und erst durch einen 
XLAT Puls werden diese Daten aktiv, in dem sie in die eigentlichen 
Datenregister (mit denen der Chip dann tatsächlich arbeitet) übernommen 
werden.
Kein XLAT Puls, keine Übernahme dessen was sich im Schieberegister 
angesammelt hat.

Das heisst aber auch: Es ist doch völlig wurscht, ob dein IC in seinem 
Schieberegister da Daten durchrauschen sieht oder nicht. Solange er 
keinen XLAT bekommt, werden die sowieso nicht aktiv.

Autor: Julian W. (julian-w) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das würde also heißen, ich kann die ganze Zeit Daten über den SPI-Bus 
jagen, und XLAT ist auf low.
Wenn ich nun Daten an den TLC5940 senden will, sende ich zuerst die 
PWM-Daten, also die 12*16 = 192Bit und hebe DANACH kurz XLAT auf High, 
und danach direkt wieder auf Low, bevor ich neue Daten über SPI sende.
Hab ich das so richtig verstanden?

Autor: R. Max (rmax)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, hast Du.

Autor: Julian W. (julian-w) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für den Hinweis, dann werde ich das auf jeden Fall mal teste :)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.