w800使用uart的例子
时间: 2023-07-11 13:04:32 浏览: 128
w800是一款嵌入式WiFi模块,它支持UART通信。下面给出一个使用UART通信的w800示例代码:
```c
#include <stdio.h>
#include <string.h>
#include "w800.h"
#define UART_NUM UART_NUM_1
#define BUF_SIZE 128
void app_main(void)
{
// 初始化UART
uart_config_t uart_config = {
.baud_rate = 115200,
.data_bits = UART_DATA_8_BITS,
.parity = UART_PARITY_DISABLE,
.stop_bits = UART_STOP_BITS_1,
.flow_ctrl = UART_HW_FLOWCTRL_DISABLE,
};
uart_param_config(UART_NUM, &uart_config);
uart_set_pin(UART_NUM, GPIO_NUM_1, GPIO_NUM_3, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE);
uart_driver_install(UART_NUM, BUF_SIZE * 2, 0, 0, NULL, 0);
// 初始化w800
w800_init();
uint8_t buf[BUF_SIZE];
while (1) {
// 从UART读取数据
int len = uart_read_bytes(UART_NUM, buf, BUF_SIZE, 100 / portTICK_RATE_MS);
if (len > 0) {
// 将数据发送到w800
w800_send(buf, len);
}
// 从w800接收数据
len = w800_recv(buf, BUF_SIZE, 100 / portTICK_RATE_MS);
if (len > 0) {
// 将数据发送到UART
uart_write_bytes(UART_NUM, (char *)buf, len);
}
}
}
```
在这个示例代码中,我们首先初始化了UART和w800。然后,在一个循环中,我们不断从UART读取数据并发送到w800,同时从w800接收数据并发送到UART。这样就实现了w800和主机之间的数据通信。
阅读全文