Binärbaum

2.4 Bäume (Binärbäume)

Synopsis: [Binärbaum] Viele Inhalte entnommen aus LFB 02L-baeume-arbeitsblatt.docx [u-helmich.de/inf/kursQ1/folge17/folge17.html] Definitionen Fragen zum Baum oben: Tiefendurchlauf Gehe alle Knoten ausgehend vom Startknoten (Wurzel) durch. Es gibt 3 Reihenfolgen: Ein Inorder-Tiefendurchlauf ergibt diese Zahlenfolge:5, 10, 21, 7, 8, 2, 3, 0Nennen Sie die Zahlenfolge für einen Preorder-Tiefendurchlauf: Nennen Sie die Zahlenfolge für einen Postorder-Tiefendurchlauf: Binärbaum implementieren Ich…

1.1b 🚧🏋️ Bitschubserei

1.1b 🚧🏋️ Bitschubserei

Synopsis: [MezData: Ausdrücke und Operatoren] [SPS-Logik-Simulation] Sobald mehrere Port-Pins auf einmal gelesen oder gesetzt werden sollen wird es mit digitalWrite() und digitalRead() umständlich, ausserdem brauchen diese Operationen deutlich länger als der direkte Zugriff über die Portregister.Hinweise: Zur Veranschaulichung habe ich hier unsigned char a; // 8 Bit ohne Vorzeichen (uint8_t) verwendet. In den [] Klammern…

2.2 Stack (Kellerspeicher/Stapel)

Synopsis: [Interface Deque<E>][Wikipedia: Stapelspeicher] Als Speicherelemente werden hier zunächst Int-Zahlen verwendet, es könnten aber auch Objekte sein. Stack mit Array implementieren Verwendet man ein Array stapel als Stapelspeicher, muss man wissen wo sich das oberste Element befindet. Dazu wird ein Stackpointer (SP) verwendet, eine Variable, die den Index bzw. die Adresse des obersten Elements bzw….

Fachinformatiker für Anwendungsentwicklung Prüfungsvorbereitung (Software)

Softwareentwicklungsmodelle [Wikipedia: Softwaretechnik] Kategorien: Sequenzielle Vorgehensweise, Agile Vorgehensweise, Entwicklungsmethode, EntwicklungsphilosophieModelle: Extreme Programmierung, Wasserfallmodell, V-Modell, Prototyping, Rational Unified Process, Scrum, Spiralmodell, Agile Unified Process, Testgetriebene Entwicklung, Kanban, Modellgetriebene Softwareentwicklung, Reifegradmodell.Häufig verwendet: Netzplan, Gantt-Diagramm, Scrum vs. Kanban Scrum: Scrum Master, Product Owner, Scrum Team, Stakeholder, User-Story, Scrum-Board, Product-Backlog, Sprint-Backlog, Produktinkrement. Testen von Software Testgetriebene Softwareentwicklung, Black-Box-Test, White-Box-TestBegriffe:…

1.1s 🚧 Spickzettel

Sammlung für die lokale Formelsammlung 🤠. Beispielsketch Sketch nennt man bei Arduino die Entwürfe für ein Programm. Ein Sketch ist eine Textdatei z.B. „Beispiel“ mit der Endung .ino also Beispiel.ino. Die Datei muss sich in einem gleichnamigen Ordner hier Beispiel befinden. Dafür #define Synopsis: C-Präprozessor📖 Präprozessor-Direktiven🔗.Die Pins am µC haben Bezeichnungen wie D13 oder PC13….

2.1 Verkettete Listen

2.1 Verkettete Listen

Synopsis: [Wikipedia: Liste (Datenstruktur)] [Class LinkedList<E>] [W3schools: Java LinkedList] Verkettete Listen dienen zur Speicherung beliebiger Elemente (Zahlen, Strings, Objekte …) im Hauptspeicher. Sie fallen in die Kategorie der dynamischen Datenstrukturen. Hierbei handelt es sich um Datenstrukturen, die beliebig im Hauptspeicher wachsen können, sich aber auch wieder beliebig verkleinern können.Um eine verkettete Liste realisieren zu können, benötigt…

STM32 GPIO Blockschaltbild

1.1x STM32 GPIO Ports

Hier eine etwas vereinfachte Betrachtung, für Details Doku lesen: [Referenz Manual rm0038 S183ff.] [Datenblatt stm32l152re S92] [STM32-API] Prinzip-Schaltbild für einen I/O-Pin Veranschaulichung I/O Pin Teilschaltung mit Digital Einstieg in die Vielfalt der Einstellmöglichkeiten. Jeder Pin kann als General Purpose Input/Output  (Allzweckeingabe/-ausgabe) oder mit einer alternativen Funktion verwendet werden. Im Vergleich mit dem oberen Blockschaltbild fehlen…

3.6 🚧 UART / RS232

Synopsis: [🔗 de.wikipedia.org/wiki/Universal_Asynchronous_Receiver_Transmitter] [🔗 https://reference.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…

Impulsdiagramm

3.7 🚧 I2C Schnittstelle

[MezData: Links-I2C] [Portexpander HLF 8574] [Temperatursensor LM75A] [Druck- und Temperatursensor BMP280] [🍀 Discovery-Game im Stadtmuseum Tübingen][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.setClock(frequenz); Optional die Übertragungsfrequenz anpassen, voreingestellt sind 100000 Hz siehe [Arduino-Doku] Schreiben in…

AVR-Chips mit Arduino IDE 2.1.

Bei Arduino wird üblicherweise mittels Bootloader (eine kleine vorinstallierte Software auf dem µC) über USB die Software aufgespielt. Bei Projekten, bei denen die AVR-Mikrocontroller selber verbaut werden ist oft ein Programmer erforderlich, der über die ISP-Schnittstelle angeschlossen wird z.B.: Mit der Arduino IDE 2.1.0 konnte ich nicht mehr wie gewohnt mit dem Hochladen-Pfeil die Software…

3 STM32CubeIDE

Arbeitsbeschaffungsmaßnahme! Gefühlt ein Albtraum für Unterricht in TG11. Laden unter https://www.st.com/content/st_com/en/stm32cubeide.html Beim Download erst anmelden und E-Mailadresse angeben, dann kommt per Mail ein Link, der allerdings bei mir unter Safari und FireFox nicht funktioniert hat. Erst als ich unter FireFox uMatrix ausschaltete ging es. Download ist 1,1 GB! gross. Auf jedem Rechner die pkg installieren.Die…

AD-Wandler

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] Die AD-Wandlung (Analog-Digital-Wandlung) ist ein Prozess, bei dem analoge Signale in digitale Signale umgewandelt werden. Dies ist essenziell für die Verarbeitung von Signalen in digitalen Systemen wie Computern, Smartphones oder Messgeräten. Fachbegriffe Wert-Quantisierung: Analoge Spannung in…

Servo PWM-Signal

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 Wägemodul…

2 Visual Studio Code

Die Live Server Erweiterung installieren für Webseiten entwickeln. UpDate-Hinweise ignorieren, kann nur Administrator durchführen. Erweiterungen Nutzen Git Graph grafische Anzeige von Repository-Historie inklusive Branch-Visualisierung Indent-rainbow Farbig Hervorhebung der Einrückungs-Ebenen Markdown All in One Mark Down Short Keys Todo Tree selbst definierbare Schlüsselwörter (zB.: TODO, CONFIG, REFERENCE, …) Ordner-/Workspace-intern rekursiv suchen, highlighting und Anzeige einer entsprechenden…