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"???????
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.
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.
Wenn's denn sein muss: PCF8274 per I2C dran hängen. Sieht viel offizieller und eleganter aus, ist dafür langsamer und teurer.
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 ;-)
Guck dir doch mal Figure 58 im Complete Datasheet an. Da sieht man den Zusammenhang sehr gut.
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
und für spätere Anwendungen könntest du auch Schieberegister benutzen, indem du seriell-parallel-wandelnde nimmst. Über SPI kann man auch diverse AD-Wandler u.a. Sachen betreiben...
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 ;-)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.