Hendrich.org

Mikrocontroller

In diesem Bereich geht um Microcontroller. Ende 2010 habe ich mit dem AVR Net IO (ATMega32) von Pollin begonnen. Mittlerweile habe ich Erfahrungen mit anderen AVR Chips (ATTiny13), mit Arduino und mit der NodeMCU mit einem ESP8266.

Blogbeiträge

Transistor als Schalter

Veröffentlicht: 10.04.2021

Oft muss man mit niedrigen Spannungen größere Spannungen schalten. Folgende Anwendungen habe ich:

Ich habe folgende Schaltung mit 2N2222 Transistor verwendet. Dabei muss man einzig…

Weiterlesen

USBasp Treiber unter Windows 10

Veröffentlicht: 03.06.2020

Um den Mikrocontroller-Chip zu flashen benötigt man einen Programmer. Diese basieren meist auf dem USBasp (z.B. von Thomas Fischl). Schließt man den Programmer unter Windows 10 am USB Port an und versucht den Treiber zu verwenden, erhält man die Fehlermeldung, dass der Treiber nicht digital signiert sei.

Um das zu umgehen, kann man

Weiterlesen

AVR Toolchain

Veröffentlicht: 03.06.2020

Hier beschreibe ich nochmal Schritt für Schritt wie man die Firmware auf den Chip hochlädt. Dabei verwende ich einen USB-Programmer vom Typ USBasp.

Treiber für den USB-Programmer installieren

Details habe ich in hier beschrieben.

Compiler installieren

Man könnte sich natürlich entscheiden, AVR Studio installieren (z.B. WinAVR) aber ich habe mich entschieden, Arduino zu installieren. Das IDE von…

Weiterlesen

ESP8266 mit Programmer flashen

Veröffentlicht: 27.08.2018

Leider ist der serielle Chip auf meinem ESP8266 Node MCU defekt. Wenn ich ihn über den USB Anschluss mit dem Computer verbinde, wird keinerlei USB Gerät erkannt. Folglich gibt es auch keinen COM-Port über den man die Firmware auf den Chip flashen kann.

Allerdings besitze ich noch einen USB Programmer vom Typ CP2102. Diesen habe ich wie folgt mit dem NodeMCU verbunden:

CP2101 NodeMCU
VCC 3…

Weiterlesen

ESP8266: Feinstaubsensor gebaut

Veröffentlicht: 03.12.2017

Ich habe mir gemäß dieser Anleitung einen Feinstaubsensor gebaut: http://luftdaten.info/feinstaubsensor-bauen

Weiterlesen

Porterweiterungen im Vergleich

Veröffentlicht: 07.04.2017

Oft reicht bei Projekten die Anzahl der verfügbaren Ports nicht aus. Daher habe ich mir mal drei verschiedene Typen von Porterweiterungen angeschaut.

Portexpander PCF8574

Wird über den I2C-Bus gesteuert und dank Jumpern auf dem Board können bis zu 8 von diesen Modulen auf einem I2C-Bus verwendet werden. Leider ist sind auf dem Chip keine echten GPIOs: Auf den Ein/Ausgängen ist der Pull-Up-Widerst…

Weiterlesen

Anschluss eines Tasters

Veröffentlicht: 18.01.2014

Die Anschlusspins PB1 und PB3 der Taster sind standardmäßig auf High (Pullup).

Weiterlesen

Stromzähler auslesen

Schaltung zum Justieren der SchwelleVeröffentlicht: 16.01.2013

Leider ist mein Haus (Baujahr 2010) noch mit Ferrais-Zählern ausgestattet. Leider kann man nur kostenpflichtig Digitalzähler eingebaut bekommen. Daher habe ich nach langem Abwarten beschlossen, das silberne Rädchen mit dem roten Strich auszulesen. Dazu verwende ich ein Foto-Reflex-Optokoppler vom Typ CNY70. Beim Aufbau habe ich mich an diverse Anleitungen im Internet gehalten:

Weiterlesen

Temperatursensor DS18S20

Veröffentlicht: 01.05.2011

Die Temperatursensoren beinhalten einen interenen AD-Wandler und übermitteln die Daten mit dem One-Wire-Protokoll. Dies ermöglicht es, mehrere (bis zu 8) Sensoren an einen Digital-Eingang des Atmega zu legen.

Zwei Anschlussmöglichkeiten: Normaler Modus = 3 Leitungen, Parasitärer Modus = 2 Leitungen (mit VCC über Datenleitung).

Ethersex unterstützt dieses One-Wire-Protokoll, siehe http://www.gtkdb…

Weiterlesen

Atmega: Codebeispiel zum Interrupt abfragen

Veröffentlicht: 01.04.2011

Elegant ist es, einen Tastendruck oder das digitale Signal des Stromzählers mittels Interrupt in einen Counter auf dem Mikrocontroller zu übertragen.

Meist löst ein Flankenwechsel auf einem der Eingänge einen Interrupt aus. Man muss allerdings noch später herausfinden, auf welchem Eingang ein Flankenwechsel stattgefunden hat.

Hierzu folgender Beispielcode:

ISR (PCINT0_vect)                   //…

Weiterlesen

Atmega: Bootloader

Windows-Interface von Hagens Flash-ToolVeröffentlicht: 01.03.2011

Was ist ein Bootloader?

Der Bootloader wird benötigt, wenn man kein ISP-Kabel zum Flashen hat oder ein Update der Firmware im laufenden Betrieb vornehmen möchte. Siehe z.B. http://de.wikipedia.org/wiki/Bootloader

Bootloader von Pollin

Der Original-Bootloader von Pollin ist meiner Meinung nach nicht wirklich praktikabel und taugt nur für die ersten Experimente. Außerdem ist er ja auch nur auf dem…

Weiterlesen

Atmega: Firmware flashen

Veröffentlicht: 01.02.2011

Mit UsbAsp von Fischl und dem Atmega644 auf dem AVRNetIO:

avrdude -p m644 -c usbasp -v -P usb -U flash:w:"ethersex.hex":i

Mit einem Noname ISP-Programmer, z.B. auf einen Attiny13:

avrdude -p t13 -c usbasp -U flash:w:xxx.hex

Weiterlesen

Atmega: Fuses setzen

Veröffentlicht: 01.01.2011

Hilfreich ist dieser Fuse-Calculator .

Mit UsbAsp von Fischl kann man mit folgenden Befehlen programmieren.

L-Fuse (=die gefährlichste, weil hier die Frequenz eingestellt wird). Mit untenstehenden Einstellungen läuft der Chip ATMega644 auf dem AVR Net IO Board von Pollin mit 16 Mhz.

avrdude -p m644 -c usbasp -v -P usb -U lfuse:w:0xff:m

H-Fuse legt die Bootloader-Adresse und dessen Größe fest.…

Weiterlesen