src/eric7/MicroPython/Devices/MCUScripts/picoWiznetConnectCpy8.py

Tue, 21 Mar 2023 11:45:08 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 21 Mar 2023 11:45:08 +0100
branch
eric7
changeset 9928
f98f0c28c1eb
parent 9885
05cbf70e8f10
child 10153
ffe7432f716b
permissions
-rw-r--r--

MicroPython
- Changed the 'fileSystemInfo()' method such, that it finds mounted file systems as well.

9885
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 def connect_lan():
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2 import os
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3 from adafruit_wiznet5k import adafruit_wiznet5k
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5 global nic
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 if os.getenv("WIZNET_IFCONFIG_0") is None:
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 print("The network configuration is kept in 'settings.toml'")
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9 print("with the keys 'WIZNET_IFCONFIG_0' to 'WIZNET_IFCONFIG_3'.")
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 print("Please add them there.")
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 return None
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 try:
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 nic
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 except NameError:
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 nic = None
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 if nic is None:
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 import board
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 import busio
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 import digitalio
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 from adafruit_wiznet5k.adafruit_wiznet5k import WIZNET5K
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 SPI0_RX = board.GP16
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 SPI0_CSn = board.GP17
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 SPI0_SCK = board.GP18
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 SPI0_TX = board.GP19
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 W5x00_RSTn = board.GP20
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 ethernetRst = digitalio.DigitalInOut(W5x00_RSTn)
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 ethernetRst.direction = digitalio.Direction.OUTPUT
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 cs = digitalio.DigitalInOut(SPI0_CSn)
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 spi = busio.SPI(SPI0_SCK, MOSI=SPI0_TX, MISO=SPI0_RX)
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 nic = WIZNET5K(spi, cs, reset=ethernetRst, is_dhcp=False)
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 nic.mac_address = adafruit_wiznet5k._DEFAULT_MAC
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 if os.getenv("WIZNET_IFCONFIG_0") == 'dhcp':
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 nic.set_dhcp(response_timeout=14)
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 else:
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 nic.ifconfig = (
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 nic.unpretty_ip(os.getenv("WIZNET_IFCONFIG_0")),
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 nic.unpretty_ip(os.getenv("WIZNET_IFCONFIG_1")),
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 nic.unpretty_ip(os.getenv("WIZNET_IFCONFIG_2")),
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 tuple(int(a) for a in os.getenv("WIZNET_IFCONFIG_3").split('.')),
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 )
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48
05cbf70e8f10 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 return nic

eric ide

mercurial