schule:esp8266
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
schule:esp8266 [2016-09-16 20:49] – [Ansteuerung über I²C] marco.bakera | schule:esp8266 [2017-08-04 18:03] – Inhalt gelöscht und Weiterleitung eingerichtet. marco.bakera | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== ESP8266 ====== | + | [[https:// |
- | {{: | ||
- | |||
- | [[https:// | ||
- | Variante von [[Python]], die auf Mikrocontroller zugeschnitten | ||
- | ist. Der | ||
- | [[http:// | ||
- | ein günstiger (~4$) Baustein mit WLAN-Funktionen, | ||
- | eine Micropython-Firmware existiert. Über das | ||
- | nodemcu Development-Kit, | ||
- | Baustein über einen USB-Anschluss, | ||
- | kommunizieren kann. Die PINs sind herausgeführt und lassen sich | ||
- | in Schaltungen verwenden. | ||
- | |||
- | ===== Installation der Firmware ===== | ||
- | |||
- | Nun soll die Firmware für Micropython installiert werden. Diese | ||
- | lässt sich von der Webseite | ||
- | [[https:// | ||
- | die Installation gibt es das Tool esptool.py, das sich ebenso | ||
- | einfach installieren lässt. | ||
- | |||
- | $ sudo pip2 install esptool | ||
- | |||
- | Leider funktioniert esptool derzeit nur mit Python2. | ||
- | |||
- | Anschließend kann die vorhandene Firmware auf den ESP8266 | ||
- | zunächst gelöscht und mit dem zweiten Befehl die neue Firmware | ||
- | übertragen werden. | ||
- | |||
- | $ esptool.py --port / | ||
- | $ esptool.py --port / | ||
- | |||
- | Bei mir kam es bei Geschwindigkeiten über 115200 Baud zu | ||
- | Problemen, weshalb ich die Geschwindigkeit reduziert habe. Die | ||
- | Befehle habe ich der | ||
- | [[http:// | ||
- | von mircopython entnommen. | ||
- | |||
- | ===== Zugriff über die serielle Schnittstelle ===== | ||
- | |||
- | |||
- | Nun kann mit einem Terminalprogramm auf den Microcontroller zugegriffen werden. Das geht mit putty, minicom, screen oder auch miniterm.py. | ||
- | |||
- | $ screen / | ||
- | | ||
- | oder | ||
- | |||
- | $ miniterm.py / | ||
- | |||
- | Für ''/ | ||
- | |||
- | Sollte miniterm.py noch nicht installiert sein, so kann es | ||
- | mit '' | ||
- | |||
- | Im Anschluss erhält man eine Python-Konsole, | ||
- | Projekte verwenden kann. Beim Start steht der ESP als Access | ||
- | Point zur Verfügung, auf den sich Clients mit dem | ||
- | Standardpasswort ' | ||
- | Dateitransfer kann dann das Kommandozeilentool | ||
- | [[https:// | ||
- | verwendet werden. | ||
- | |||
- | ===== Pin-Belegung ===== | ||
- | |||
- | Für das [[https:// | ||
- | |||
- | {{: | ||
- | |||
- | ===== Dateitransfer ===== | ||
- | |||
- | Mit dem Tool [[https:// | ||
- | |||
- | Dateien lassen sich mit ls anzeigen. Der Parameter '' | ||
- | |||
- | $ ampy -p / | ||
- | |||
- | Dateien können mit '' | ||
- | |||
- | $ ampy -p / | ||
- | | ||
- | Sie können auch abgespeichert werden. | ||
- | | ||
- | $ ampy -p / | ||
- | |||
- | Ebenso einfach können Dateien auf den Chip kopiert werden. | ||
- | |||
- | $ ampy -p / | ||
- | |||
- | Eine Datei kann auch direkt ausgeführt werden. | ||
- | | ||
- | $ ampy run mein_script.py | ||
- | |||
- | Neben ampy gibt es weitere Tools für den Dateitransfer. [[https:// | ||
- | |||
- | ===== Ansteuerung über I²C ===== | ||
- | |||
- | Der ESP kann über den I²C-Bus auch mit Sensoren oder anderen Modulen kommunizieren. Zwei der GPIO-Pins werden dafür als Clock (scl) und Daten-Pin (sda) definiert. Das folgende Beispiel nutzt hierfür die Pins 0 und 2. | ||
- | |||
- | <code python> | ||
- | import machine | ||
- | |||
- | # GPIO0 (scl) und GPIO2 (sda) verwenden | ||
- | # auf dem Port sind dies D3 und D4 | ||
- | i2c = machine.I2C(machine.Pin(0), | ||
- | </ | ||
- | |||
- | Nun kann der Bus gescannt werden. | ||
- | |||
- | <code python> | ||
- | >>> | ||
- | [32] | ||
- | </ | ||
- | |||
- | Ein Modul meldet sich von Adresse 32 (0x20). Es kann nun verwendet werden. | ||
- | |||
- | ===== Links ===== | ||
- | |||
- | * Firmware (alte Version): [[https:// | ||
- | * Vortrag der Froscon 2016: [[https:// | ||
- | * Unter Windows werden eventuell Treiber für den USB-UART-Konverter benötigt. Ein populärer Treiber ist unter [[http:// | ||
- | * [[http:// | ||
- | * [[https:// | ||
schule/esp8266.txt · Zuletzt geändert: 2024-01-20 09:49 von pintman