AVR Assembler Tutorial 9 (6 / 7 schritt)

Schritt 6: Tiefpass-Filter und Spannung Verstärker


Um den Lärm ein wenig aufzuräumen und machen unsere Tastatur arbeiten wollen wir besser ein paar Tiefpass-Filter hinzufügen. Diese hochfrequentes Rauschen herausfiltern und ermöglichen das niederfrequente Signal passieren. Im Wesentlichen die Möglichkeit, dies zu tun ist einfach, einen 68 Pf Kondensator zwischen unseren analoger ein- und Boden und auch ein 0,1 Mikrofarad (d.h. 104) Kondensator zwischen unseren PD4 hinzuzufügen (INT0) Interrupt und Boden. Wenn Sie spielen, um mit diesen Tasten auf der Tastatur drücken, werden Sie sehen, was sie tun.

Als nächstes wollen wir einen Spannung Verstärker zu machen. Es stellt sich heraus, dass die untere Reihe der Tasten auf der Tastatur (wie auch die Wahlwiederholung Schlüssel) Außerbetriebnahme sind zu niedrig, eine Spannung, den INT0-Interrupt auszulösen. Der analoge Port ist empfindlich genug, um den niedrigen Spannungen von diese Schlüssel zu lesen, aber unsere Interrupt-Pin ist nicht immer eine gute genug steigende Flanke zu unterbrechen, wenn wir diese Schlüssel schieben. Daher möchten wir Ihnen einige Weg, dafür zu sorgen, dass eine schöne Spannung steigt Edge PD4 aber die gleichen Niederspannung Treffer ADC0 trifft. Dies ist ein ziemlich großer Auftrag, da beide Signale aus der gleichen Ausgabe Draht unserer Tastatur kommen. Es gibt eine Reihe von anspruchsvollen Möglichkeiten, dies zu tun, aber wir wollen nicht unsere Tastatur nicht mehr nach diesem Tutorial also lasst uns einfach Kluge gemeinsam eine Methode verwenden, die (gerade noch) funktioniert.

Sie sollten zuerst schließen Sie einen externen Taster ersetzen den INT0 Interrupt und steuern die Anzeige durch eine Taste auf der Tastatur gedrückt halten und auf die Schaltfläche. Dies hat weniger Tastatur Probleme und können Sie sicher sein, dass Ihre Spannungen auf der Tastatur Look-up-Tabelle korrekt eingestellt sind. Sobald Sie wissen, dass die Tastatur korrekt verdrahtet ist dann die Schaltfläche "loswerden Sie und setzen Sie den INT0 Interrupt wieder. Es gibt einige ernsthafte Lärm und Spannung Probleme die Tastatur so zu kontrollieren, so ist es gut zu wissen, dass alles funktioniert so, dass zukünftige Probleme isoliert INT0 Schlüssel werden können.

Wenn Sie Ihre Tastatur und Ihre Spannung Verstärker vernetzen, ist es sehr wahrscheinlich, dass die gleiche Widerstände, die ich verwendet habe, sind nicht zur Arbeit gehen. Also müssen Sie etwas experimentieren um Werte, die Arbeiten für Sie zu tun.

Schaut man sich das Diagramm, die ich zu diesem Schritt Anbei sehen Sie, wie die Spannung Verstärker geht zu arbeiten. Wir verwenden einige Widerstände und zwei Transistoren. Die Art und Weise-Transistoren, die Arbeit (siehe Datenblätter!) ist, gibt es eine minimale Spannung, die Sie zur Eingabe auf der Basis Pin auf der Transister (die mittleren Pin) die es zu sättigen und aktuelle fließen zwischen dem Stift Kollektor und Emitter benötigen anheften. Im Falle der Transistor 2N3904 ist, dass wir hier mit der Spannung 0,65V. Jetzt nehmen wir diese Spannung aus unserer Ausgabe über die Tastatur und wollen wir nicht ändern, so wir einen großen Widerstand zwischen der Ausgabe über die Tastatur und die Basis des ersten Transistors stellen (Ich habe 1Mohm) ausgeben. Ich habe dies als R_1 im Diagramm gekennzeichnet. Dann wir ein Spannungsteiler so einrichten wollen, dass die Basis des Transistors "fast" bei 0,65 Volt bereits und nur ein teeny ist weeny bisschen mehr wird über den Rand schieben und sättigen, ist sie. Das teeny weeny bisschen wird aus der Ausgabe von der Tastatur kommen, wenn wir einen Knopf drückst. Da die unteren Tasten auf der Tastatur nur eine kleine Spannung Außerbetriebnahme sind müssen wir sehr nahe an der Sättigung bereits in Reihenfolge für sie ausreichen werden. Der Spannungsteiler Resisters sind im Schaltplan mit R_a und R_b gekennzeichnet. Früher habe ich R_a = 1Mohm und R_b = 560Kohm aber es ist nahezu sicher, dass Sie mit diesen Zahlen zu Recht für Ihr Setup herumspielen. Vielleicht möchten eine Wand in der Nähe haben, Ihren Kopf vor und zwei oder drei Gläser von Scotch einerseits bang (Ich empfehle Laphroaig - teuer, aber lohnt sich, wenn Sie gerne rauchen. Wenn die Dinge wirklich verrückt, dann erhalten Sie eine Kanne mit BV und zufrieden die Nacht)

Jetzt können Sie wie die Transistoren sind gonna get us eine schöne steigende Flanke der INT0-Schlüssel im gonna betrachten und unsere Keypress-Interrupt zu generieren. Zuerst sehen wir uns was passiert, wenn ich bin nicht mit einem Tastendruck. In diesem Fall ist der erste Transistor (T1 im Diagramm gekennzeichnet) aus. So fließt kein Strom zwischen Kollektor und Emitter Pins. Damit wird die Basis des anderen Transistors (mit der Bezeichnung T2) hoch gezogen werden und so wird es sättigen, so dass Strom zwischen den Pins fließen. Dies bedeutet, dass der Emitter von T2 niedrig gezogen wird, da es an den Kollektor angeschlossen ist die selbst mit Masse verbunden ist. So wird die Ausgabe, die unsere INT0 Keypress-Interrupt-Pin (PD4) geht, niedrig und es werden keine Interrupt.

Was passiert nun, wenn ich eine Taste drücke? Na dann die Basis von T1 geht über 0,65V (im Falle der unteren Tasten geht es nur ganz knapp oberhalb!) und dann Strom, Strömung, die die Basis von T2 zu niedrige Spannung zieht erlaubt sein und dies schaltet T2. Aber wir sehen, dass wenn T2 ausgeschaltet ist, dann wird der Ausgang hoch gezogen und damit erhalten wir ein 5V Signal an unsere INT0-Pin und es dazu führen, einen Interrupt dass wird.

Beachten Sie, was das Ergebnis ist hier. Wenn wir die Taste 1 schieben, wir 5V PD4 werde bekommen deutlich ohne die Ausgabe gonna ADC0, und noch wichtiger ist, auch wenn wir Sternchen schieben, 0, Hash oder Wahlwiederholung, wir auch ein 5V Signal gonna INT0 und verursachen auch einen Interrupt zu bekommen! Dies ist wichtig, denn wenn wir nur direkt über die Tastatur-Ausgabe mit dem INT0-Pin gingen, die Tasten fast keine Spannung erzeugen sind und sie werden nicht ausreichen, um die Interrupt-Pin auslösen. Unsere Spannung Verstärker hat dieses Problem gelöst.

In Verbindung stehende Artikel

AVR Assembler Tutorial 2

AVR Assembler Tutorial 2

Dieses Tutorial ist eine Fortsetzung der "AVR-Assembler-Tutorial 1"Wenn Sie noch nicht Tutorial 1 abgearbeitet sollten Sie jetzt aufhören und, dass man zuerst tun.In diesem Tutorial werden wir weiterhin unser Studium der Assembler-Programmierung
AVR Assembler Tutorial 11

AVR Assembler Tutorial 11

Willkommen im Tutorial 11!In diesem kurzen Tutorial wollen wir endlich den ersten Teil unserer Abschlussarbeit zu bauen.Das erste, was, das Sie tun sollten, ist zum allerletzten Schritt dieses Lernprogramms und das Video. Dann wieder hierher kommen.
AVR Assembler Tutorial 1

AVR Assembler Tutorial 1

Ich habe beschlossen, eine Reihe von Tutorials zu schreiben, wie man Assembler-Programme für die Atmega328p schreiben die Mikrocontroller in der Arduino ist. Wenn Menschen interessiert bleiben werde ich weiterhin eine löschte eine Woche oder so bis i
AVR Assembler Tutorial 6

AVR Assembler Tutorial 6

Willkommen im Tutorial 6!Heutigen Tutorial werden kurz, entwickeln wir eine einfache Methode, um Daten zwischen einem atmega328p und ein weiteres mit zwei Ports verbinden sie kommunizieren. Wir werden dann nehmen Sie die Würfel, Walze aus Tutorial 4
AVR Assembler Tutorial 8

AVR Assembler Tutorial 8

Tutorial 8 willkommen!In diesem kurzen Tutorial wollen wir ein bisschen eine Ablenkung von der Einführung neuer Aspekte der Assembler-Programmierung zu zeigen, wie unser Prototyping-Komponenten in eine separate "" Leiterplatte zu verschieben. De
AVR Assembler Tutorial 7

AVR Assembler Tutorial 7

Tutorial 7 willkommen!Wir sind zur ersten Show heute wie man eine Tastatur aufräumen, und dann zeigen, wie die analogen Eingänge verwenden, um die Kommunikation mit der Tastatur.Wir tun dies mit Interrupts und ein einzelner Draht als Eingabe. Wir wer
AVR Assembler Tutorial 10

AVR Assembler Tutorial 10

Willkommen im Tutorial 10!Sorry, dass es so lange gedauert, diese Fortsetzung raus, aber das ist eine ziemlich hektische Zeit des Jahres. Jedenfalls, ist hier es!Wir haben einen langen Weg zurückgelegt und Sie sind wahrscheinlich schon tüchtig genug
AVR Assembler Tutorial 5

AVR Assembler Tutorial 5

Heute wollen wir einen genaueren Blick auf die verschiedenen Speicherplätze in den Atmega328p Microcontroller und sehen, ob wir besser verstehen können, wie Dinge gespeichert werden, wo sie gespeichert sind und wie die Zeiger und Lookup-Tabellen arbe
AVR Assembler Tutorial 4

AVR Assembler Tutorial 4

Willkommen zum Tutorial Nummer 4!In diesem Tutorial werden wir eine Schaltung bauen die simulieren wird das Rollen der zwei Würfel. Dann werden wir zuerst eine Brute-Force-Programm schreiben, die die Arbeit erledigt. Dann werden wir dieses Programm a
AVR Assembler Tutorial 3

AVR Assembler Tutorial 3

Willkommen zum Tutorial Nummer 3!Bevor wir loslegen, möchte ich einen philosophischen Punkt zu machen. Scheuen Sie sich nicht zum Experimentieren mit den Schaltungen und den Code, den wir in diesen Tutorials aufbauen. Ändern Sie Drähte herum zu, füge
Gewusst wie: Einstieg in Eclipse und AVR

Gewusst wie: Einstieg in Eclipse und AVR

AVRs programmieren macht Spaß, aber manchmal machen die Hersteller Entwicklungsumgebungen Codeverwaltung eine lästige Pflicht. Wenn Ihr auf der Suche nach einer freien, cross-Plattform, qualitativ hochwertige Software für die Programmierung von AVR E
Einen erweiterten Ansatz für Arduino & AVR Programmierung

Einen erweiterten Ansatz für Arduino & AVR Programmierung

Diese instructable ist Pflichtlektüre für alle, die mit Core-AVR-Chips und Arduino vertraut ist.Nun, um beim Lesen die instructable genauer zu sein, können Sie:(1) wissen der richtigen Unterschied zwischen AVR und Arduino.(2) Programmierung Arduino m
Programmierbare LED

Programmierbare LED

inspiriert durch verschiedene LED Throwies, blinkenden LEDs und ähnliche Instructables ich wollte meine Version einer LED durch einen Mikrocontroller gesteuert.Die Idee ist, die LED blinkende Sequenz programmierbar zu machen. Diese Umprogrammierung e
Hack ein Toasterofen Reflow Löten

Hack ein Toasterofen Reflow Löten

wie ich in mein Hobby Elektronik ernster bekommen, ich muss mit mehr SMD-Komponenten arbeiten. Einige Komponentenpakete sind sehr schwierig oder unmöglich, mit einem traditionellen Lötkolben Löten. Um dieses Problem zu lösen, habe ich beschlossen, ei