-
HIho
Hab auch ein Problem mit dem PCF 8591. Nääämlich probiere ich diesen als ADC über die LPT Schnittstelle zu verwenden, da ich keinen Plan von Interrupts habe und man immer so ein Problem mit der Gleichzeitigkeit hat beim programmieren lass ich das SCL Signal von einem NE555 erzeugen.
Das SCL Signal liegt dann am PCF 8591 und am PC an.
Aber der PCF tut garnichts weder acknowledge oder irgendein anderes Signal. A0-A2 sind auf Masse das Addressbyte zum Lesen ist daher 145 und das Controlbyte 0. Empfangen tu ich aber nichts!
- Die meisten Leute habe ja, so wie ich das bis jetzt gesehen habe den PCF über die serielle Schnitstelle angeschlossen. Heißt das vielleicht das es mit der LPT schnittstelle etwas umständlich ist. Also: Warum serielle Schitstelle?
- Gibt es library's für I²C Verbindungen die man benutzen kann, denn ich hab das bis jetzt alles selber gemacht und dementsprechend ist das Programm ein wenig unzuerverlässig.
- Hat hier jemand sonst noch irgendwelche Erfahrungen mit diesem IC gemacht die interessant sein könnten?
Ich bin für alle Antworten dankbar, denn wahrscheinlich muss ich nochmal von vorne anfangen ](*,)
-
nen i2c-IC ohne benutzung des i2c-protokolls ansteuern??? die scl-leitung führt nicht immer ein gleichmäßiges taktsignal, es werden dort auch informationen (start/stop der übertragung) übertragen!
fütr deinen anwendungsfall gibts bessere lösungen:
zb den TLC549, ADC mit schieberegister-ausgang:
http://www.franksteinberg.de/e-tlc549.htm
http://www.franksteinberg.de/uni8ad.htm
-
Hi, Wie meinst du das?
Also durch den NE555 krieg ich eigentlich ein gleichmäßiges Taktsignal und die Start Stop bedingungen habe ich auch programmiert.
-
Und wie erkennst du nen Clock-Stretch?
-
Hi
Ich weiß leider nicht genau was ein Stretch ist, aber das SCL Signal liegt an einem Eingang, nämlich an dem Pin "Error" am Port 2. Mit einer do while Schleife kann ich dann den Punkt finden an dem das Signal von high auf low fällt (oder auch umgekehrt) und an diesem orientiere ich mich dann.
Mein endziel ist es eigentlich eine GB CAM zum laufen zubringen und später an einem µC anzuschliessen. Zunächst wollte ich die CAM aber erstmal mit dem PC beherrschen und dafür brauche ich den ADC.
Vielen Dank für die antworten aber ich werde jetzt wohl erstmal alles umplanen und für dieses Interface dann wohl die COM Schnittstelle benutzen.
-
Moin Moin
Also ersten kommt es anders zweitens als man denkt. Ich habe jetzt mit der LPT Schnittstelle weitergemacht und es funktioniert auch einigermaßen. "Einigermaßen" heißt das der PCF8591 auf mein Addressbyte reagiert, aber teilweise totalfalsche Werte zurückliefert.
Die Spannung am Eingang regel ich mit einem Poti zwischen 0V und 5V, ne Versuchsreihe hat ergeben, dass bis 2,5V der Wert den der PC ausgibt um den Faktor 1/2 falsch ist sobald die 2,5V Marke überschritten ist sind die Werte um den Faktor 2 falsch. Hier nochmal aufgeschrieben KA heißt keine Acknowledge beim senden des Addressbytes vom PCF.
U[mV](Voltmeter) --> U[mV](PC)
0 --> 20
200 --> 500
850 --> 1700
1200 --> 2420
1250 --> 2540
2000 --> 3900
2500 --> 4940
3000 --> 900 KA
3500 --> 1780 KA
4000 --> 2740 KA
4500 --> 3700 KA
5000 --> 5100 KA
Also hat jemand eine Idee wodran es liegen könnte? Das Programm, was ich geschrieben habe scheint an sich zu funktionieren. Es könnte auch irgendein elektrotechnisches Problem sein, also Pull-up's oder Pull-down's hab ich gar nicht eingebaut, da ich gar nicht genau weiss wozu diese Widerstände gebraucht werden. 8-[
Also ich bin für jede mich weiterhelfende Antwort sehr dankbar!