Kostenlose technische Bibliothek ENZYKLOPÄDIE DER FUNKELEKTRONIK UND ELEKTROTECHNIK Anschließen einer großen Anzahl von Tasten an einen Mikrocontroller-Eingang. Enzyklopädie der Funkelektronik und Elektrotechnik Lexikon der Funkelektronik und Elektrotechnik / Funkamateur-Designer Die Idee der vorgeschlagenen Lösung wurde in [1] vorgestellt. Sein Wesen besteht darin, die maximale Anzahl von Kontaktsensoren (Reed-Schalter, Tasten) über die minimale Anzahl seiner Ausgänge an den Mikrocontroller anzuschließen. Diese Idee wurde mit der Universal-Zeitschaltuhr KR1441VI1 umgesetzt. Der zeiteinstellende RC-Schaltkreis des Timers besteht aus einem Kondensator und einer Reihe von Widerständen, die mit jeder Taste in Reihe geschaltet sind. Eine bestimmte geschlossene Taste hat eine eigene Wiederholungsrate der vom Timer erzeugten Impulse, die vom Mikrocontroller gemessen wird [2]. Die Originalversion weist zwei wesentliche Nachteile auf. Eine davon ist die Verwendung von zwei Mikrocontroller-Eingängen. Erzeugte Impulse werden einem von ihnen zugeführt. Der zweite wird verwendet, um festzustellen, ob der Knopf geschlossen ist. Dies kann jedoch problemlos per Software erfolgen, wodurch dieser Mikrocontroller-Eingang für andere Zwecke verwendet werden kann. Ein weiterer Nachteil besteht darin, dass die Frequenz und nicht die Pulswiederholungsperiode gemessen wird. Um eine lineare Abhängigkeit der Frequenz von der Tastennummer zu erhalten, wurde daher eine große Anzahl von Zeitwiderständen unterschiedlicher Werte verwendet.
Die vorgeschlagene technische Lösung, deren Diagramm in Abb. dargestellt ist. 1, frei von diesen Mängeln. Der Timer KR1441VI1 in CMOS-Struktur (analog zu LMC555) arbeitet im selbstoszillierenden Modus mit einem Tastverhältnis von 2 [3]. In diesem Modus ist die Impulswiederholungsperiode gleich T = 2 ln2 CR, Dabei sind C und R die Kapazität bzw. der Widerstand der Elemente der Zeitschaltung. Mit C = C1 und R = R1·N, bestehend aus N (entsprechend der Anzahl der Tasten) identischen Widerständen mit dem Widerstand R1 in Reihe geschaltet, ist die Periode T gleich: T≈1,39 C1 R1 N Es stellt sich heraus, dass es proportional zur Anzahl der Widerstände zwischen Kondensator C1 und dem ersten geschlossenen Knopf SB1–SB32 ist und leicht von einem Mikrocontroller gemessen werden kann. Wie in der Originalquelle hat beim gleichzeitigen Kurzschließen mehrerer Tasten diejenige mit der niedrigsten Nummer Vorrang. Der Widerstand R38 ist erforderlich, um die Impulserzeugung aufrechtzuerhalten, wenn alle Tasten geöffnet sind. Mit dem Trimmerwiderstand R35 wird das Verhältnis zwischen der Schwingungsdauer des Timers und der Dauer des vom Mikrocontroller erzeugten Messintervalls eingestellt, das zur korrekten Bestimmung der Nummer der gedrückten Taste erforderlich ist. Das Mikrocontroller-Demoprogramm für Interrupt IRQ0 misst die Dauer der Periode T, wandelt sie in eine Tastennummer um und zeigt sie auf dem LCD des MT-16S2S an [4]. Die Verbindung zwischen Mikrocontroller und LCD erfolgt über eine dreiadrige serielle Schnittstelle. Lediglich vier Pins des Mikrocontrollers dienen der Ein- und Ausgabe von Informationen, der Rest kann für andere Zwecke genutzt werden. Zur Messung der Periode wird ein Acht-Bit-Timer-Zähler-0-Mikrocontroller verwendet. Basierend auf der zunehmenden Pegeldifferenz am Interrupt-Request-Eingang IRQ0 liest das Programm die Dauer der gemessenen Periode und setzt das Zählerregister zurück. Um die Messgenauigkeit zu erhöhen, wird auch der Zählervorteiler zurückgesetzt. Da der Vorteiler aller Timer-Zähler-Mikrocontroller in den Mikrocontrollern der ATtiny-Serie gleich ist, kann sich dies auf die Dauer der von Timer-Zähler 1 generierten Zeitintervalle auswirken, wenn er mit einem anderen Vorteiler als einem verwendet wird. Wenn die Kontakte aller Tasten geöffnet sind, läuft der Zähler, der die Periode misst, über. Der offene Zustand wird durch den entsprechenden Interrupt bestimmt. Die maximale Anzahl erkannter Tasten hängt von der Instabilität der vom Timer und Mikrocontroller erzeugten Zeitintervalle ab. Bei der Taktung des Mikrocontrollers über einen internen RC-Oszillator und der Verwendung eines Folienkondensators mit kleinem TKE, Widerständen mit kleinem TKE und einer Abweichung vom Nennwert von nicht mehr als 1 % in der zeiteinstellenden RC-Timerschaltung verringert sich die Anzahl der Tasten kann 12-16 erreichen. Durch eine genauere Auswahl der Widerstände konnten 32 Tasten erkannt werden. Ihre Zahl kann noch erhöht werden, indem die Frequenz des Mikrocontroller-Taktgenerators mit einem Quarzresonator stabilisiert wird. Das Gerätelayout verwendet einen importierten Folienkondensator C1 (analog zu K73-17) und Widerstände R1 - R32 für die Oberflächenmontage CR1206-FX-5621ELF mit einem Widerstand von 5,62 kOhm ±1 %. Von den 50 Widerständen eines Bandes wurden 32 mit einem Unterschied im maximalen und minimalen Widerstand von nicht mehr als 20 Ohm ausgewählt. Um den Einfluss der Abhängigkeit der Ausgangsspannung des Timers DA1 von der Anzahl der angeschlossenen Widerstände R1-R32 auf die Schwingungsdauer zu verringern, haben Widerstände mit niedrigerem Widerstand niedrigere Positionsnummern und die Timer-Ausgänge 3 und 7 sind miteinander verbunden. Der Trimmerwiderstand R35 muss ein Multiturn-Widerstand sein, zum Beispiel SP5-3 oder ähnlich. Die Anpassung wird wie folgt durchgeführt. Schließen Sie den Knopf mit einer um eins kleineren Position als dem Maximum (in diesem Fall SB31) und suchen Sie zwei Positionen des Schiebereglers des Trimmwiderstands R35, die einer Änderung der LCD-Anzeigen von 31 auf 32 und von 31 auf 30 entsprechen. Stellen Sie ein Bewegen Sie den Schieberegler in die mittlere Position zwischen den gefundenen Positionen.
Die Überprüfung des Geräts und das Debuggen des Mikrocontrollerprogramms wurden anhand des in Abb. gezeigten Layouts durchgeführt. 2. Die Mikrocontroller-Konfigurationsbytes wurden wie folgt programmiert: niedrig – 0xBF, hoch – 0xD4, zusätzlich – 0xFF. Da die benötigte Anzahl an Tasten für das Layout nicht gefunden wurde, musste ich stattdessen auf einen PP7-4LV-Schalter zurückgreifen. Oberflächenmontierte Widerstände werden direkt auf die Schaltplatinen gelötet. Bei ausgewählten Widerständen unter Raumbedingungen wurde die Anzahl der geschlossenen Schaltkontakte korrekt ermittelt, obwohl der Mikrocontroller mit einem internen RC-Oszillator betrieben wurde. Das Mikrocontroller-Programm kann von ftp://ftp.radio.ru/pub/2016/11/key-tx.zip heruntergeladen werden. Literatur
Autor: S. Ivanov Siehe andere Artikel Abschnitt Funkamateur-Designer. Lesen und Schreiben nützlich Kommentare zu diesem Artikel. Neueste Nachrichten aus Wissenschaft und Technik, neue Elektronik: Alkoholgehalt von warmem Bier
07.05.2024 Hauptrisikofaktor für Spielsucht
07.05.2024 Verkehrslärm verzögert das Wachstum der Küken
06.05.2024
Weitere interessante Neuigkeiten: ▪ Verzögern Sie die globale Erwärmung ▪ TRENDnet USB 3.0 Schlüsselanhänger mit IEEE 802.11ac-Unterstützung ▪ Vertrauen hängt von der Stimme ab News-Feed von Wissenschaft und Technologie, neue Elektronik
Interessante Materialien der Freien Technischen Bibliothek: ▪ Site-Bereich Mobilkommunikation. Artikelauswahl ▪ Artikel Und er hat keinen Freund, zumindest viele Freunde. Populärer Ausdruck ▪ Artikel Etikettenstempel. Standardanweisung zum Arbeitsschutz ▪ Artikel Rauscharmer Verstärker bei 144 MHz. Enzyklopädie der Funkelektronik und Elektrotechnik
Hinterlasse deinen Kommentar zu diesem Artikel: Alle Sprachen dieser Seite Startseite | Bibliothek | Artikel | Sitemap | Site-Überprüfungen www.diagramm.com.ua |