| 
    XFusion API v1.3.0
    
   | 
 
xf_init 实现自动初始化。 更多...
结构体 | |
| struct | xf_ip4_addr | 
| struct | xf_ip6_addr | 
| struct | _xf_ip_addr | 
| struct | _xf_netif_ip_info_t | 
| struct | _xf_netif_ip6_info_t | 
| struct | _xf_netif_dns_info_t | 
| DNS 服务器信息。  更多... | |
| struct | _xf_netif_pair_mac_ip_t | 
| DHCP 客户端的地址信息(MAC 和 IP 地址对)。  更多... | |
| struct | _xf_ip_event_got_ip_t | 
| XF_IP_EVENT_STA_GOT_IP 事件的事件结构。  更多... | |
| struct | _xf_ip_event_ip_assigned_t | 
| XF_IP_EVENT_AP_STAIPASSIGNED 事件的事件结构。  更多... | |
宏定义 | |
| #define | XF_INIT_EXPORT_SETUP(function) | 
| 基础配置初始化. 主要用于初始化 log 等功能。   | |
| #define | XF_INIT_EXPORT_BOARD(function) | 
| 板级初始化.初始化和开发板相关内容,如 heap,sys 等功能。   | |
| #define | XF_INIT_EXPORT_PREV(function) | 
| 抽象层预初始化,初始化 HAL NAL 等抽象层.   | |
| #define | XF_INIT_EXPORT_CLEANUP(function) | 
| 设置清除初始化,对应 SETUP 这里用于反初始化一些应用层不需要的操作.   | |
| #define | XF_INIT_EXPORT_DEVICE(function) | 
| 设备初始化. 应用层初始化外设使用   | |
| #define | XF_INIT_EXPORT_COMPONENT(function) | 
| 组件初始化. 应用层初始化一些外部组件使用   | |
| #define | XF_INIT_EXPORT_ENV(function) | 
| 环境初始化. 应用层初始化环境(如文件系统)   | |
| #define | XF_INIT_EXPORT_APP(function) | 
| 应用程序初始化. 如   | |
| #define | XF_MAC_LEN_MAX (6) | 
| mac 地址最大长度。   | |
| #define | XF_MAC2STR(a) (a)[0], (a)[1], (a)[2], (a)[3], (a)[4], (a)[5] | 
| #define | XF_MACSTR "%02x:%02x:%02x:%02x:%02x:%02x" | 
| #define | xf_netif_htonl(x) | 
| #define | xf_netif_ip4_makeu32(a, b, c, d) | 
| #define | XF_IPSTR "%d.%d.%d.%d" | 
| #define | xf_ip4_addr_get_byte(ipaddr, idx) (((const uint8_t*)(&(ipaddr)->addr))[idx]) | 
| #define | xf_ip4_addr1(ipaddr) xf_ip4_addr_get_byte(ipaddr, 0) | 
| #define | xf_ip4_addr2(ipaddr) xf_ip4_addr_get_byte(ipaddr, 1) | 
| #define | xf_ip4_addr3(ipaddr) xf_ip4_addr_get_byte(ipaddr, 2) | 
| #define | xf_ip4_addr4(ipaddr) xf_ip4_addr_get_byte(ipaddr, 3) | 
| #define | xf_ip4_addr1_16(ipaddr) ((uint16_t)xf_ip4_addr1(ipaddr)) | 
| #define | xf_ip4_addr2_16(ipaddr) ((uint16_t)xf_ip4_addr2(ipaddr)) | 
| #define | xf_ip4_addr3_16(ipaddr) ((uint16_t)xf_ip4_addr3(ipaddr)) | 
| #define | xf_ip4_addr4_16(ipaddr) ((uint16_t)xf_ip4_addr4(ipaddr)) | 
| #define | XF_IP2STR(ipaddr) | 
| #define | XF_IP6_ADDR_BLOCK1(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[0]) >> 16) & 0xffff)) | 
| #define | XF_IP6_ADDR_BLOCK2(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[0])) & 0xffff)) | 
| #define | XF_IP6_ADDR_BLOCK3(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[1]) >> 16) & 0xffff)) | 
| #define | XF_IP6_ADDR_BLOCK4(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[1])) & 0xffff)) | 
| #define | XF_IP6_ADDR_BLOCK5(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[2]) >> 16) & 0xffff)) | 
| #define | XF_IP6_ADDR_BLOCK6(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[2])) & 0xffff)) | 
| #define | XF_IP6_ADDR_BLOCK7(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[3]) >> 16) & 0xffff)) | 
| #define | XF_IP6_ADDR_BLOCK8(ip6addr) ((uint16_t)((xf_netif_htonl((ip6addr)->addr[3])) & 0xffff)) | 
| #define | XF_IPV6STR "%04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x" | 
| #define | XF_IPV62STR(ipaddr) | 
| #define | XF_IPADDR_TYPE_V4 0U | 
| #define | XF_IPADDR_TYPE_V6 6U | 
| #define | XF_IPADDR_TYPE_ANY 46U | 
| #define | XF_IP4TOUINT32(a, b, c, d) | 
| #define | XF_IP4TOADDR(a, b, c, d) xf_netif_htonl(XF_IP4TOUINT32(a, b, c, d)) | 
| #define | XF_IP4ADDR_INIT(a, b, c, d) | 
| xf_ip_addr_t.   | |
| #define | XF_IP6ADDR_INIT(a, b, c, d) | 
| xf_ip_addr_t.   | |
| #define | XF_IP4_ADDR(ipaddr, a, b, c, d) (ipaddr)->addr = xf_netif_htonl(xf_netif_ip4_makeu32(a, b, c, d)) | 
| #define | XF_NETIF_TODO 0 | 
类型定义 | |
| typedef struct xf_ip4_addr | xf_ip4_addr_t | 
| typedef struct xf_ip6_addr | xf_ip6_addr_t | 
| typedef struct _xf_ip_addr | xf_ip_addr_t | 
| typedef struct _xf_netif_ip_info_t | xf_netif_ip_info_t | 
| typedef struct _xf_netif_ip6_info_t | xf_netif_ip6_info_t | 
| typedef void * | xf_netif_t | 
| xfusion netif 句柄。   | |
| typedef enum _xf_netif_dns_type_t | xf_netif_dns_type_t | 
| DNS 服务器类型。   | |
| typedef struct _xf_netif_dns_info_t | xf_netif_dns_info_t | 
| DNS 服务器信息。   | |
| typedef struct _xf_netif_pair_mac_ip_t | xf_netif_pair_mac_ip_t | 
| DHCP 客户端的地址信息(MAC 和 IP 地址对)。   | |
| typedef enum _xf_ip_event_code_t | xf_ip_event_code_t | 
| IP 事件声明。   | |
| typedef int32_t | xf_ip_event_id_t | 
| ip 事件 id。见 xf_ip_event_code_t.   | |
| typedef struct _xf_ip_event_got_ip_t | xf_ip_event_got_ip_t | 
| XF_IP_EVENT_STA_GOT_IP 事件的事件结构。   | |
| typedef struct _xf_ip_event_ip_assigned_t | xf_ip_event_ip_assigned_t | 
| XF_IP_EVENT_AP_STAIPASSIGNED 事件的事件结构。   | |
| typedef void(* | xf_ip_cb_t) (xf_ip_event_id_t event_id, void *event_data, void *user_args) | 
| ip 回调函数原型。   | |
枚举 | |
| enum | _xf_netif_dns_type_t { XF_NETIF_DNS_MAIN = 0 , XF_NETIF_DNS_BACKUP , XF_NETIF_DNS_MAX } | 
| DNS 服务器类型。  更多... | |
| enum | _xf_ip_event_code_t {  XF_IP_EVENT_BASE = 0 , XF_IP_EVENT_GOT_IP = XF_IP_EVENT_BASE , XF_IP_EVENT_LOST_IP , XF_IP_EVENT_IP_ASSIGNED , XF_IP_EVENT_GOT_IP6 , XF_IP_EVENT_MAX }  | 
| IP 事件声明。  更多... | |
函数 | |
| static void | xf_netif_ip_addr_types_copy (xf_ip_addr_t *dest, const xf_ip_addr_t *src) | 
| 复制 IP 地址。   | |
xf_init 实现自动初始化。
基于段的自动初始化机制可以实现: 需要初始化的组件依赖 xf_init, 而 xf_init 不依赖这些组件。 xfusion 用户使用 xf_init 时只需 #include "xf_init.h" 即可。 
| #define XF_INIT_EXPORT_SETUP | ( | function | ) | 
基础配置初始化. 主要用于初始化 log 等功能。
根据实际配置见:
| function | 初始化函数. | 
| #define XF_INIT_EXPORT_BOARD | ( | function | ) | 
板级初始化.初始化和开发板相关内容,如 heap,sys 等功能。
根据实际配置见:
| function | 初始化函数. | 
| #define XF_INIT_EXPORT_PREV | ( | function | ) | 
抽象层预初始化,初始化 HAL NAL 等抽象层.
根据实际配置见:
| function | 初始化函数. | 
| #define XF_INIT_EXPORT_CLEANUP | ( | function | ) | 
设置清除初始化,对应 SETUP 这里用于反初始化一些应用层不需要的操作.
根据实际配置见:
| function | 初始化函数. | 
| #define XF_INIT_EXPORT_DEVICE | ( | function | ) | 
设备初始化. 应用层初始化外设使用
根据实际配置见:
| function | 初始化函数. | 
| #define XF_INIT_EXPORT_COMPONENT | ( | function | ) | 
组件初始化. 应用层初始化一些外部组件使用
根据实际配置见:
| function | 初始化函数. | 
| #define XF_INIT_EXPORT_ENV | ( | function | ) | 
环境初始化. 应用层初始化环境(如文件系统)
根据实际配置见:
| function | 初始化函数. | 
| #define XF_INIT_EXPORT_APP | ( | function | ) | 
应用程序初始化. 如
根据实际配置见:
| function | 初始化函数. | 
| #define XF_MAC2STR | ( | a | ) | (a)[0], (a)[1], (a)[2], (a)[3], (a)[4], (a)[5] | 
| #define XF_MACSTR "%02x:%02x:%02x:%02x:%02x:%02x" | 
| #define xf_netif_htonl | ( | x | ) | 
在文件 xf_netif_ip_addr_types.h 第 42 行定义.
| #define xf_netif_ip4_makeu32 | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) | 
在文件 xf_netif_ip_addr_types.h 第 49 行定义.
| #define XF_IPSTR "%d.%d.%d.%d" | 
在文件 xf_netif_ip_addr_types.h 第 55 行定义.
| #define xf_ip4_addr_get_byte | ( | ipaddr, | |
| idx | |||
| ) | (((const uint8_t*)(&(ipaddr)->addr))[idx]) | 
在文件 xf_netif_ip_addr_types.h 第 56 行定义.
| #define xf_ip4_addr1 | ( | ipaddr | ) | xf_ip4_addr_get_byte(ipaddr, 0) | 
在文件 xf_netif_ip_addr_types.h 第 57 行定义.
| #define xf_ip4_addr2 | ( | ipaddr | ) | xf_ip4_addr_get_byte(ipaddr, 1) | 
在文件 xf_netif_ip_addr_types.h 第 58 行定义.
| #define xf_ip4_addr3 | ( | ipaddr | ) | xf_ip4_addr_get_byte(ipaddr, 2) | 
在文件 xf_netif_ip_addr_types.h 第 59 行定义.
| #define xf_ip4_addr4 | ( | ipaddr | ) | xf_ip4_addr_get_byte(ipaddr, 3) | 
在文件 xf_netif_ip_addr_types.h 第 60 行定义.
| #define xf_ip4_addr1_16 | ( | ipaddr | ) | ((uint16_t)xf_ip4_addr1(ipaddr)) | 
在文件 xf_netif_ip_addr_types.h 第 62 行定义.
| #define xf_ip4_addr2_16 | ( | ipaddr | ) | ((uint16_t)xf_ip4_addr2(ipaddr)) | 
在文件 xf_netif_ip_addr_types.h 第 63 行定义.
| #define xf_ip4_addr3_16 | ( | ipaddr | ) | ((uint16_t)xf_ip4_addr3(ipaddr)) | 
在文件 xf_netif_ip_addr_types.h 第 64 行定义.
| #define xf_ip4_addr4_16 | ( | ipaddr | ) | ((uint16_t)xf_ip4_addr4(ipaddr)) | 
在文件 xf_netif_ip_addr_types.h 第 65 行定义.
| #define XF_IP2STR | ( | ipaddr | ) | 
在文件 xf_netif_ip_addr_types.h 第 67 行定义.
| #define XF_IP6_ADDR_BLOCK1 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[0]) >> 16) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 73 行定义.
| #define XF_IP6_ADDR_BLOCK2 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[0])) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 74 行定义.
| #define XF_IP6_ADDR_BLOCK3 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[1]) >> 16) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 75 行定义.
| #define XF_IP6_ADDR_BLOCK4 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[1])) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 76 行定义.
| #define XF_IP6_ADDR_BLOCK5 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[2]) >> 16) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 77 行定义.
| #define XF_IP6_ADDR_BLOCK6 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[2])) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 78 行定义.
| #define XF_IP6_ADDR_BLOCK7 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[3]) >> 16) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 79 行定义.
| #define XF_IP6_ADDR_BLOCK8 | ( | ip6addr | ) | ((uint16_t)((xf_netif_htonl((ip6addr)->addr[3])) & 0xffff)) | 
在文件 xf_netif_ip_addr_types.h 第 80 行定义.
| #define XF_IPV6STR "%04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x" | 
在文件 xf_netif_ip_addr_types.h 第 82 行定义.
| #define XF_IPV62STR | ( | ipaddr | ) | 
在文件 xf_netif_ip_addr_types.h 第 84 行定义.
| #define XF_IPADDR_TYPE_V4 0U | 
| #define XF_IPADDR_TYPE_V6 6U | 
在文件 xf_netif_ip_addr_types.h 第 95 行定义.
| #define XF_IPADDR_TYPE_ANY 46U | 
在文件 xf_netif_ip_addr_types.h 第 96 行定义.
| #define XF_IP4TOUINT32 | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) | 
在文件 xf_netif_ip_addr_types.h 第 98 行定义.
| #define XF_IP4TOADDR | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) | xf_netif_htonl(XF_IP4TOUINT32(a, b, c, d)) | 
| #define XF_IP4ADDR_INIT | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) | 
在文件 xf_netif_ip_addr_types.h 第 109 行定义.
| #define XF_IP6ADDR_INIT | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) | 
在文件 xf_netif_ip_addr_types.h 第 122 行定义.
| #define XF_IP4_ADDR | ( | ipaddr, | |
| a, | |||
| b, | |||
| c, | |||
| d | |||
| ) | (ipaddr)->addr = xf_netif_htonl(xf_netif_ip4_makeu32(a, b, c, d)) | 
在文件 xf_netif_ip_addr_types.h 第 133 行定义.
| #define XF_NETIF_TODO 0 | 
在文件 xf_netif_types.h 第 35 行定义.
| typedef struct xf_ip4_addr xf_ip4_addr_t | 
| typedef struct xf_ip6_addr xf_ip6_addr_t | 
| typedef struct _xf_ip_addr xf_ip_addr_t | 
| typedef struct _xf_netif_ip_info_t xf_netif_ip_info_t | 
| typedef struct _xf_netif_ip6_info_t xf_netif_ip6_info_t | 
| typedef void* xf_netif_t | 
xfusion netif 句柄。
在文件 xf_netif_types.h 第 64 行定义.
| typedef enum _xf_netif_dns_type_t xf_netif_dns_type_t | 
DNS 服务器类型。
| typedef struct _xf_netif_dns_info_t xf_netif_dns_info_t | 
DNS 服务器信息。
| typedef struct _xf_netif_pair_mac_ip_t xf_netif_pair_mac_ip_t | 
DHCP 客户端的地址信息(MAC 和 IP 地址对)。
| typedef enum _xf_ip_event_code_t xf_ip_event_code_t | 
IP 事件声明。
| typedef int32_t xf_ip_event_id_t | 
ip 事件 id。见 xf_ip_event_code_t.
在文件 xf_netif_types.h 第 106 行定义.
| typedef struct _xf_ip_event_got_ip_t xf_ip_event_got_ip_t | 
XF_IP_EVENT_STA_GOT_IP 事件的事件结构。
| typedef struct _xf_ip_event_ip_assigned_t xf_ip_event_ip_assigned_t | 
XF_IP_EVENT_AP_STAIPASSIGNED 事件的事件结构。
| typedef void(* xf_ip_cb_t) (xf_ip_event_id_t event_id, void *event_data, void *user_args) | 
ip 回调函数原型。
| event_id | 事件 id. 根据事件类型, 见 xf_ip_event_code_t. | 
| event_data | 事件数据. 需要根据事件 id 强转为对应的类型。 | 
| user_args | 用户数据. xf_ip_set_cb(..., user_args);时传入.  | 
在文件 xf_netif_types.h 第 132 行定义.
| enum _xf_netif_dns_type_t | 
DNS 服务器类型。
| 枚举值 | |
|---|---|
| XF_NETIF_DNS_MAIN | DNS 主服务器  | 
| XF_NETIF_DNS_BACKUP | DNS 备份服务器  | 
| XF_NETIF_DNS_MAX | DNS 服务器无效值  | 
在文件 xf_netif_types.h 第 69 行定义.
| enum _xf_ip_event_code_t | 
IP 事件声明。
在文件 xf_netif_types.h 第 93 行定义.
      
  | 
  inlinestatic |