mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 3 Wire Interface SPI???


Autor: A Heinze (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Kann ich dieses Modul direkt an den SPI anschließen ohne CS Leitung???

AM SPI hängt jetzt eine SD CARD die zum aufzeichnen des Luftdruckes 
dienen soll.

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das wäre eher nicht gut, weil sich die Daten gegenseitig in die Quere 
kämen.
Eine SPI kann man aber ziemlich einfach manuell aufbauen.

Autor: akw (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ne, soweit ich weiß brauchst du die CS Leitung um bei mehreren Geräten, 
jenes Auszuwählen, mit dem du gerade kommunizieren willst. D.h. Bei 
Karte und dem Barometer brauchst du jede CS Leitung an einem PIN des 
Prozessors.

Autor: A Heinze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja das ist mir schon klar leider hat der Baro keine CS sondern nur MOSI 
MISO und SCK.

kann ich den über Software SPI ansteuern???

Die SCK darf max 500KHz betragen da komme ich doch schon weit drüber mit 
der SDCard die läuft derzeitig auf 4 MHZ SCK.

Autor: Daniel M. (usul27)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da du das Teil ja eh nicht hunderte Male pro Sekunde auslesen willst und 
das Teil eh eher langsam ist, wäre Software SPI hier das richtige.

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du könntest die CLK Leitung für den Sensor mit Hilfe eines UND Gatters 
und eines zusätzlich Pins aktivieren/deaktivieren.

Den SPI CLK Prescaler kannst du vor dem Ansprechen des Sensors 
hochsetzen damit die Frequenz niedrig genug ist, und danach wieder auf 
4MHz zurücksetzen für die SD Karte.

Autor: A Heinze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es wird wohl auf Soft SPI hinauslaufen.

gibt es da irgendow materail zum anschauen wie man soft spi anwendet.


Danke

Autor: Josephine M. (Gast)
Datum:
Angehängte Dateien:
  • preview image for SS.svg
    SS.svg
    39,7 KB, 253 Downloads

Bewertung
0 lesenswert
nicht lesenswert
Wie wär's einfach mit ein paar Transistoren? Dann kannst du über einen 
SS-PIN die Verbindung zu deinem ms5534b nach Bedarf an- und ausschalten.
Wegen dem CLK-Problem: siehe Michaels Post.

Autor: Josephine M. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ups, natürlich mit 2 Transistoren.

Autor: A Heinze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja das mit der Schaltung ist noch besser wede diese Variante heute mal 
umsetzten.

Besten Dank

Autor: A. Heinze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch ne Frage kann ich den BC 847 einsetzten als Trans???

Autor: A. Heinze (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Habe noch eine Frage.

Wie schalte ich den MCLK an ???


néhme ich den direkt an TOSC1 ab wo jetzt auch mein Uhrenquarz 
angeschlossen ist oder kann ich einen 2. uhrenqaurz nehmen aber wo 
schließe ich das zweite beinchen an???


Für dei CS sache habe ich etwas gefunden wo man einen 3 State Buffer 
nutzen kann muß ich sowieso da ich von 5V Pegel auf 3 Volt Pegel muß.

um den Eingang/AUsgang einzuschalten muß der OE auf masse gezogen 
werden.
OE kann ich doch an einen IO Port hängen und diesen als CS/SS Leitung 
nutzen wenn er auf height geht dann zieht er ihn auf masse(OE) und der 
MISO kanal wird geschalten.

SCLK brauch ich nicht mit CS zu schalten MOSI auch nicht warum ??

Weil der Sensor einen Stratbefehl benötigt um zu reagieren die ich mit 
einen Befehl über en SPI sende erst dann antwortet mir der Sensor und 
ich kann daten abforden indem ich jedesmal einen Startbefehl 
voranstelle. Um die Daten dann zu empfangen schalte ich über die CS 
leitung den MiSO frei.

nur wo nehme ich die Clockfrequenz ab 32,xxKHz???
Würde einen externen Quarz anschließen weil ich noch einen RTC von AMXIm 
dranhängen will der die Uhrzeit und das Datum hält hüber eine 
Bufferbatterie der beötigt auch einen Uhrenquarz.

Danke

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Quarz kannst du nicht direkt an MCLK hängen, da der Eingang 
anscheinend kein Oszillator ist.
Du must die 32kHz also entweder vom AVR abnehmen oder dann von der RTC.

Noch ne Frage: Warum läuft die Schaltung mit 5V? Du brauchst doch 3V für 
die SD Karte und den Sensor, warum dann nicht auch für den AVR?!

> SCLK brauch ich nicht mit CS zu schalten MOSI auch nicht warum ??
Wenn Du eh eine Software SPI machst, kannst du dir die ganze CS 
Schaltung sparen, da du den Sensor nur ansprichst wenn du Daten haben 
willst.

Autor: A. Heinze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe einen Mega 128 AU mit 16Mhz der geht nur mit 5 Volt und 16Mhz.

Ich benutze einen Levelshifter für den pegel 5 Volt zu 3 Volt.

Ich Probiere es mit Hardware SPI da ich keine Ahnung von Soft SPI habe 
und meine SPI LIb ist ja auch schon fertig ich muß zwar immer die Clock 
runter setzten wenn ich auf den Sensor zugreife aber naja das ist 
vleiecht das kleinste Problem.

Danke

Mein RTC gibt auf einen Port eine Square Wave von 32,xx Khz aus die kann 
ich doch direkt an den Sensor MCLK hängen oder???

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Mein RTC gibt auf einen Port eine Square Wave von 32,xx Khz aus die kann
> ich doch direkt an den Sensor MCLK hängen oder???
Ja.

> SCLK brauch ich nicht mit CS zu schalten MOSI auch nicht warum ??
Das geht aber mit Hardware SPI sicher nicht. Dann ist es zwingend 
erforderlich, das entweder MOSI oder die CLK, oder beide durch eine CS 
Leitung vom Sensor getrennt werden wenn du auf die SD Karte zugreifst.

Wenn du das nicht machst bekommt der Sensor alles was du an die SD Karte 
schickst, auch wenn du über MISO nichts zurückliest.

Je nach interner Schaltung des Sensors könnte diese mit den Daten, die 
für SD Karte bestimmt sind, ganz schön durcheinander kommen.

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.