Hmm, ich kenn mich mit 8051 nicht so sonderlich aus, den hab ich von,
uhhhh 9 Jahren, mal im Studium programmiert. Was ich vermisse ist eine
Initialisierung der Ports. Wo werden deine beiden Steuerports auf
Ausgang geschaltet? AFAIK hat der 8051 ja Open Drain Ausgänge, fehlt da
nicht ein Pull-Up an P1.1? Hast du mal nachgemessen, ob alles
richtigverkabelt ist?
MfG
Falk
Hallo Falk,
die Ports am 8051 müssen nicht Initialisiert werden, für Port 1 gibt es
ein 4k7 Pulup (siehe Schaltbild über dem Quellcode), hab schon mit Oszi
und L.Analyzer nachgemessen, augenscheinlich alles so wie es soll. Wie
am Bild zu erkennen funktioniert das ganze prima, aber es muss doch ein
Grund geben warum der 4051 so komisch reagiert, oder hab ich da noch
einen Bug in der Software? Möchte das Ganze als kleines Projekt auf
meine Homepage stellen, aber natürlich ohne ernsten Bug.
Außerdem ist so eine Anzeige von bis zu 4 Messwerten, auch für die
Netzteilbauer unter uns Interessant oder?
Kann es sein das der 4051 zu lange zum Umschalten braucht, und der
Messwert daher verspätet kommt?
@ runni (Gast)
>Grund geben warum der 4051 so komisch reagiert, oder hab ich da noch
Der 4051 isses nicht ;-)
>einen Bug in der Software?
Ja.
>Kann es sein das der 4051 zu lange zum Umschalten braucht, und der>Messwert daher verspätet kommt?
Nein, deine ADC-Ansteuerung ist falsch. Du liest immer die Daten der
letzten Wandlung aus, siehe Datenbaltt Seite 3 und 8.
MFG
Falk
Danke.
hab noch mal nachgelesen, klar der spuckt immer das Ergebniss der
vorherigen Wandlung aus, also für einen aktuellen Messwert zweimal
wandeln.
Das Prog. macht jetzt mit etwas Optimierung 150 Messungen aller 4 Kanäle
mit Anzeige, da könnte ich ja die anderen Eingänge des 4051 ja auch noch
nutzen... :-)
@ runni (Gast)
>hab noch mal nachgelesen, klar der spuckt immer das Ergebniss der>vorherigen Wandlung aus, also für einen aktuellen Messwert zweimal>wandeln.
Naja, man kann es dahin optimieren, dass für die erste Dummy-Messungen
nur der Takt so schnell wie möglich erzeugt wird (8 Takte), ohne die
Daten einzulesen (die werden sowieso weggeschmissen). Das spart ein
wenig Zeit.
MFG
Falk
Das vorläufige Endergebniss, steht jetzt unter www.auram.de zum
Download.
Es gibt nat. noch Potential für Verbesserung, Weiterentwicklung, für den
vorgesehenden Einsatzzweck ist das Ergebniss mehr als ausreichend und
150 Mesungen/Sek schnell genug.
Ggf. werde ich mal den TLC1549 mit 10Bit probieren, und die Anzeige auf
31/2 Stellen erweitern. Eine Testversion mir Balkenanzeige existiert
auch schon....
Gruß, Ralf N.
runni wrote:
> Danke.>> hab noch mal nachgelesen, klar der spuckt immer das Ergebniss der> vorherigen Wandlung aus, also für einen aktuellen Messwert zweimal> wandeln.
Warum diese überflüssige Wandlung ?
Du weißt doch, daß es immer das Ergebnis der letzten Wandlung ist.
Also einfach richtig zuordnen und gut is.
Peter
@ Peter Dannegger (peda)
>Warum diese überflüssige Wandlung ?>Du weißt doch, daß es immer das Ergebnis der letzten Wandlung ist.>Also einfach richtig zuordnen und gut is.
Das klappt aber nur wenn immer zyklisch in konstanter Abfolge gemessen
wird. Soll aber die Funktion zum ADC-Auslesen wiederverwendet werden
knallts.
MfG
Falk
Hallo Peter,
da hast Du natürlich recht, so hatte ich das ja schon (auch wenn ich
nicht wusste warum der Wert immer eine Wandlung später heraus kam).
Werde das noch mal umbauen, und gescheit dokumentieren.
Gruß, Ralf N.