K230 NetMgmt API 参考#

概述#

网络管理HAL提供了全面的网络连接管理接口,包括Wi-Fi(STA和AP模式)、LAN和通用网络工具。本文档描述了可用功能及其使用方法。


常量定义#

网络接口类型#

enum rt_netif_t {
    RT_NET_DEV_WLAN_STA = 0,  // Wi-Fi站点模式
    RT_NET_DEV_WLAN_AP  = 1,  // Wi-Fi接入点模式
    RT_NET_DEV_USB      = 2   // USB网络接口
};

最大长度限制#

#define RT_WLAN_SSID_MAX_LENGTH 32         // SSID最大长度
#define RT_WLAN_PASSWORD_MAX_LENGTH 32     // 密码最大长度
#define RT_WLAN_BSSID_MAX_LENGTH 6         // MAC地址长度
#define RT_WLAN_STA_SCAN_MAX_AP 64         // 扫描结果中AP最大数量
#define NET_DEV_MAX_CNT 8                  // 最大网络设备数量

Wi-Fi STA功能#

自动重连管理#

netmgmt_wlan_sta_get_auto_reconnect()#

功能: 获取自动重连状态
参数:

  • enable: 存储状态的指针(0=禁用,1=启用)
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_sta_set_auto_reconnect()#

功能: 启用/禁用自动重连
参数:

  • enable: 0禁用,1启用
    返回值: 成功返回0,失败返回-1


连接管理#

netmgmt_wlan_sta_connect_with_ssid()#

功能: 使用SSID和密码连接AP
参数:

  • ssid: 网络SSID

  • password: 网络密码
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_sta_connect_with_scan_info()#

功能: 使用扫描信息连接AP
参数:

  • info: 扫描结果信息指针

  • password: 网络密码
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_sta_disconnect_ap()#

功能: 断开当前AP连接
返回值: 成功返回0,失败返回-1

netmgmt_wlan_sta_isconnected()#

功能: 检查连接状态
参数:

  • status: 存储状态的指针(1=已连接,0=未连接)
    返回值: 成功返回0,失败返回-1


AP信息获取#

netmgmt_wlan_sta_get_ap_info()#

功能: 获取已连接AP的信息
参数:

  • info: 存储AP信息的指针
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_sta_get_rssi()#

功能: 获取信号强度(RSSI)
参数:

  • rssi: 存储RSSI值的指针
    返回值: 成功返回0,失败返回-1


扫描功能#

netmgmt_wlan_sta_scan()#

功能: 扫描可用AP
参数:

  • ap_num: 存储发现AP数量的指针

  • ap_infos: 存储AP信息的数组
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_sta_scan_with_ssid()#

功能: 扫描特定SSID
参数:

  • ssid: 要搜索的SSID

  • ap_info: 存储找到的AP信息的指针
    返回值: 找到返回0,否则返回-1


MAC地址管理#

netmgmt_wlan_sta_get_mac()#

功能: 获取STA MAC地址
参数:

  • mac: 存储MAC地址的缓冲区
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_sta_set_mac()#

功能: 设置STA MAC地址
参数:

  • mac: 要设置的MAC地址
    返回值: 成功返回0,失败返回-1


Wi-Fi AP功能#

AP管理#

netmgmt_wlan_ap_start_with_ssid()#

功能: 使用SSID和密码启动AP
参数:

  • ssid: AP的SSID

  • password: AP密码
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_ap_start_with_info()#

功能: 使用配置信息启动AP
参数:

  • info: AP配置

  • password: AP密码
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_ap_stop()#

功能: 停止AP
返回值: 成功返回0,失败返回-1

netmgmt_wlan_ap_isactived()#

功能: 检查AP是否活跃
参数:

  • status: 存储状态的指针(1=活跃,0=不活跃)
    返回值: 成功返回0,失败返回-1


AP信息获取#

netmgmt_wlan_ap_get_info()#

功能: 获取AP配置信息
参数:

  • info: 存储AP信息的指针
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_ap_get_sta_info()#

功能: 获取连接的STA客户端
参数:

  • sta_num: 存储STA数量的指针

  • sta_infos: 存储STA信息的数组
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_ap_disconnect_sta()#

功能: 断开STA客户端
参数:

  • mac: 要断开STA的MAC地址
    返回值: 成功返回0,失败返回-1


国家代码设置#

netmgmt_wlan_ap_get_country()#

功能: 获取AP国家代码
参数:

  • country: 存储国家代码的指针
    返回值: 成功返回0,失败返回-1

netmgmt_wlan_ap_set_country()#

功能: 设置AP国家代码
参数:

  • country: 要设置的国家代码
    返回值: 成功返回0,失败返回-1


LAN功能#

连接状态#

netmgmt_lan_get_isconnected()#

功能: 检查LAN是否连接
参数:

  • status: 存储状态的指针(1=已连接,0=未连接)
    返回值: 成功返回0,失败返回-1


MAC地址管理#

netmgmt_lan_get_mac()#

功能: 获取LAN MAC地址
参数:

  • mac: 存储MAC地址的缓冲区
    返回值: 成功返回0,失败返回-1

netmgmt_lan_set_mac()#

功能: 设置LAN MAC地址
参数:

  • mac: 要设置的MAC地址
    返回值: 成功返回0,失败返回-1


网络工具#

设备管理#

netmgmt_utils_get_defeault_dev()#

功能: 获取默认网络设备
参数:

  • name: 存储设备名称的缓冲区
    返回值: 成功返回0,失败返回-1

netmgmt_utils_set_defeault_dev()#

功能: 设置默认网络设备
参数:

  • name: 要设置为默认设备的名称
    返回值: 成功返回0,失败返回-1

netmgmt_utils_get_dev_list()#

功能: 获取网络设备列表
参数:

  • dev_num: 存储设备数量的指针

  • names: 存储设备名称的数组
    返回值: 成功返回0,失败返回-1

netmgmt_utils_probe_device()#

功能: 探测网络接口可用性
参数:

  • itf: 接口类型

  • status: 存储探测结果的指针
    返回值: 成功返回0,失败返回-1


IP配置#

netmgmt_utils_get_ifconfig()#

功能: 获取接口IP配置
参数:

  • itf: 接口类型

  • config: 存储IP配置的指针
    返回值: 成功返回0,失败返回-1

netmgmt_utils_set_ifconfig_static()#

功能: 设置静态IP配置
参数:

  • itf: 接口类型

  • config: 要设置的IP配置
    返回值: 成功返回0,失败返回-1

netmgmt_utils_set_ifconfig_dhcp()#

功能: 为接口启用DHCP
参数:

  • itf: 接口类型
    返回值: 成功返回0,失败返回-1


数据结构#

struct rt_wlan_info_t#

包含Wi-Fi网络信息,包括:

  • 安全类型

  • 频段(2.4GHz/5GHz)

  • 数据速率

  • 信道

  • RSSI(信号强度)

  • SSID

  • BSSID(MAC地址)

  • 隐藏状态

struct ifconfig_t#

包含IP配置信息,包括:

  • IP地址

  • 网关

  • 子网掩码

  • DNS服务器


注意事项#

  1. 除非另有说明,所有函数成功返回0,失败返回-1

  2. 调用者必须检查缓冲区大小以防止溢出

  3. 网络操作可能需要时间完成 - 如果需要,延迟后检查状态

评论列表
条评论
登录