Eingänge über SPI einlesen

Gast #233991
Lesenswert?
• ▲
▼
Hi
Ich will an einen Atmega8 ein paar zusätzliche Eingänge über SPI
anschließen. Dazu habe ich mehrere 74xxx165 angeschlossen. Im
Datenblatt steht leider absolut net viel zum Thema "Master receive".
Dort gibts nur "Slave receive" und "Master transmit".

Wie startet man den Einlese Vorgang? Ich habe dazu keine Flags
gefunden.
Meine Theorie ist das man einfach in das Datenregister irgendwelche
Sinnlose Daten zum Versenden reinschiebt. Und beim ve4rsenden dann die
Datenwelche reinsollen eingetaktet werden. Ich halte dies aber für ein
bissele Pfuschig und die Frage wäre nun gibts da eine "offizielle
Lösung"???????
#233992
Lesenswert?
• ▲
▼
Meine Theorie ist das man einfach in das Datenregister irgendwelche
Sinnlose Daten zum Versenden reinschiebt. Und beim ve4rsenden dann die
Datenwelche reinsollen eingetaktet werden. Ich halte dies aber für ein
bissele Pfuschig und die Frage wäre nun gibts da eine "offizielle
Lösung"???????

deine Theorie ist richtig.
So arbeitet SPI nun mal.
Ist aber auch schön im Datenblatt erklärt.
Gast #233993
Lesenswert?
• ▲
▼
OK dann mache ich es halt so.

kommt mir immer noch pfuschig vor ;-)


@Rahul Ghose
Könntest du mir bitte sagen wo das im Datenblatt steht?  sind zwar nur
3 Seiten aber ich finde es nicht direkt. Nur Wishiwaschi wo man sichs
zusammenreimen kann.
Gast #233995
Lesenswert?
• ▲
▼
und noch dazu übelst viel schwachsinniger overhead...

Außerdem würde es gar nicht gehen. Den SPI ist sehr schnell, reicht bei
mir für ein software PWM......

Keine Angst auch ich pfusche Zuviel aber auf das darf ich nicht näher
eingehen sonst bin ich ALG II Empfänger ;-)
Gast #233997
Lesenswert?
• ▲
▼
ich finds nich wirklich pfuschig....

der taktgenerator für den spi-clock arbeitet nur wenn der µC etwas
austakten soll...

ist der normale weg ein "dummybyte" auszutakten (geht ja eh ins
leere) um somit seriell einzulesen... ohne dies hättest du nie ein takt
auf der clock-leitung...

am anfang evt. etwas gewöhnungsbedürftig vom denken her... einfach nur
merken: Takte können nur beim austakten generiert werden... und die
takte brauchst du...

greetz
Danny
Gast #233999
Lesenswert?
• ▲
▼
jo die 74Hxxxxx595 habe ich schon seit längerer Zeit als Ausgangs
erweiterung. Und mache somit ein 24Bit breites PWM Signal. Das
funktioniert auch 1a man muss nur Byte Reinkobieren und weg ist es...

Jetzt habe ich nur ein Problem mit ISP. Das funktioniert ja nun nicht
mehr. Weil die 74xxxx165 ja während des ISP Programmierens mit
angeschlossen sind.
Das Problem ist nun das ich daheim ca. 0 Elektronik Bauteile habe.
(Außer Standart Widerstände und LEDs)

Funktioniert es wenn ich den SPI-Bus mit je einem 1KOhm großen
Widerstand in Reihe schalte? Und den ISP Stecker zwischen Controller
und den Widerständen einlöte??? Ist der Wet mit 1 KOhm gut gewählt? Ich
programmiere mit dem einfachsten ISP Dongle des es gibt. (Paralleler
Stecker und 2 Widerstände....)

Oder soll ich es mit Und oder bauteilen in verbindung mit dem Reset
Signal das irgendwie multiplexen????

PS: Ich weiß ich schreibe manchmal sehr unverständlich ;-)

Antwort schreiben

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.

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.