Forum: Projekte & Code AD-Wandler mit T89C51CC01


von Peter D. (peda)


Angehängte Dateien:

Lesenswert?

Hier ein Beispiel zum ADC des T89C51CC01.

Es wird das IDLE-Bit gesetzt, d.h. die CPU wird während der Wandlung 
angehalten bis der ADC-Interrupt ausgeführt wird. Der macht dann nichts 
weiter als, alle Flags zurückzusetzen.
Danach wird der Wert ausgelesen und im RAM abgespeichert.

Die Werte nicht allerdings nicht sonderlich stabil. Aber das scheint ein 
Problem aller Mikrokontroller mit internem ADC zu sein.

Deshalb wird noch ein Tiefpas 1. Ordnung in Software realisiert:

Wert = Wert - Wert / 16 + (ADDL & 3) + ADDH * 4


Die Routine adc_conversion() wird zyklisch im Main aufgerufen und die 
einzelnen Werte in adc_input[] als 16-Bit Wert abgespeichert.

Durch den Tiefpas wird die Summe über 16 Meßwerte gebildet, d.h. um den 
eigentlichen Wert zu erhalten, muß noch durch 16 geteilt werden.


Peter

von Peter D. (peda)


Angehängte Dateien:

Lesenswert?

Hier noch das nötige H-File.

von Peter D. (peda)


Angehängte Dateien:

Lesenswert?

Und hier das daraus erzeugte Assembler-Listing.

von Dominik Robitza (Gast)


Lesenswert?

Sehr geehrter Kollege!
Ich breuchte für meine Klasse ein Vorführbeispiel zur Ansteuerung eines 
AD-Wandlers mit einer Abtastfrequenz von 8 kHz. Diese wird benötigt da 
ein Mikrofonanschluss an einer selbgebauten Platine(µ-Willi) simuliert 
werden soll!Wäre ihnen sehr dankbar wenn sie einen Sorcecode schreiben 
könnten und mir diesen auf meine E-Mail schicken könnten!
Mit besten Dank Prof.Dominik Robitza

von Peter D. (peda)


Lesenswert?

Hi Dominik,

also nach meiner Meinung ist dieses Forum doch eher als Ideenschmiede 
gedacht.

D.h. auf Problemstellungen gibt es Hinweise, in welcher Richtung die 
Lösung liegen könte, bzw. Kodefragmente die bei der eigenen 
Programmierarbeit bereits angefallen sind und in die Richtung gehen.
Die Hauptarbeit muß also jeder schon selber machen.


Wenn einer aber eine extra Entwicklungsleistung wünscht, muß er auch 
dafür löhnen. Und da gibts bestimmt genügend andere Webseiten, wo 
Programmierer Ihre Dienstleistungen anbieten.

Insbesondere muß er genau spezifizieren, was er eigentlich will 
(Pflichtenheft). Sowas wie "das soll auf ner Willibilli laufen" reicht 
da lange nicht.


Peter

von Student der Mechatronik (Gast)


Lesenswert?

Recht so.

Da ist "Dominik" ein Prof. und kann selbst keinen "einfachen" Code für 
seinen Unterricht entwickeln??

Was sollen seine Studenten dann lernen (bzw. von wem gelehrt bekommen)?

Bei dem Gahalt kann er sicherlich das gesuchte Programm entwickeln 
lassen.

Am besten die Software kostenlos und das bereits gestern. Dieses 
Verhalten erwarte ich nicht wirklich von einem Professor.

von Michael K. (Gast)


Lesenswert?

Fast 13 Jahre später ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.