mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AD-W. - Shiftregister - Atmega8 - SPI


Autor: Dominik (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Ich probiere momentan, ein Schieberegister vom Typ CMOS 4006 zwischen
meinen AD-Wandler TLC549 und meinen µC Atmega8 zu setzen.

Die akt. Verdrahtung:
PC0 -> Inverter -> Slaveselect (active low) vom AD-W.
PB2 -> Takteingang des AD-W. sowie des Sch.reg.
Datenausgang des AD-W. -> D1 (CMOS4006)
D1+4 (CMOS4006) -> D2
PB4 (MISO) -> D2+4 des Sch.rg.
PB5 (Takt SPI) -> Takteingang des Sch.reg.

Die Lesezugriffe überlappen sich nicht. Alles mit 5V versorgt und mit
Stützkondensatoren ausgestattet, Inverter ist CMOS 4069. µC liegt an 8
Mhz Quarz mit 2x 22pF.

Meine Idee: Über PB2 manuell 1 Mhz ausgeben, um das Ergebnis der
AD-Umwandlung ins Schieberegister zu bringen. Dann per SPI-Interface
vom Sch.reg. in den µC mit ebenfalls 1 Mhz.

Später soll das SPI-Interface mit 8 Mhz laufen und mehrere
Ad-W./Sch.reg. parallel mit dem 1 Mhz Takt betrieben werden.

Beide Bauteile für sich getrennt laufen hervorragend. Den TLC549 hatte
ich bereits am SPI-Interface mit 1 Mhz, das Sch.reg. habe ich (siehe
anderen Forenbeitrag) mit manuellem Takt und Schalter etc. auf Funktion
getestet.

Nun hab ich auch schon mal probiert, das Taktsignal (1 Mhz manuell)
invertiert an das Sch.reg. zu geben und das CPHA-Bit für das
SPI-Interface zu setzen, da im Datenblatt des 4006 steht, dass die
Daten während der "negative going edge" ein-/ausgelesen werden.

Alles in allem bekomme ich kein richtiges Ergebnis. Der AD-Wandler
liegt an einem Opamp, der wiederum als Verstärker für einen
Ultraschallempfänger dient. In Hyperterminal sollte ich also
Zeichenwirrwarr empfangen (AD-W. direkt an µC). Raus kommt aber stets
das gleiche Zeichen.

Vielen Dank für eure Antworten
Dominik

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es könnte durchaus sein, daß das von Dir verwendete Schieberegister zu
langsam ist, da es ein Standard-CMOS-Teil ist. Die Baureihe 74HC... ist
um mehrere Vielfache schneller. Andererseits könnte auch Dein Programm
bzw. das Timing zwischen den Bauteilen einen Fehler aufweisen. Klappt
es, wenn Du die Abtastrate noch weiter ´runterfährst?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bevor ich mir das reinzieh, erstmal die Frage, was soll das ganze
Geraffel mit dem SRG ?

Warum soll man die ADCs nicht direkt auslesen ?

Und mal mal nen Schaltplan, damit man durchsieht.


TravelRec. hat natürlich recht, 1MHz bei 5V ist schon kritisch bei den
CD4000-ern, da muß man schon ganz genau die Timings beachten
(Datenvorhaltezeit, Pulsdauer, Durchlaufzeiten usw.), ohne Datenblatt
lesen läuft da garnichts und 8MHz kannste voll knicken.


Wenn es nur darum geht, die ADCs gleichzeitig auszulesen, dann nimm
einen gemeinsamen Takt und getrennte Datenleitungen und mach das SPI in
Software.
Viele ADCs haben auch ein extra Startbit, d.h. man kann die Wandlung
gleichzeitig starten und dann hübsch der Reihe nach auslesen.


Peter

Autor: Dominik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Vielen Dank für eure Antworten. Mir war nicht klar, dass das
CMOS-Register so langsam ist. Tatsächlich sind im Datenblatt 5 Mhz bei
5V typisch erwähnt.

Aber ich werde wohl erstmal tatsächlich die Wandler direkt ansprechen,
ohne das SPI-Interface. (Dass ich darauf nicht früher gekommen bin
Brett vorm Kopf)

Gibt es irgendwo eine Übersicht über die verschiedenen Familien? Zur
CMOS 4000 hatte ich schon was gefunden, zur 74HC jetzt aber nur eine
kurze Liste mit einigen Datenblättern, wo ich nicht einmal weiß, ob die
vollständig ist. Was gibt es denn sonst noch für IC-Familien?

Dominik

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sämtliche 74HCxxxx -Datenblätter findest Du z.B. auf
www.alldatasheet.com . Es gibt inzwischen auch etliche 74HC4000er
Bausteine, die pin- und funktionskompatibel zu den LowSpeed CMOS sind,
aber halt 10x schneller. Allerdings bietet die normale 74HCxxxx Serie
bessere und funktionellere Bausteine, als die übernommenen 4000er.

Autor: Dominik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke!

Dominik

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.