class LAN – 控制以太网模块¶
此类允许您控制以太网接口。PHY 硬件类型是特定于板子的。
示例用法:
import network
nic = network.LAN(0)
print(nic.ifconfig())
# now use socket as usual
...
构造¶
- class network.LAN(id, *, phy_type=<board_default>, phy_addr=<board_default>, ref_clk_mode=<board_default>)¶
- 创建一个 LAN 驱动程序对象,使用给定的 PHY 驱动程序名称初始化 LAN 模块,并返回 LAN 对象。 - 参数是: - id 是以太网端口的编号,为 0 或 1。 
- phy_type 是 PHY 驱动程序的名称。对于大多数板子,必须使用板载 PHY,并且是默认值。适当的值是特定于移植版本的。 
- phy_addr 指定 PHY 接口的地址。与 phy_type 一样,大多数板子需要使用预设的硬编码数值,该值是默认值。 
- ref_clk_mode 指定数据时钟是由以太网控制器提供还是由 PHY 接口提供。默认值是与板子匹配的值。如果设置为 - LAN.OUT或- Pin.OUT或- True,则时钟由以太网控制器驱动;如果设置为- LAN.IN或- Pin.IN或- False,则时钟由 PHY 接口驱动。
 - 例如,在 Seeed Arch Mix 板上,您可以使用: - nic = LAN(0, phy_type=LAN.PHY_LAN8720, phy_addr=1, ref_clk_mode=Pin.IN) 
方法¶
- LAN.active([state])¶
- 带有参数时,如果 state 为真,则将接口设置为活动状态,否则设置为非活动状态。没有参数时,返回状态。 
- LAN.isconnected()¶
- 如果物理以太网链接已连接并且正常工作,则返回 - True。否则返回- False。
- LAN.status()¶
- 返回LAN状态。 
- LAN.ifconfig([(ip, subnet, gateway, dns)])¶
- 获取/设置IP地址、子网掩码、网关和DNS。 - 当不带参数调用时,此方法返回包含上述信息的 4 元组。 - 要设置上述值,请传递包含所需信息的 4 元组。例如: - nic.ifconfig(('192.168.0.4', '255.255.255.0', '192.168.0.1', '8.8.8.8')) 
- LAN.config(config_parameters)¶
- 设置或获取 LAN 接口的参数。唯一可检索的参数是 MAC 地址,使用以下方法: - mac = LAN.config("mac") - 可以设置的参数是: - trace=n设置跟踪级别;适当的值为:- 2: 跟踪 TX 
- 4: 跟踪 RX 
- 8: 完整跟踪 
 
- low_power=bool设置或清除低功耗模式,有效值为- False或- True。
 
特定的 LAN 类实现¶
在 mimxrt 移植版本上, phy_type 构造函数参数的适当值为:PHY_KSZ8081, PHY_DP83825, PHY_DP83848, PHY_LAN8720, PHY_RTL8211F。