mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Suche getestetes ADC + UART Programm für 4433


Autor: Jan Burchardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
weil ich erhebliche Probleme mit den 6 A/D-Wandlern im 4433 habe, möchte 
ich hier eine Anfrage machen.
Ich bräuchte ein garantiert, auf einen AVR 4433 getestetes Programm was 
2 oder mehr Wandler abfragt und mir den Wert über UART ausgibt. Ich 
bräuchte die lauffähige .hex datei und den Assembler- oder C-Quellcode.
Der Hintergrund ist folgender: Mein Programm liest den wert von 1 
Wandler und sendet über UART. Alles ok. Die gleiche Routine 2 oder 
mehrmals hintereinder und die Wandlerwerte sind folgendermassen:
2 Wandler - Wert = VREF / 2
3 Wandler - Wert = VREF / 4
usw..
Habe schon lange im IRC diskutiert und alle Codeschnipsel die ich hier 
und im passendem Forum gefunden habe ausprobiert. Habe viele 
Kombinationen von LC- oder RC-Gliedern, Pull-Ups oder Pull-Downs und 
sämtliche Eingangs- und Referenzspannungen im 0.1 Volt Schritten 
ausprobiert.
Zuerst dachte ich an ein Timing problem und hatte zeitweilig schon 1s 
pause zwischen dem einschalten des Wandlers und dem Lesen der Werte 
oder/und setzen von MUX - 1s - setzen von ADEN.
Es macht auch keinen Unterschied ob ich in Assembler oder C 
Programmiere.
Habe auch schon die UART Routinen gegen LCD ausgetauscht. Habe als 
Anzeige auch schon PCF8574 benutzt. Alles funktioniert solange ich nur 
einen Wandler, egal welchen  abfrage. Bei 2 oder mehr kein Wandlerwert 
mehr.
Hoffentlich kann mir jemand helfen. Ich benutze avr-gcc 3.3 oder 
tavrasm, uisp und Emacs.
Gruss Jan

PS.: Entschuldigung für den langen Text wusste nicht wo ich noch kürzen 
konnte.

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jan!
Stelle mal dein Prog ins Forum, dann schauen wir mal. Man kann da 
eigentlich nicht sooo viel falsch machen.

MFG Uwe

Ps.:Ich schreibe nur in ASM.

Autor: UBoot-Stocki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

mal so ins Blaue gefragt:

Bist Du sicher, dass Du die "Wandler-Zeit" auch abwartest, bis Du den 
nächsten Kanal abfragst ?! Hatte mal ähnliches Verhalten - habe einfach 
nicht gewartet, bis der ADC fertig war ...

Gruß

UBoot-Stocki

Autor: Jan Burchardt (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
@Uwe: Mein ziemlich verunstaltes Programm ab ich angehängt, ein weiteres 
ist unter
http://www.mikrocontroller.net/forum/read-1-34056.html
zu finden.

@UBoot-Stocki: Wie ich oben schon erwähnte, hab ich teilweise bis zu 1s 
zwischen den einzelnen Schritten gehabt, was auch keinen Erfolg mit sich 
brachte.
Mittlerweile habe ich sowohl ADSC abgewartet als auch ADIF ohne erfolg. 
Probiert habe ich schon alle Möglichkeiten die beiden Register zu lesen, 
über 2 Variablen die dann in eine 3. enden, oder sogar direkt in eine 
Variable.
Mittlerweile bin ich soweit mir noch einen neuen Controller zu kaufen um 
auch die Möglichkeit auszuschliessen das ich 2 Controller mit demselben 
Hardwareproblem habe.
Gruss Jan

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jan!

C ist leider für mich ein mittleres Probl. aber was mir auffällt ist das 
du den Wandler ständig neu einschaltest.
Warum? ADCSR = 0x85 erledigt das doch.(Teiler ist auch ok)
Aber es sollte eigentlich auch nichts machen.
Wenn ich das alles richtig beurteile sollte es eigentlich gehen, wenn 
nicht irgendwelche C-Fallen was anderes machen wie gedacht. Leider habe 
ich momentan keinen 4433, die sind verbaut. 8535 hätte ich noch,wenn du 
da das gleiche Probl.haben solltest könnte ich mit dem mal testen.
Dann aber in ASM.

MFG Uwe

Autor: Jan Burchardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Uwe,
das mit dem einschalten des Wandlers war nur ein weiter Versuch, ohne 
(wie ich das anfänglich auch hatte) gings auch nicht.
Gruss Jan, der jetzt erstmal einen neuen MC kauft.

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.