Analog-Digital-Converter

Ähnliche Dokumente
Tag 3 Timer, ADC und PWM

Analog-Digital Umwandlung

Timer. Funktionsprinzip

AVR-Mikrocontroller in BASCOM programmieren

Seminar: Mikrocontroller. Analoge Inputs:

Beschaltung eines Mikrocontrollers. Jordi Blanch Sierra Steuerungsgruppe

D.1 Vorbereitung. Teil D Analog-Digital-Wandler 1

Aufgabe A5: Anleitung. Einführung in die Programmierung des Sensor-/ Aktorknotens

NANO III. Digital-Analog-Wandler. Analog-Digital-Wandler Abtastung. Datenakquisition:

ADC / DAC: Überblick

analoge Ein- und Ausgänge

Temperaturmessung mit dem ATmega8

Chip veraltet, für neue Anwendungen nicht empfehlenswert!

V cc. 1 k. 7 mal 150 Ohm

Embedded Systems

Arbeitsblätter - ADC-Grundlagen -

Autonome Mobile Systeme. Dr. Stefan Enderle

Temperaturmodul. Software. Bedeutung der Leuchtdioden. Kanal-LEDs. System-LEDs. Start nach Reset

Rechnerarchitektur Atmega Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

SERIELLE DATENÜBERTRAGUNG (DMX)

Anleitung A5. Einführung in die Programmierung des Sensor-/ Aktorknotens BTnode

Halbautomatischer Antennenkoppler - Software. 1 Pin-Belegungen der ATmega-Controller. 1.1 Controller (Steuergerät) DL6GL

Interrupts. Funktionsprinzip. Funktionsprinzip. Beispiel in C

Research & Development Ultrasonic Technology / Fingerprint recognition DATA SHEETS OPKUD.

C1 A/D- und D/A-Wandler

Klausur PHMJ02 SS2012. Mikrocontroller und Robotik. Mittwoch GUTEN ERFOLG!!!

ATmega169 Chip: Pin-Layout

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel

Mikrocontrollertechnik MODUL C

Modul 6 Name: Berufsbildende Schule Technik Carl-Benz-Schule Klasse: Datum: Seite 1/5

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil 8: gavrasmw und weitere Beispiele

Prozess-rechner. auch im Büro. Automation und Prozessrechentechnik. Prozessrechner. Sommersemester Prozess I/O. zu und von anderen Rechnern

Lösungen zum Kurs "Mikrocontroller Hard- und Software

Microcontroller in C programmieren

Die interne Peripherie der Mikrocontroller

Serie 8: Microcontroller 17./

Sukzessive Approximation

3.6 Analog-Digital-Umsetzung

NANO III - MSR. Signalabtastung Analog Digital Converter (ADC) Digital Analog Converter (DAC) Themen: DAC

All Digital Transceiver

Projektlabor Steven Schmidt Mai 2009

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Prinzipen und Komponenten Eingebetteter Systeme (PKES) Sebastian Zug Arbeitsgruppe Eingebettete Systeme und Betriebssysteme

Projektlabor WS 04/05 Ausarbeitung: Timer 555 Aurens Pratomo. - Timer Aurens Pratomo - 1 -

3. Laboreinheit - Hardwarepraktikum SS 2003

D/A- und A/D- Wandler. Roland Küng, 2011

Software ubiquitärer Systeme

Handout zum Vortrag: Einfache integrierte digitale Schaltungen von Andreas Bock

Manual I2C Module zum CARME-Kit

werden. Volt, Temperatur oder Ausgleichselemente werden von der Karte unterstützt. Vier Präzisionswiderstände, deren Eigenschaften

HDO8000. Messungen an Motoren und Power Conversion Applikationen mit hochauflösenden 8 Kanal-Oszilloskopen

Analog/Digital/Analog Konverter INFO-ADA. Thermoelemente V, A, C. Technische Daten

Ansteuerung eines LCD-Screens

Schaltungstechnik 2. Univ.-Prof. Dr. Linus Maurer Institut für Mikroelektronik und Schaltungstechnik

Multirange, +5V, 8-Channel, 12-Bit ADC via Bluetooth

Digital meets analog. Analoge Welt Messung physikalischer Größen mittels Sensoren analoge Spannung. Analog-Digital-Wandlung (A/D)

Serie 5: Operationsverstärker 2 26./

AD-Umsetzung mit megaavr Steuerung des internen AD-Umsetzers mit BASCOM-AVR

Jan Monsch. Donnerstag, 2. Mai 13

Parallel-IO. Ports am ATmega128

AVR-8-bit-Mikrocontroller Gruppe Technologie der AVR-8-bit-Mikrocontroller Teil SPI

EXF2 TF2 IEX6 IEX5 IEX4 IEX3 IEX2 IADC 0C0H T2PS I3FR I2FR T2R1 T2R0 T2CM T2I1 T2I0 0C8H. AFH AEH ADH ACH ABH AAH A9H A8H Bitdresse

The amforth Cookbook english version started

Subranging-Analog/Digital-Wandler mit tiefem Leistungsverbrauch für System-on-Chip-Lösungen in Sensor-Anwendungen

AVR Ein/Ausgabe. Inhaltsverzeichnis

DC/DC Hochspannungsmodule dbc-serie - Bedienungsanleitung

Application Note. PiXtend mit Hilfe der Control- & Status-Bytes konfigurieren und überwachen. Stand , V1.06

Operationsmodi des Timers Modus 0 : Ausschalten des Zählers

Applikation. PA-CONTROL mit Ein- und Ausgängen am CAN-BUS

Verarbeiten von Analogwerten

MSRT-Referat ADC / DAC ausgearbeitet von Allan Tengg (allan@magnet.at) ADC

16-Bit PCA Timer/Counter

Wozu benötigt man AD/DA Wandler?

1. Beschaltung der Platine mit Operationsverstärkern (OP)

AVR-Programmier-Testboard V1.2.1

Test = 28 Punkte. 1: 2: 3: 4: 5: Punkte: Note:

Datentechnik. Prinzipieller Aufbau eines Schnittstellenbausteins

Vortrag über die Bachelorarbeit

Einführung in die Robotik Analog-Digital und Digital-Analog Wandler

Digital-Analog-Konverter (DAC)

1 Dalex \ Grundlagen der Elektronik WS. Benutzte Quellen

MEphisto Scope 1 A D. Prozessor-Steuerung. Interner Daten-/Steuer-Bus. Digital I/O-Teil

M2510 Analog-Eingabe

ADC und DAC Analyse mit high end Audio Analyzer von Audio Precision

X-AD24-4i, X-AD20-4i 4 differentielle analoge Eingänge für DMS, Temperaturfühler. getrennt, bis 24 Bit Auflösung und max. 100SPS (42kSPS) Abtastrate

AVR-Mikrocontroller in BASCOM programmieren, Teil 3

Mikrocomputertechnik

Datenblatt - SNET/CAN/Ethernet Konverter

Eingangsspannung Typisch +24 V Maximal +30 V. Signalpegel Low: <+8 V High: >+14 V. Maximale Eingangsfrequenz 25 khz

Elektronik 1 - Von Split- zu Single Supply-Schaltungen W. Baumberger Einführende Bemerkungen

Erzeugen von PWM-Signalen mit dem Atmel AVR-Mikrocontroller

Quanton Manual (de) Datum: URL: )

SPM-S/SPM-R Energie Messsystem Messwandlerzähler für Stromwandler oder Rogowski Spulen serial Polyphase Monitoring

Transkript:

Analog-Digital-Converter Funktionsprinzip ADC bei ATmega128 Beispiel in C Funktionsprinzip 1

Analog-Digital-Wandlung Wandelt analoge Spannung / analogen Strom (Messgröße) in einen binären Wert um, der der Amplitude der Messgröße zur Messzeit entspricht versetzt t den C Cin die Lage, Messwerte von analogen Quellen einzulesen und diese dann digital zu verarbeiten Amplitude (zugeordneter Binärwert) 0111 0010 abgetastete Messgröße analoge Messgröße 0100 1010 0 T s 2T s 3T s t ADC im ATmega128 ADC Control and Status Register(ADCSR) ADC data register (ADCH/ADCL) Data Bus Successive approximation logic 10-bit DAC ADC multiplexer select(admux) 8- Channel Mux Analog inputs 2

Successive Approximation (Prinzip) Successive Approximation Register (SAR) Digital-Analog- Wandler U e analoge Messgröße Komparator zugeordneter Binärwert Successive Approximation (Komparator) Successive Approximation Register (SAR) Digital-Analog- Wandler U e Messgröße Komparator zugeordneter Binärwert 3

Komparator U B U e U ref U a U a U für U U U für U U B e ref B e ref Ue U B Ua U ref t Successive Approximation (Digital-Analog-Wandler) Successive Approximation i Register (SAR) Digital-Analog- Wandler U e Messgröße Komparator zugeordneter Binärwert 4

DAC: Digital-Analog-Wandler (Prinzip) U 2 I 2 invertierender Summierer U 1 U I 1 0 I 0 I I I 2 1 0 1 1 Ua U2 U1 U0 2 4 Beispiel für: UH 5V 1 1 U b U b U b U 2 4 a 2 H 1 H 0 H binary Input analog Output b 2 b 1 b 0 U a / V 0 0 0 0,00 0 0 1-1,25 0 1 0-2,50 0 1 1-3,75 1 0 0-5,00 1 0 1-6,25 1 1 0-7,50 1 1 1-8,75 Successive Approximation (Wandlungsvorgang) Successive Approximation Register (SAR) MSB Digital-Analog- Wandler U ref U e Messgröße Komparator zugeordneter Binärwert 5

Wandlungsvorgang Beginnend bei MSB: 1. Bit in SAR auf 1 (alle niederwertigeren Bits=0) 2. DAC erzeugt aus Wert in SAR Referenz-Spannung U ref für Komparator 3. Uref Ue Bit in SAR wird auf 0 gesetzt Uref Ue Bit in SAR bleibt 1 4. nächstes Bit und mit 1.... 4. weiter bis alle n Bit-Werte t bestimmt sind 5. binären Wert in Register SRG speichern und nächste Wandlung beginnen U 1. Wert in SAR 1000 0100 0110 U ref 3. U 2. e 0101 1000 1100 1010 1011 U ref U 0 1 0 0 1 0 1 1 Ergebnis 1. Wandlung e U e U ref Ergebnis 2. Wandlung Beispiel für 4 Bit Free Running Modus (Timing-Diagramm) ab hier wird U e über die gesamte Messzeit konstant gehalten neue Einstellungen für die Wahl der Referenzspannung und der analogen Eingänge übernehmen 6

Single Conversion Modus (Timing-Diagramm) ADC im ATmega128 Datenblatt S. 230-245 Eigenschaften Prescaler Steuer-Register Daten-Register 7

Analog-Digital-Wandlung Wandelt analoge Spannung / analogen Strom (Messgröße) in einen binären Wert um, der der Amplitude der Messgröße zur Messzeit entspricht versetzt t den C Cin die Lage, Messwerte von analogen Quellen einzulesen und diese dann digital zu verarbeiten Amplitude (zugeordneter Binärwert) 0111 0010 0100 1010 abgetastete Messgröße analoge Messgröße f s 1 T s 0 T s 2T s 3T s t Eigenschaften (unvollständig) AD-Wandler auf Basis des Successive Approximation Verfahrens Messgenauigkeit: 10 Bit bzw. 8 Bit Art der Messung: - programmgesteuerter g Start jeder einzelnen Messung (single conversion) - automatischer Start der nächsten Messung sobald eine Messung fertig ist (free running) Messmodi: - Messung gegen 0V (single ended) - gegen 2. Messkanal (differential) Anschluss der Messobjekte an PortF (ADC ist alternative Funktion von PortF) Betriebsart: Polling- oder Interrupt-Betrieb - Ereignis wird jeweils ausgelöst, wenn eine Wandlung fertig ist Abtastfrequenz: f s durch Prescaler einstellbar - für 10 Bit Genauigkeit f s =50... 200kHz - für geringere Genauigkeit f s > 200kHz möglich 8

Blockschaltbild (vereinfacht) ADC Control and Status Register(ADCSR) ADC data register (ADCH/ADCL) Data Bus Successive approximation logic 10-bit DAC ADC multiplexer select(admux) 8- Channel Mux Analog inputs PORT F ADC7... ADC0 ADC Multiplexer Selection Register (ADMUX) Wahl der Spannungsreferenz Wahl der analogen Eingänge Left Adjust Result: 1... linksbündig 0... rechtsbündig 9

Wahl der Spannungsreferenz legt den Bereich der Spannung an den Eingängen des ADC fest - wenn U e >= U ref*, dann erhält man ein Wandlungsergebnis von 0x3ff (alle 10 Wandlerbits auf 1) als Referenzspannung kann verwendet werden: - eine externe Spannungsquelle (AREF) - die Versorgungsspannung des ADC (AVCC) - eine interne Referenzspannung von 2,56V ein externer Kondensator kann zur Verbesserung des Schutzes gegen Rauschen angeschlossen werden *U ref ist nicht zu verwechseln mit der Referenzspannung des Komparators (Folien zum Wandlungsvorgang) ADC Multiplexer Selection Register (ADMUX) Wahl der Spannungsreferenz Wahl der analogen Eingänge Left Adjust Result: 1... linksbündig 0... rechtsbündig 10

Wahl der analogen Eingänge Single ended: Messung Input-Pin gegen 0V Wandlungsergebnis: Ue 1024 ADC U ref Ausschnitt: vollständige Tabelle siehe Datenblatt Differential: Messung positives Input-Pin gegen negatives Input-Pin Wandlungsergebnis: ( Upos Uneg ) Gain512 ADC U ref ADC Control und Status-Register A (ADCSRA) Prescaler ADC Interrupt Enable: 1... löst Interrupt aus, wenn eine Wandlung fertig ist (ADIF wird automatisch gelöscht) ADC Interrupt Flag: wird auf 1 gesetzt, wenn eine Wandlung fertig ist (kann gepollt werden, in diesem Fall Löschen durch Schreiben einer 1 (!) auf das Flag) free running Modus: 1... ADC wird automatisch neu gestartet, sobald eine Wandlung beendet ist AD Start Conversion: Einmaliges Starten einer Wandlung ADC Enable: 1... Einschalten des ADC 11

ADC Prescaler Controllertakt f osc ADC-Takt f ADC ADPS2 ADPS1 ADPS0 NPrescaler 0 0 0 1 0 0 1 2 0 1 0 4 0 1 1 8 1 0 0 16 1 0 1 32 1 1 0 64 1 1 1 128 Abtastfrequenz 1 Cycle (Taktzyklus) entspricht TADC fadc erste Messung nach Einschalten des (ADEN=1) dauert länger, da ADC initialisiert werden muss die Abtastfrequenz, mit der das Eingangssignal digitalisiert wird, errechnet sich aus der Dauer einer kompletten normalen Wandlung 1 fadc fosc fs 1 13 13 NPr escaler 13 f ADC 1 12

ADC Multiplexer Selection Register (ADMUX) Wahl der Spannungsreferenz Wahl der analogen Eingänge Left Adjust Result: 1... linksbündig 0... rechtsbündig ADC Datenregister (Wandlungsergebnis) ADLAR=0 rechtsbündig ADLAR=1 linksbündig reicht 8 Bit Genauigkeit aus: - ADLAR (ADMUX-Register) auf 1 setzen und Ergebnis aus ADCH lesen (zwei niederwertigsten Bits gehen verloren) sonst immer zuerst ADCL und dann ADCH lesen! (in C kann auch der 10-Bit-Wert in eine 16-Bit Variable gelesen werden) 13

ADC Control und Status-Register A (ADCSRA) Prescaler ADC Interrupt Enable: 1... löst Interrupt aus, wenn eine Wandlung fertig ist (ADIF wird automatisch gelöscht) ADC Interrupt Flag: wird auf 1 gesetzt, wenn eine Wandlung fertig ist (kann gepollt werden, in diesem Fall Löschen durch Schreiben einer 1 (!) auf das Flag) free running Modus: 1... ADC wird automatisch neu gestartet, sobald eine Wandlung beendet ist AD Start Conversion: Einmaliges Starten einer Wandlung ADC Enable: 1... Einschalten des ADC Beispiel in C Geschwindigkeit der Musterausgabe mit Potentiometer verändern 14

Beschreibung an PortF wird ein Potentiometer angeschlossen, dessen aktuelle Spannung mit Hilfe des ADC gemessen wird der Wert, den der ADC liefert, wird als Delay in ms für die Musterausgabe mit der Funktion putselpattern verwendet mit dem Potentiometer kann man nun die Geschwindigkeit der Musterausgabe verändern Konfiguration ADC Register Bit Wert (binär) Bemerkung ADMUX REFS1:REFS0 01 Spannungsreferenz Uref intern Vcc ADLAR 0 Wandler-Ergebnis rechtsbündig MUX4... MUX0 00000 Kanal ADC0, single ended ADCSRA ADEN 1 ADC einschalten ADSC 1 Start Conversion ADFR 1 free running ADPS2... ADPS0 111 NPrescaler=128 Default x x Abtastfrequenz: 6 fadc fcpu Pr 10 Hz f s 600Hz 13 N escaler 13 128 13 15