Link Kit C-SDK
4.0.0
|
类 | |
struct | core_at_cmd_item_t |
AT命令请求响应结构体定义 更多... | |
struct | core_at_urc_item_t |
AT主动上报命令 更多... | |
struct | core_at_recv_data_prefix |
AT主动上报接收的数据,可识别头 更多... | |
struct | at_device_t |
AT设备结构化数据 更多... | |
struct | core_ringbuf_t |
ringbuf结构体定义 更多... | |
struct | link_descript_t |
数据链路上下文结构体 更多... | |
struct | core_at_read_t |
struct | core_at_handle_t |
AT组件上下文数据结构体 更多... | |
宏定义 | |
#define | MODULE_NAME_AT "AT" |
#define | STATE_AT_BASE (-0x1000) |
-0x1000~-0x10FF表达SDK在AT模块内的状态码 更多... | |
#define | STATE_AT_ALREADY_INITED (-0x1003) |
#define | STATE_AT_NOT_INITED (-0x1004) |
#define | STATE_AT_UART_TX_FUNC_MISSING (-0x1005) |
#define | STATE_AT_GET_RSP_FAILED (-0x1006) |
#define | STATE_AT_RINGBUF_OVERFLOW (-0x1007) |
#define | STATE_AT_RX_TIMEOUT (-0x1008) |
#define | STATE_AT_NO_AVAILABLE_LINK (-0x1009) |
#define | STATE_AT_TX_TIMEOUT (-0x100A) |
#define | STATE_AT_TX_ERROR (-0x100B) |
#define | STATE_AT_RINGBUF_NO_DATA (-0x100C) |
#define | STATE_AT_UART_TX_FUNC_NULL (-0x100D) |
#define | STATE_AT_NO_DATA_SLOT (-0x100F) |
#define | STATE_AT_LINK_IS_DISCONN (-0x1010) |
#define | STATE_AT_UART_TX_FAILED (-0x1011) |
#define | AIOT_AT_CMD_LEN_MAXIMUM (128) /* AT命令最大长度 */ |
AT组件配置参数 更多... | |
#define | AIOT_AT_RSP_LEN_MAXIMUM (128) /* AT应答最大长度 */ |
#define | AIOT_AT_TX_TIMEOUT_DEFAULT (10000) /* UART默认发送超时时间 */ |
#define | AIOT_AT_RX_TIMEOUT_DEFAULT (10000) /* UART默认接受等待超时时间 */ |
#define | AIOT_AT_DATA_RB_SIZE_DEFAULT (4096) /* 内部网络数据接收缓冲区大小,用户可根据接收数据流量的大小调整 */ |
#define | AIOT_AT_RSP_RB_SIZE_DEFAULT (4096) /* 内部应答报文接受缓冲区大小,用户可根据接收数据流量的大小调整 */ |
#define | AIOT_AT_CMD_RETRY_TIME (3) /* AT命令发送重试最大次数 */ |
#define | AIOT_AT_RINGBUF_RETRY_INTERVAL (5) /* RINGBUF数据长度检查间隔时间 */ |
#define | AIOT_AT_SOCKET_NUM (5) /* 支持的数据链路数量 */ |
#define | AIOT_AT_MAX_PACKAGE_SIZE (1460) /* 一帧报文最大的数据长度*/ |
#define | AT_SOCKET_ID_START (1) |
类型定义 | |
typedef int32_t(* | aiot_at_uart_tx_func_t) (const uint8_t *p_data, uint16_t len, uint32_t timeout) |
串口发送回调函数定义 更多... | |
typedef enum rsp_result_t | at_rsp_result_t |
typedef at_rsp_result_t(* | at_rsp_handler_t) (char *rsp) |
接受到应答数据后的用户处理回调函数原型定义 更多... | |
typedef void(* | at_urc_handler_t) (char *line) |
接受到应答数据后的用户处理回调函数原型定义 更多... | |
枚举 | |
enum | aiot_at_option_t { AIOT_ATOPT_UART_TX_FUNC, AIOT_ATOPT_USER_DATA, AIOT_ATOPT_DEVICE, AIOT_ATOPT_MAX, AIOT_ATOPT_UART_TX_FUNC, AIOT_ATOPT_USER_DATA, AIOT_ATOPT_MAX, AIOT_ATOPT_UART_TX_FUNC, AIOT_ATOPT_USER_DATA, AIOT_ATOPT_MAX } |
AT组件配置选项 更多... | |
enum | rsp_result_t { AT_RSP_SUCCESS, AT_RSP_WAITING, AT_RSP_FAILED } |
enum | core_at_link_status_t { CORE_AT_LINK_DISABLE = 0, CORE_AT_LINK_DISCONN = 1, CORE_AT_LINK_CONN = 2, CORE_AT_LINK_DISABLE = 0, CORE_AT_LINK_DISCONN = 1, CORE_AT_LINK_CONN = 2, CORE_AT_LINK_RECV = 3, CORE_AT_LINK_DISABLE = 0, CORE_AT_LINK_DISCONN = 1, CORE_AT_LINK_CONN = 2, CORE_AT_LINK_RECV = 3 } |
模组数据链路状态 更多... | |
enum | core_ip_status_t { IP_DEINIT, IP_CSQ_ERROR, IP_CARD_ERROR, IP_ERR_OTHER, IP_SUCCESS } |
函数 | |
int32_t | aiot_at_init (void) |
初始化AT组件 更多... | |
int32_t | aiot_at_setopt (aiot_at_option_t opt, void *data) |
配置AT组件, 主要为配置串口发送回调函数 更多... | |
int32_t | aiot_at_bootstrap (void) |
模组启动, 内部发送模组相关的AT命令已启动模组, 启动完成后, 模组将获取到IP地址 更多... | |
int32_t | aiot_at_nwk_open (uint8_t *socket_id) |
为对应的链路ID创建ringbuf资源 更多... | |
int32_t | aiot_at_nwk_connect (uint8_t socket_id, const char *host, uint16_t port, uint32_t timeout) |
内部会调用模组相关的AT命令, 通过串口发送TCP建连命令。可对接到core_sysdep_network_establish网络接口 更多... | |
int32_t | aiot_at_nwk_send (uint8_t socket_id, const uint8_t *buffer, uint32_t len, uint32_t timeout) |
内部会调用模组相关的AT命令, 通过串口发送TCP数据。可对接到core_sysdep_network_send网络接口 更多... | |
int32_t | aiot_at_nwk_recv (uint8_t socket_id, uint8_t *buffer, uint32_t len, uint32_t timeout_ms) |
内部会从对应的数据ringbu中读取网络数据, 可对接到core_sysdep_network_recv网络接口 更多... | |
int32_t | aiot_at_nwk_close (uint8_t socket_id) |
内部会调用模组相关的AT命令, 关闭连接链路。可对接到core_sysdep_network_deinit网络接口 更多... | |
int32_t | aiot_at_hal_recv_handle (uint8_t *data, uint32_t size) |
为AT组件提供串口数据 更多... | |
int32_t | aiot_at_deinit (void) |
反初始化AT组件 更多... | |
int32_t | core_at_ip_status (core_ip_status_t status) |
int32_t | core_at_socket_status (uint32_t id, core_at_link_status_t status) |
#define MODULE_NAME_AT "AT" |
#define STATE_AT_BASE (-0x1000) |
-0x1000~-0x10FF表达SDK在AT模块内的状态码
#define STATE_AT_ALREADY_INITED (-0x1003) |
#define STATE_AT_NOT_INITED (-0x1004) |
#define STATE_AT_UART_TX_FUNC_MISSING (-0x1005) |
#define STATE_AT_GET_RSP_FAILED (-0x1006) |
#define STATE_AT_RINGBUF_OVERFLOW (-0x1007) |
#define STATE_AT_RX_TIMEOUT (-0x1008) |
#define STATE_AT_NO_AVAILABLE_LINK (-0x1009) |
#define STATE_AT_TX_TIMEOUT (-0x100A) |
#define STATE_AT_TX_ERROR (-0x100B) |
#define STATE_AT_RINGBUF_NO_DATA (-0x100C) |
#define STATE_AT_UART_TX_FUNC_NULL (-0x100D) |
#define STATE_AT_NO_DATA_SLOT (-0x100F) |
#define STATE_AT_LINK_IS_DISCONN (-0x1010) |
#define STATE_AT_UART_TX_FAILED (-0x1011) |
#define AIOT_AT_CMD_LEN_MAXIMUM (128) /* AT命令最大长度 */ |
AT组件配置参数
#define AIOT_AT_RSP_LEN_MAXIMUM (128) /* AT应答最大长度 */ |
#define AIOT_AT_TX_TIMEOUT_DEFAULT (10000) /* UART默认发送超时时间 */ |
#define AIOT_AT_RX_TIMEOUT_DEFAULT (10000) /* UART默认接受等待超时时间 */ |
#define AIOT_AT_DATA_RB_SIZE_DEFAULT (4096) /* 内部网络数据接收缓冲区大小,用户可根据接收数据流量的大小调整 */ |
#define AIOT_AT_RSP_RB_SIZE_DEFAULT (4096) /* 内部应答报文接受缓冲区大小,用户可根据接收数据流量的大小调整 */ |
#define AIOT_AT_CMD_RETRY_TIME (3) /* AT命令发送重试最大次数 */ |
#define AIOT_AT_RINGBUF_RETRY_INTERVAL (5) /* RINGBUF数据长度检查间隔时间 */ |
#define AIOT_AT_SOCKET_NUM (5) /* 支持的数据链路数量 */ |
#define AIOT_AT_MAX_PACKAGE_SIZE (1460) /* 一帧报文最大的数据长度*/ |
#define AT_SOCKET_ID_START (1) |
typedef int32_t(* aiot_at_uart_tx_func_t) (const uint8_t *p_data, uint16_t len, uint32_t timeout) |
串口发送回调函数定义
[in] | p_data | |
[in] | len | |
[in] | timeout |
length,实际发送的字节数 | |
0,发送超时 | |
-1,发送失败 |
typedef enum rsp_result_t at_rsp_result_t |
typedef at_rsp_result_t(* at_rsp_handler_t) (char *rsp) |
接受到应答数据后的用户处理回调函数原型定义
[in] | rsp | AT命令的应答数据 |
typedef void(* at_urc_handler_t) (char *line) |
接受到应答数据后的用户处理回调函数原型定义
[in] | line | AT命令的一行数据 |
>= | 0, |
< | 0, |
enum aiot_at_option_t |
enum rsp_result_t |
enum core_ip_status_t |
int32_t aiot_at_init | ( | void | ) |
初始化AT组件
=0 | 初始化成功 |
<0 | 初始化失败 |
AT moduel API start
int32_t aiot_at_setopt | ( | aiot_at_option_t | opt, |
void * | data | ||
) |
配置AT组件, 主要为配置串口发送回调函数
opt | 配置项 |
data | 配置数据 |
=0 | 配置成功 |
<0 | 配置失败 |
int32_t aiot_at_bootstrap | ( | void | ) |
模组启动, 内部发送模组相关的AT命令已启动模组, 启动完成后, 模组将获取到IP地址
=0 | 启动成功 |
<0 | 启动失败 |
int32_t aiot_at_nwk_open | ( | uint8_t * | socket_id | ) |
为对应的链路ID创建ringbuf资源
socket_id | 链路ID |
=0 | 操作成功 |
<0 | 操作失败 |
int32_t aiot_at_nwk_connect | ( | uint8_t | socket_id, |
const char * | host, | ||
uint16_t | port, | ||
uint32_t | timeout | ||
) |
内部会调用模组相关的AT命令, 通过串口发送TCP建连命令。可对接到core_sysdep_network_establish网络接口
socket_id | 链路ID |
host | 主机名 |
port | 端口号 |
timeout | 建连超时时间 |
>=0 | 建连成功 |
<0 | 建连失败 |
int32_t aiot_at_nwk_send | ( | uint8_t | socket_id, |
const uint8_t * | buffer, | ||
uint32_t | len, | ||
uint32_t | timeout | ||
) |
内部会调用模组相关的AT命令, 通过串口发送TCP数据。可对接到core_sysdep_network_send网络接口
socket_id | 链路ID |
buffer | 指向外部数据缓冲区的指针 |
len | 数据长度 |
timeout | 发送超时时间 |
>=0 | 已发送的数据长度 |
<0 | 发送失败 |
int32_t aiot_at_nwk_recv | ( | uint8_t | socket_id, |
uint8_t * | buffer, | ||
uint32_t | len, | ||
uint32_t | timeout_ms | ||
) |
内部会从对应的数据ringbu中读取网络数据, 可对接到core_sysdep_network_recv网络接口
socket_id | 链路ID |
buffer | 指向外部数据缓冲区的指针 |
len | 外部数据缓冲区大小 |
timeout_ms | 接收超时时间 |
>=0 | 读取到的数据长度 |
<0 | 读取失败 |
int32_t aiot_at_nwk_close | ( | uint8_t | socket_id | ) |
内部会调用模组相关的AT命令, 关闭连接链路。可对接到core_sysdep_network_deinit网络接口
socket_id | 链路ID |
=0 | 操作成功 |
<0 | 操作失败 |
int32_t aiot_at_hal_recv_handle | ( | uint8_t * | data, |
uint32_t | size | ||
) |
为AT组件提供串口数据
data | 字节数据 |
>=0 | 操作成功,返回已经消费掉的数据 |
<0 | 操作失败 |
int32_t aiot_at_deinit | ( | void | ) |
反初始化AT组件
int32_t core_at_ip_status | ( | core_ip_status_t | status | ) |
int32_t core_at_socket_status | ( | uint32_t | id, |
core_at_link_status_t | status | ||
) |