1.4 Transistor-Logik

1.4 Transistor-Logik

Achtung: Es ist nur eine Simulation für Digitaltechnik! Die Simulation verhält sich hier nicht wie es der Elektrotechniker erwarten könnte. Jedes Modell hat seine Grenzen, Digital ist keine Simulation für Analoge Schaltungen und bei obigem praktischem Beispiel würde ich im Labor andere Ergebnisse erleben: Glühlämpchen und Relais haben keinen Innenwiderstand bei Digital? To Do: Elektrotechnische…

1.5 Impulsdiagramm

1.5 Impulsdiagramm

Mit dem Impulsdiagramm bzw. Timingdiagramm kann der zeitliche Verlauf von Signalen dargestellt werden. Die Transistoren in einem Schaltkreis benötigen eine kurze Zeit bis sie umschalten. Diese Zeit für Durchlauf eines Signals durch einen Schaltkreis kann bei der Analyse von Interesse sein. In Digital kann beim Messwertegraph die Durchlaufzeit durch ein Gatter mit dem Haken bei…

1.5 ⏲ Timer

Dank der STM32-Arduino HardwareTimer library wird man von den nicht ganz einfachen Details der STM32 Timer zunächst verschont. Info: In der MBED-Umgebung könnte das so aussehen: Ticker Dort wird mit Threads gearbeitet, die schlafen gelegt werden, erinnert mich an Java..Hier nun der Weg mit STM32-Arduino. (Unterschied zu Atmel-AVR bei Register Compare, hier kein +1 zu…

1.6 🚧 Frequenz und Periodendauer

1.6 🚧 Frequenz und Periodendauer

[de.wikipedia.org/wiki/Frequenz 🔗] Die Frequenz f eines Signals ist die Anzahl der Wiederholungen pro Sekunde.Im Beispiel ein Rechtecksignal. Die Periodendauer T ist dabei z.B. die Zeit von steigender zur steigender Flanke. Um die Frequenz zu messen kann z.B. die Anzahl der steigenden Taktflanken in einer Sekunde gezählt werden.Bei niedrigen Frequenzen wird eher die Periodendauer T gemessen.Oft…

1.7 🚧 PWM (PulsWeitenModulation) Ausgabe

1.7 🚧 PWM (PulsWeitenModulation) Ausgabe

Synopsis: [de.wikipedia.org/wiki/Pulsdauermodulation 🔗] [www.arduino.cc/reference/en/language/functions/analog-io/analogwrite/ 🔗]Wieder so ein “explosives” 🧨 Thema! Sobald man sich näher damit beschäftigt kann es spannend aber auch kompliziert werden… Arduino: analogWrite() [docs.arduino.cc/learn/microcontrollers/analog-output/ 🔗] Die Helligkeit der LED an PC7 soll durch den low-aktiven prellfreien UserButton an PC13 in den Stufen0% -> 25% -> 50% -> 75% -> 100% -> 0% usw.mit…

2.0 Flip-Flops

2.0 Flip-Flops

Siehe auch mezdata.de/..FlipFlop Flash-Animationen funktionieren mit Google-Chrome und Erweiterung Ruffle. RS-FlipFlop Bei Druck auf Stopp-Taste soll die Wagen-hält Anzeige so lange leuchten bis die Tür auf geht. RS-FlipFlop Wikipedia: RS-FlipFlop MezData: FlipFlop a b Qt !Qt Qt+1 !Qt+1 Funktion 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 0…

2.2 Zähler (a-)synchron, Zustandsdiagramm

2.2 Zähler (a-)synchron, Zustandsdiagramm

Asynchrone Zähler (Ripple Counter) Siehe Mezdata->Asynchrone Zähler Aufgabenstellungen: Erstelle Timing-Diagramm unter Beachtung der Gatterdurchlaufzeiten. Welche “Zwischenzustände” ergeben sich? Ändere die Verschaltung so, dass der Zähler vorwärts zählt. Baue einen CTR DIV8 Zähler. Aufgabe: Zähler als Frequenzteiler Zähler können als Frequenzteiler verwendet werden, am Zähler oben liegt an Q0 die halbe und an Q1 ein viertel…

2.3 🏛️ Klassische Dezimalzähler

2.3 🏛️ Klassische Dezimalzähler

Hier wird Old-School Zähler bauen behandelt. In Digital gibt es Zählerbaustein mit Enable und synchronem Clear, der das Zähler-Bauen sehr vereinfacht. CTR DIV10 selber bauen mit Endlichem Automat in Digital Noch ein paar Ausgänge dran für Z als 4er Bündel, Signal bei CT=0 und CT=9 und einem asynchronen Reset. Als benutzerdefiniertes Bauteil einsetzen Den Selbstbau-Zähler…

2.4 Schaltwerke bauen

2.4 Schaltwerke bauen

Systematisch Schaltwerke zu entwickeln ist nicht schwer. Im TGI wird dafür auf das Modell des Synchronen Moore-Automaten zurück gegriffen, siehe Vergleich verschiedener Automatentypen.Mehrere D-FlipFlops werden zu einem Register zusammen gefasst. Die CLK-Eingänge der FF sind mit dem Takt verbunden und können dadurch ihre Zustände nur synchron zum Takt ändern. Zu jedem Zustand kann durch ein…

2.6 🚧 Schieberegister

2.6 🚧 Schieberegister

Bei jedem Takt wird der Inhalt der FlipFlops weiter geschoben. Vervollständigen Sie das Impulsdiagramm, Gatterdurchlaufzeiten müssen nicht berücksichtigt werden (kein Einzelschrittmodus). Serielle Datenübertragung Mit Schieberegistern können Daten seriell übertragen werden. Mit Load werden die Daten in die Register links übernommen und mit 4 positiven Taktflanken in die Register rechts verschoben. Datenübertragung automatisieren Erstellen Sie ein…

2.7 Zeitmultiplex Anzeigen

2.7 Zeitmultiplex Anzeigen

Synopsis: [de.wikipedia.org/wiki/Multiplexverfahren] [de.wikipedia.org/wiki/Fluoreszenzanzeige] [calcuseum.com] [A Guide to Fundamental VFD Operation] Diese 7 Segment Anzeigeröhre wurde in Taschenrechnern verbaut, bevor es LED- und LCD-Anzeigen gab. Die 72 Leuchtflächen (7 Segmente + 1 Dezimalpunkt) * 9 Stellen werden mit 19 Anschlüssen angesteuert. Wie funktioniert das?Lösung: Die Anzeigen der 9 Stellen leuchten nicht gleichzeitig sondern werden nacheinander kurz…

2.8 🚧 Speicherbausteine

Um viele Informationen dauerhaft zu speichern sind Schalter nicht so praktisch.Dazu gibt es ROM (Read Only Memory) Bausteine. PROM mit Sicherungen (E)EPROM mit Floating-Gate-Transistoren Synopsis: [de.wikipedia.org/wiki/Floating-Gate-Transistor] Statt der Sicherungen wird besonderer Transistor verwendet… ROM-Baustein in Digital In Digital gibt es ROM-Bausteine, die leicht programmiert werden können…

3.0 Schnittstellen und Module Überblick

SPI I2C UART Prinzip Master—Slave Master-Slave Gleichberechtigt Anzahl Kommunikations-Teilnehmer 1 Master,beliebig viele Slaves 1 Master, bis 127 Slaves Zwei Teilnehmer Übertragungsart Vollduplex Halbduplex Halb-/Vollduplex Datenübertragungsrate bis zu 10MHz typ. 3,4 Mbit/s bis zu 5Mbit/s 50..3.000.000Bit/s Anzahl Leitungen minimal 4 2 minimal 2 Taktsynchron synchron synchron asynchron Anschlüsse SCLK, MOSI, MISO , SS SDA, SCK TX,RX…

3.0 🚧 Rechenwerk

Methode Reziprokes Video [Wikipedia: Reziprokes Lehren]Teilen Sie Ihre Klasse in Gruppen zu je 4 SuS ein. Alle SuS schauen sich das Video an.SoS 1 fasst das gesehene schriftlich zusammen. Die Zusammenfassung wird anschließend den Gruppenmitgliedern vorgetragen.SoS 2 formuliert Fragen zum Video. Die Gruppenmitglieder beantworten die Fragen .SoS 3 achtet auf ungeklärte schwierige Fragen. Dies können…

3.1 AD / DA Wandlung

3.1 AD / DA Wandlung

[How to get the best ADC accuracy in STM32 microcontrollers][Was sind A/D- und D/A-Wandler?][MezData: Analog und Digital] [Wikipedia: Analog-Digital-Umsetzer] Analoge Spannung in digitalen Wert wandeln Eine Eingangsspannung Ue wird mit einer Referenzspannung Uref verglichen und das Verhältnis als n-stellige Binärzahl ausgegeben.Je mehr Stellen (Bits) der Digitalwert hat desto genauer lässt sich die Spannung umwandeln.Die Auflösung…

3.2 Servo steuern mit PWM

3.2 Servo steuern mit PWM

[L293D] [MezData: Servos][Arduino Servo Library][MezData: Modellbau-Servotester mit Pulsweiten-Anzeige] Modellbauservo Ein Modellbauservo wird durch die Breite eines Impulses gesteuert. Der Stellwinkel des Servos ist proportional zur Impulsbreite. Alle 20 ms sollte ein Steuerimpuls kommen. Die übliche Impulsbreite bewegt sich zwischen 1 ms und 2 ms. Servos können auch ausserhalb dieses Bereiches noch gesteuert werden, drehen weiter,…

3.5 Sensoren

Bosch BMP280 Druck und Temperatursensor mit I2C und SPI Schnittstelle [Infoseite zum Sensor Pressure sensor BMP280] [Bosch Datenblatt] [MezData Links zu Sensoren] Ich nutze PB8 und PB9 für I2C. PB10 und PB11 könnten auch I2C werden jedoch als USART für das Bluetooth-Modul benötigt. I2C Schnittstelle auf Seriell ausgeben I2C auf LCD ausgeben SPI Schnittstelle

3.6 🚧 UART / RS232

Synopsis: [de.wikipedia.org/wiki/Universal_Asynchronous_Receiver_Transmitter 🔗] [www.arduino.cc/reference/en/language/functions/communication/serial/ 🔗]Nochmal anschauen: 2.6 Schieberegister Ist die älteste und schwierigste einfache Serielle Schnittstelle. Die Datenübertragung erfolgt asynchron (eine Baud-Rate muss eingestellt werden) und hat Start- und Stopp-Bits ausserdem kann ein Paritätsbit übertragen werden. Es ist die elementare serielle Schnittstelle für Arduino, darüber werden viele der Boards programmiert und darüber wird mit dem…

3.7 🚧 I2C Schnittstelle

3.7 🚧 I2C Schnittstelle

[MezData: Links-I2C] [Portexpander HLF 8574] [Temperatursensor LM75A] [Druck- und Temperatursensor BMP280] [MezData: Discovery-Room][stm32-I2C-Lib][Elektrische Gedanken] Einlesen in die Theorie der Schnittstelle Befehl / Beispiel Beschreibung #include <Wire.h> // I2C-Library I2C Library laden Wire.begin();Wire.begin(SDA, SCL); // Alternative Leitungen festlegen Schnittstelle starten Wire.beginTransmission(0x27); Daten sollen zu Zieladresse 0x27 gesendet werden Datenpuffer wird geleert.Der Datenpuffer ist 32 Byte groß…