Giringiro - schnelle Arduino Oszilloskop (8 / 26 schritt)

Schritt 8: Wie funktioniert der ADC


The Arduino Mikrocontroller verfügt über eine einzelne 10-Bit sukzessive Annäherung ADC. Bevor der ADC gibt eine analoge multiplexer ist, lässt uns an den ADC, die Signale von verschiedenen Pins und Quellen (aber nur einzeln nacheinander) senden.

Sukzessive Approximation ADC bedeutet, dass der ADC 13 Taktzyklen, die zur Konvertierung (und 25 Taktzyklen für die erste Konvertierung). Es ist ein Taktsignal gewidmet der ADC, der "" von der Hauptuhr des Arduino berechnet wird; und zwar deshalb, weil der ADC ein wenig langsam ist und nicht kann mit dem Tempo der anderen Teile des Mikrocontrollers mithalten. Es erfordert eine Eingabe Taktfrequenz zwischen 50 kHz und 200 kHz, maximalen Auflösung zu bekommen. Wenn eine niedrigere Auflösung als 10 Bits benötigt wird, kann die Eingabe Taktfrequenz auf der ADC 200 kHz zu einer höheren Abtastrate übersteigen.

Aber wie viel höhere Raten können wir nutzen? Es gibt ein paar gute Führer über den ADC bei der Open Music Labs, die ich schlage vor zu lesen:

Da mein Ziel ist es, ein schnelles Oszilloskop zu bekommen habe ich beschlossen, die Präzision auf 8-Bit zu begrenzen. Dies hat mehrere Boni:

  1. der Datenpuffer kann mehr Daten speichern;
  2. Sie verschwenden keine 6-Bit RAM pro Datum;
  3. der ADC kann schneller erwerben.

Die Vorteiler lässt uns die Frequenz durch einige Faktoren, dividieren Sie durch setzen der ADPS0-1-2 Bits des Registers ADCSRA. Die Handlung der Präzision aus dem offenen Musik-Labs-Artikel zu sehen, sehen wir, dass die Frequenz für 8-Bit-Präzision bis zu 1,5 MHz gut gehen könnte! Aber da die Möglichkeit der Änderung des prescaler-Faktors uns die Erfassungsrate ändern lässt, können wir es auch verwenden, um die Zeitskala das Oszilloskop ändern.

Es ist eine gute Eigenschaft über die Ausgabe-Register: Wir können entscheiden, die Anpassung der Konvertierung Bit, durch Festlegen der ADLAR bit in das ADMUX-Register. Wenn es ist rechts 0 sind sie angepasst und umgekehrt (siehe Bild). Da ich 8-Bit Präzision wollte ich es auf 1 gesetzt so konnte ich nur das ADCH Register lesen und die ADCL ignorieren.

Ich wollte nur ein Eingangskanal um Kanal hin und her wechseln bei jeder Konvertierung zu vermeiden haben.

Eine letzte Sache über den ADC, hat es verschiedene laufende Modi jeweils mit einer anderen Trigger-Quelle:

  • Free Running-Modus
  • Analogen Komparator
  • Externen Interrupt-Anforderung 0
  • Timer/Counter0 Compare Match A
  • Timer/Counter0 Überlauf
  • Timer/Counter1 vergleichen Spiel B
  • Timer/Counter1 Überlauf
  • Timer/Counter1 Capture Event

Ich war interessiert an der frei laufenden Modus einen Modus in dem ADC kontinuierlich wandelt die Eingabe und wirft einen Interrupt am Ende jeder Conversion (zugehörigen Vektor: ADC_vect).

In Verbindung stehende Artikel

Wie erstelle ich eine preiswerte 16 MHz Arduino-Oszilloskop mit Excel und Ihrem Computer-Bildschirm zur Anzeige

Wie erstelle ich eine preiswerte 16 MHz Arduino-Oszilloskop mit Excel und Ihrem Computer-Bildschirm zur Anzeige

Oft wird ein Elektronik-Bastler konstruieren und bauen etwas nur um herauszufinden, dass es nicht die so verhalten, wie, die er oder sie bestimmt. Manchmal hängt in diesen Situationen das Problem in ein elektrisches Signal zusammen, aber das Zeug mit
Wie erstelle ich eine Arduino-Oszilloskop-Sonde

Wie erstelle ich eine Arduino-Oszilloskop-Sonde

dieses Instructabe zeigen Ihnen, wie erstelle ich eine Arduino-Oszilloskop-Sonde für diese Links, ein Poormans Oszilloskop und ein Multi-Kanal-Oszilloskop für Arduino /Schritt 1: Materialien und Komponenten WerkzeugeLötkolbenLotHobby Drill (wenn Sie
Arduino Oszilloskop unter 5 $ - 3-Kanal

Arduino Oszilloskop unter 5 $ - 3-Kanal

Oszilloskope von Elektronik-Enthusiasten, Hobbyisten verwendet werden und es ist eines der gemeinsamen Tools auf einer Werkbank. Aber kaufen kann teuer also schließlich beschloss ich, warum nicht mit einem Arduino zu machen. So dieser basic-Projekt w
Arduino Oszilloskop

Arduino Oszilloskop

Eine sehr einfache und leicht zu Arduino PC Oszilloskop zu machen.Merkmale:50K Samples/Sekunde(tatsächlich kann es bis zu 110K gehen aber das Signal wird laut)Auto-triggerFrequenzzählerHinreichend genaue Spannung Lesungen (abhängig von der Genauigkei
Einfache billige Arduino-Oszilloskop

Einfache billige Arduino-Oszilloskop

Hallo allerseits!Ich kam mit diesem interessanten Projekt, wie ich fange an zu lernen, Verarbeitung, also ich dachte, es wäre cool, es mit Ihnen teilen. Hoffe, Sie werden es genießen!OK, um Dinge klar zu machen, ist dies keine professionelle, gute Qu
WLAN-Arduino Oszilloskop

WLAN-Arduino Oszilloskop

In dieser Anleitung erkläre ich wie man eine Windows 8.1 Telefon, Arduino Uno Board und HC-05 Bluetooth-Modul verwenden, um eine drahtlose Oszilloskop zu bauen. Die Telefonanwendung hat die kritischen Funktionen eines Oszilloskops, obwohl die Bandbre
Nokia 5110 Arduino Oszilloskop

Nokia 5110 Arduino Oszilloskop

Ein neues Video über meine neue Oszilloskop. Fragen lassen sie in Kommentaren.---Downloads---https://github.com/Adafruit/Adafruit-PCD8544-Nokia...https://github.com/Adafruit/Adafruit-GFX-LibraryDie Arduino-Skizze ist zu diesem instructable verbunden.
Schnelle Arduino MIDI-Laser-Harfe

Schnelle Arduino MIDI-Laser-Harfe

Hallo!Ich habe ein paar Arduino (und seit kurzem geliefert) MIDI-Laser Harfen gerahmt (siehe eine hier), und ich erhalte häufig e-Mails fordern mehr Informationen darüber, wie man zu bauen. Ich setze diese instructable zusammen, um eine grundlegende
Arduino - Oszilloskop (Arme-Leute Oszilloskop)

Arduino - Oszilloskop (Arme-Leute Oszilloskop)

Hallo Leute,vor ein paar Tagen fand ich diesen Code auf Github und es ist das beste, was, die ich bisher gefunden, also ich beschlossen habe, dieses Projekt zu verbreiten, so viel wie möglich für alle, die möchten, dass eine billige Oszilloskop dies
81 Sekunden speichern: schnelle Arduino Bootload/Programm für Produktion

81 Sekunden speichern: schnelle Arduino Bootload/Programm für Produktion

Erfordert: AVRISP MkII und eine Linux Computer (oder virtuelle Maschine)Diese Instructable zeigt, wie Sie automatisieren und beschleunigen Sie die Installation des Bootloader und Demo-Programm auf einem Arduino-kompatiblen Gerät.Der Arduino Bootloade
Schnelle Arduino Hygrometer (Luftfeuchte-Sensor)

Schnelle Arduino Hygrometer (Luftfeuchte-Sensor)

Wir haben einige Kondenswasser und Schimmel Probleme in unserer Wohnung vor kurzem darauf, ich denke, die Luftfeuchtigkeit. Unsere Anlage ist relativ neu gebaut und hat sehr gute Dämmeigenschaften (doppelt verglaste Fenster etc..). Der Nebeneffekt da
OFFscope - offline Oszilloskop (Arduino + SD Karte schnell Protokollierung)

OFFscope - offline Oszilloskop (Arduino + SD Karte schnell Protokollierung)

Dies ist kein Echtzeit-Oszilloskop!Zunächst erwerben Sie Signal durch Einsparung/Logging auf SD-Karte. Dann überprüfen Sie die erworbenen Signal auf Ihrem PC.Diese oFFline Oszilloskop ist für Automobile Sensor Diagnose bestimmt. 99 % der Automobile S
Arduino High Speed Oszilloskop mit PC-Schnittstelle

Arduino High Speed Oszilloskop mit PC-Schnittstelle

Verwenden Sie Ihre Arduino und PC als Schnelle Speicheroszilloskop.Der Arduino kann zuverlässig Spannung Lesungen mit einer Frequenz von zwischen 141 und 153 KiloHertz sammeln.1000 können Daten in rund 6.8ms gemessen werden.Öl an einen PC, können die
Arduino - Multi-Kanal-Oszilloskop (Arme-Leute Oszilloskop)

Arduino - Multi-Kanal-Oszilloskop (Arme-Leute Oszilloskop)

ich bin präsentieren Software-Upgrades für den Arduino-Oszilloskop (Arme-Leute Oszilloskop), die es ermöglichen, zwei oder drei Daten visualisieren gleichzeitig Kanäle. Die wichtigsten Merkmale sind identisch mit dem ursprünglichen Oszilloskop mit Au