ADNS8030 an Atmega 32 (SPI) + MAX3378

Gast #1100612
Hallo.
Ich möchte ein ADNS-8030 Sensor (zu finden z.B. in Logitech Mäusen) mit 
einem Atmega32 auslesen. Den Atmega32 verwende ich auf dem RN-Control 
Board, der Sensor wird per SPI-Interface angesteuert. Ich wollte mich 
erkundigen, ob jemand schon mal so ein ähnliches Projekt gemacht hat und 
mir vielleicht Hilfe geben kann: Das Software ist geschrieben und der 
Mikrocontroller sendet auch die richtigen Daten (wenn ich das Datenblatt 
richtig verstanden habe), jedoch gibt der ADNS8030 nichts zurück.
Als Clock hab ich 500kHz eingestellt, laut Oszi klappt die Übertragung 
von Adressen/Befehlen.
Verkabelt ist das Ganze meines Erachtens richtig (MISO-MISO, MOSI-MOSI, 
SCLK-SCLK, SS-SS, Reset und VCC). Da der Atmega 5 V gibt und der 
ADNS8030 aber auf 3,3V Logik setzt, verwende ich einen MAX3378 um die 
Signale umzusetzen (ThreeState auf High; SS,MOSI,SCLK 5V->3,3V; MISO 
3,3V->5V - mit Oszi geprüft, scheint zu gehen).

Dabei ist mit jedoch aufgefallen, dass der MAX3378 permanent 5V auf die 
MISO-Leitung gibt (Rückleitung vom Sensor in den MC). Nur wenn ich den 
Eingang von Max3378 direkt auf Ground lege, gibt er 0 Volt (MISO Leitung 
müsste Standardmäßig auf 0V sein, nur wenn er sendet, dann anderen 
Pegel). Wie kann ich dieses Problem vermeiden?

Ein anderes Problem ist wie gesagt, dass der Sensor keine Daten zurück 
liefert. Sende ich zum Beispiel die Adresse 0x00 (MSB ist ja sowieso 
Null - bedeutet Lesekommando für Register 0x00=Product_ID), sieht das 
Signal folgendermaßen aus: SS geht auf Low während der Übertragung, SCLK 
gibt 8 mal den Takt (danach wieder high), MOSI ist Low während SCLK den 
Takt gibt -> 8 Nullen werden übertragen - soweit stimmt es ja 
eigentlich. Das Ganze kommt auch am Sensor an, aber es folgt keine 
Reaktion - interessant wäre, ob es ein Merkmal gibt, woran man erkennt, 
ob der Sensor überhaupt funktioniert.

Falls jemand das Projekt interessant findet oder ähnliche Probleme hat 
und mir helfen könnte, kann er sich gerne auch den Quellcode ansehen - 
ich hänge die Dateien als Zip mit ran. Ich programmiere mit WinAvr.
Sitze da jetzt schon ne ganze Weile dran, also ich wäre für jede Hilfe 
dankbar.

Viele Grüße,
Robert
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 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.