fingertip sensor infineon + fpga +uController

hi

ich haben ein problem: ich will einen fingertip sensor von infineon mit einem FPGA (xilinx spartan3 200) auslesen. ich haben den sensor bereits erfolgreich an einen rabbit3000 ucrontoller angeschlossen und ausgelesen. das hat sofort =FCber spi funktioniert und der sensor hat laut datenblatt funktioniert. nun will ich aber den sensor an einen fpga anschlie=DFen und diesen auslesen. ich habe ein vhdl modell f=FCr ein spi interface entwickelt und schreibe und lese die n=F6tigen befehle f=FCr den sensor. allerdings will nun der sensor nicht mehr. der erst befehl den ich mit der logik schicke ("SetMode" befehl) wird noch richtig quitiert aber der sensor liefert laut statusbyte nie g=FCltige daten. ich hab alles schon auf einem logikanalysator ausgemessen und auch uController und fpga verglichen, kann aber keinen fehler finden. hat hier jemand eine idee an was das liegen k=F6nnte oder auf was ich besonders achten muss?

danke=20 Urban

Reply to
u_stadler
Loading thread data ...

Eine weitere SPI-Anschaltung für Controller findet sich auf

formatting link
Heft 8 S. 8 Da sind allerlei Terminierungswiderstände verbaut wie von Infineon empfohlen. Grössere Probleme gabs da aber auch nicht. Takt ist jedoch hier besonders niedrig.

Hardware auf Pegel, Leitungsterminierung wegen Reflektion, minimale Anstiegszeit am FPGA untersucht ?

Verzögerungsschleifen zwischen Zugriffen probiert ?

MfG JRD

Reply to
Rafael Deliano

Hier möchte ich noch hizufügen: Richtiges Timing/Polarität zwischen Clock/Din/Dout?

Reply to
Dan Oprisan

ja verz=F6gerungschleifen habe ich probiert. normalerweise wird der sensor mit 4 MHz bei 3,3 V versorgung betrieben. ich habe ihn aber auch probeweise mit nur 1 MHz betrieben.

Polarit=E4t und timing sollten auch passen. hab ich wie gesagt anhand des logic analysers zwischen uController und fpga verglichen. kann zwischen den beiden am analyser keinen unterschie feststellen.

Reply to
u_stadler

Da du die Antwort des Sensors am LogicAnalyzer auswertest, kann der Fehler nur in der Anforderung der Daten liegen. Aber die sieht ja auch, laut LogicAnalyzer gut aus.

Kann es aber sein, dass 'analoge' Phänomene die Funktion beeinträchtigen: zu lange Leitungen (vor allem zu lange Masseleitung), Masseschleifen, Störungen (Brumm) der Versorgungsspannung (vielleicht ein Entkopplungskondensator vergessen). Hast du dir mal die Signale mit dem Oszi angeschaut (sind sie wirklich rechteckig...)?

bye, Dan

Reply to
Dan Oprisan

am uController sind die Leitungen um einiges l=E4nger als am fpga (da habe ich den sensor direkt aufs board gesteckt. ist ein spartan 3 starterkit). entst=F6rma=DFnahmen habe ich am uController auch keine getroffen. ich werde das teil aber mal auf die uni mitnehmen und im institut durchmessen. da haben wir ein sch=F6nes digitales 4 kanal oszi. aber ich kann mir beim besten willen nicht mehr vorstellen warum das nicht funktioniert...

Reply to
u_stadler

Also wenn hier wieder mal ein Student am verzweifeln ist und 'digital' eigentlich alles in Ordnung ist finden sich immer ganz einfache Fehler:

- Masseleitung vergessen

- Keine direkte Masseverbindung, sondern erst über die Versorgungsleitungen zum Netzteil.

- kein Entkopplungskondensator (manchmal geht's, manchmal nicht).

- Falsche Pegel von digitalen Signalen, weil z.B. Ausgänge aus versehen auf Open Collector konfiguriert wurden

- usw.

Viel Glück bei der Fehlersuche. Melde dich wenn du den Fehler gefunden hast..

Reply to
Dan Oprisan

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.