33. Lektion: Wlan

Aus Attraktor Wiki

Wechseln zu: Navigation, Suche

Der Pico W hat ein Wlan Modul an Board. Nun wollwn wir sehen wie man sich mit dem Pico W beim Wlan anmeldet.
Wie immer bei Micropython müssen wir zuerst eine Instanz erstellen. In diesem Fall von der Klasse network.WLAN:

wlan = network.WLAN(network.STA_IF)

Wir können unseren Pico W als als Station (network.STA_IF) anmelden oder ein neues Wlan aufmachen. Dazu müssen wir den Pico W als Accesspoint (network.AP_IF) oinitialisieren.
Nun muss die Wlan Instanz aktiviert werden.

wlan.active(True)

Schließlich können wir unseren Pico W bei unserem Accesspoint (Router) anmelden.

wlan.connect('ssid', 'key')

Im Prinzip können wir die Anmeldung mit diesen drei Schritten durchführen.
In der Praxis funktioniert die Anmeldung aber nicht immer schnell und problemlos. Deshalb ist noch ein wenig Code nötig, der prüft, ob eine Verbindung zustande gekommen ist und ggf. noch darauf wartet, bevor das Programm weiter ausgeführt wird.

import network

# Wlan Verbindung herstellen

wlan = network.WLAN(network.STA_IF)
wlan.active(True)
if not wlan.isconnected():
    print('connecting to network...')
    wlan.connect('ssid', 'key')
    while not wlan.isconnected():
        pass
print('network config:', wlan.ifconfig())

Dieses Programm gibt zum einen Meldungen aus, so dass der User darüber informiert wird was gerade passiert.
Zum Anderen prüft es, ob die Verbindung schon zustande gekommen ist. Wenn nicht wird weiter gewartet, wenn wird die Warteschleife abgebrochen und das Programm fortgesetzt. Dem User werde dann noch Informationen zum Wlan angezeigt.
Wenn man eine Wlanverbindung aufbauen will sollte man immer diesen kleinen Codeschnipsel einsetzen,
Eine Verbesserung ist daran noch möglich: Ein Timeout einbauen und das Programm abbrechen, wenn die Verbindung nicht zustande kommt.




Navigation

Zurück zur "Micropython Kurs 2023 Teil 2" Startseite
Zurück zur "Micropython Kurs 2023" Startseite
Zurück zur Programmieren Startseite
Zurück zur Wiki Startseite