From 683f165ea68100b449e77b8c3f2a5cc16ebe6972 Mon Sep 17 00:00:00 2001 From: Martin Preuss Date: Fri, 26 Dec 2025 00:55:08 +0100 Subject: [PATCH] Home aktualisiert --- Home.md | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/Home.md b/Home.md index 4812ea9..a2b12fc 100644 --- a/Home.md +++ b/Home.md @@ -19,44 +19,56 @@ Ein möglicher Verlauf bei DIY Elektronik-Projekten ist: * Löten der Platine (zunächst normale Komponenten, später dann auch SMD) * Planen und entwickeln eines Gehäuses (zu Beginn erst mal Anpassung der Platine an bestehende Gehäuse) + # Was ist das Aquamaniac Home Control System? AqHome selbst ist eine Mischung aus Assembler Code für AVR Mikrokontroller (vor allem AtTiny, aber auch ATmega), einer C-Bibliothek zur Kommunikation mit diesen Mikrokontrollern und Anwendungen zur Integration und Sammlung von Daten, die von diesen, aber auch anderen Geräten (z.B. via MQTT) geliefert werden. + ## Mikrokontroller Das Projekt enthält Assembler Code für Mikrokontroller, die zusammen mit Sensoren auf kleinen Platinen betrieben werden und über ein 2-Draht-Protokoll miteinander kommunizieren. Bisher verwendet werden ATtiny 84, ATtiny 85, ATtiny 841 sowie ATmega 324 und ATmega 664 . Enthalten sind Module für: -- Two-Wire-Bus (AKA I2C) -- One-Wire-Bus -- SPI-Bus -- UART +* Two-Wire-Bus (AKA I2C) +* One-Wire-Bus +* SPI-Bus +* UART sowie Treiber-Module für (u.a.): -- DS18b20 (Temperatursensor) -- SI7021 (Temperatur- und Luftfeuchtigkeitssensor) -- SGP30 (CO2-Sensor) -- CCS811 (CO2-Sensor) -- SK6812 (LED-Module in LED-Streifen) -- I2C-Displays -- SPI-Displays +* DS18b20 (Temperatursensor) +* SI7021 (Temperatur- und Luftfeuchtigkeitssensor) +* SGP30 (CO2-Sensor) +* CCS811 (CO2-Sensor) +* SK6812 (LED-Module in LED-Streifen) +* I2C-Displays +* SPI-Displays + ## Warum ATtiny (8-Bit-Kontroller)? * verfügbar in DIP-Packages, damit sind selbst für Anfänger einfache Schaltungen auf Breadboards möglich * benötigen kaum externe Komponenten zum Betrieb, was für erste Testschaltungen extrem hilfreich ist * klein und preiswert -* leistungsstark genug zum Betrieb moderner Umwelt-Sensoren +* leistungsstark genug zum Betrieb moderner Umwelt-Sensoren (Temperatur, Luftfeuchtigkeit, CO2) * viele Informationen und Tutorials verfügbar * freie Assembler und Compiler verfügbar * sehr tolerant bezüglich der benötigten Spannung (3.3V, 5V) * viele Peripherie-Geräte bereits enthalten (z.B. Timer, ADC) * Selbst-Flash-fähig, d.h. man kann später im Feld neue Firmware aus der Ferne aufspielen -## Warum Assembler Code für die Mikrokontroller? + +## Warum gerade diese alte Generation von AVR Kontrollern? + +* gerade für Anfänger gut geeignet weil nicht zu kompliziert in der Handhabung/Programmierung +* trotzdem genügend Peripherie (Timer, ADC, USART) +* viele und langjährig getestete, reife Flash-Geräte auf dem Markt +* auch in nicht-SMD-Technik verfügbar (gerade für noch nicht so erfahrene Löter) + + +## Warum Assembler-Code für die Mikrokontroller? * eine persönliche Leidenschaft von mir seit der Jugend, früher vornehmlich in Z80-Assembler (damals unverzichtbar für leistungsfähige Projekte auf meinem damaligen Rechner, ein Schneider CPC 464), später in x86-Assembler * Code mit vorhersehbarer Größe und Geschwindigkeit, gerade auch wichtig, wenn man bestimmte Busse wie I2C, SPI und andere implementieren möchte * geringer Speicherplatz -* insgesamt das genaue Gegenteil der modernen Programmierweise, in der man Megabytes von Code und Bilbiotheken einbindet, ohne genau zu wissen was dieser Code tut und was der noch alles einbindet, weil es aufgrund der Komplexizität und Zeitmangel einfach nicht mehr zu durchschauen ist \ No newline at end of file +* insgesamt das genaue Gegenteil der modernen Programmierweise, in der man Megabytes von Code und Bilbiotheken einbindet, ohne genau zu wissen was dieser Code tut und was der noch alles einbindet, weil es aufgrund von Komplexizität und Zeitmangel einfach nicht mehr zu durchschauen ist \ No newline at end of file