Ansteuerung Schieberegister

Gast #556006
Hallo zusammen...
Ich möchte über einen C167 ein paar schieberegister ansteuern...

Frage, gibts da spezielle Treiberbausteine oder muss ich das ganze über 
IO's softwaremässig programmieren? Meine z.b. für den clk dauernd einen 
pin toggeln und so rechenleistung vebraten, das kanns ja wohl nicht 
sein...

wie sieht das eine vernünftige lösung grundsätzlich aus?

Gruss Michael
Gast #556442
>>Autor: Matthias (Gast)
>>Datum: 07.05.2007 17:35

>>SPI Schnittstelle, falls das Teil sowas hat

Hab ich auch schon überflogen... nur was mich stört, habe ja das 
register, wo ich den wert, der übertragen werden soll reinschreibe. 
dieses ist 16Bit gross. Wenn ich nun z.b. 32 bit schreiben will, krieg 
ich da nicht timing probleme?
#556443
Michael wrote:

> Wenn ich nun z.b. 32 bit schreiben will, krieg
> ich da nicht timing probleme?


2*16 Bit dauert doppelt so lange, wie 1*16 Bit auszugeben.

Wenn Dir das zu lange ist, darfst Du kein SPI nehmen.

Andere Timingprobleme gibt es nicht.


Peter
Gast #556638
ok tönt vernüftig... was werden dann standartmässig für treiber 
verwendet? (habe ein schieberegister e.v. nicht auf derselben 
leiterplatte, da kann oder will ich das ja nicht direkt per spi 
ansteuern...
Gast #556723
weiter hab ich das problem, dass ich nur ine SPI schnittstelle hab, aber 
2 stränge mit Schieberegistern möchte, die jedoch nicht gleichzeitig 
geschaltet werden können... wäre es hier sinnvoll eine art umschlalter 
zu machen? jemand mal sowas gemacht? oder gibt es treiber, wo ich 
mehrere Treiber für die Schieberegister an eine SPI anhängen kann?
danke für die antworten im voraus...
Gast #556736
Ich weiß nicht, ob das einfach so funktioniert ;)

Enable1  ----|---|
             | & |-- Takt f. Schieberegister 1
Takt -----+--|---|
          |
          |
Enable1   ---|---|
             | & |-- Takt f. Schieberegister 2
Enable2 -----|---|
#556761
Michael wrote:
> weiter hab ich das problem, dass ich nur ine SPI schnittstelle hab, aber
> 2 stränge mit Schieberegistern möchte

Was sollen diese 2 Stränge bewirken ?

Wenn Du 74HC595 Schieberegister hast, dann mach doch entweder die 
Übernahmetakte getrennt oder schieb immer das komplette Ausgabemuster 
rein,

Willst Du mehrere SPI-ICs anschließen, dann haben die auch eigene 
Chipenable-Eingänge.

D.h. geschoben wird immer in alle und nur der selektierte übernimmt.


Peter
Gast #557197
Was soll der Sinn sein? Ob du SPI jetzt direkt mit einem µC machst, oder 
einen Treiberbaustein ansteuerst, wo ist da der Unterschied? Wenn du 
unbedingt was in der Richtung haben willst, nimm einen kleinen AVR mit 
Harware-SPI und normalem UART. Der UART kommt an deinen C167, das SPI an 
deine Schieberegister. Bisschen SOftware und schon ist dein 
Treiberbaustein fertig.
Gast #557202
Katzenklo,
da mehrere Schieberegister hintereinander hängen, und nicht alle auf 
demselben print sind, möchte ich Leitungen, welche direkt von uP her 
kommen nicht umbedingt von Print wegführen...
#557207
Michael wrote:
> Katzenklo,
> da mehrere Schieberegister hintereinander hängen, und nicht alle auf
> demselben print sind, möchte ich Leitungen, welche direkt von uP her
> kommen nicht umbedingt von Print wegführen...

Ich hab meine SR-Kette an 1m Flachbandkabel hängen.
Direkt an µC.
Über welche Distanzen reden wir?
Gast #557211
kann selbst noch nicht genau sagen wie gross ich die Distand möchte, 
aber nach möglichkeit möcht ichs so aufbauen das 10m kein problem 
darstellen sollten...
Gast #557212
>da mehrere Schieberegister hintereinander hängen, und nicht alle auf
>demselben print sind, möchte ich Leitungen, welche direkt von uP her
>kommen nicht umbedingt von Print wegführen...

Ach so...hab ich nicht so mitgekriegt.
#557215
Michael wrote:
> kann selbst noch nicht genau sagen wie gross ich die Distand möchte,
> aber nach möglichkeit möcht ichs so aufbauen das 10m kein problem
> darstellen sollten...

Dann nimmm Abschied von SPI und nen richtigen Bus, der für weite 
Strecken geeignet ist, z.B. CAN.

Man kann zwar SPI über RS-485 Treiber jagen, aber das ist nichts für 
professionelle Projekte.
Außerdem kriegst Du massig Probleme mit dem CE-Zeichen.


Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.