Statistics: Posted by ESP_Rubin — Tue Jul 05, 2016 1:14 pm
Statistics: Posted by tobewinner — Tue Jul 05, 2016 10:36 am
Statistics: Posted by ESP_Rubin — Tue Jul 05, 2016 9:39 am
Code:
OS SDK ver: 1.4.0(c599790) compiled @ Feb 26 2016 11:08:14
Code:
static u8 DevMacs[][6] = {
{0x5C, 0xCF, 0x7F, 0x8B, 0x2B, 0x87},
{0x5E, 0xCF, 0x7F, 0x8B, 0x2B, 0x87},
{0x5C, 0xCF, 0x7F, 0x8B, 0xD0, 0x64},
{0x5E, 0xCF, 0x7F, 0x8B, 0xD0, 0x64},
};
Code:
static u8 DevMacs[][6] = {
{0x5C, 0xCF, 0x7F, 0x8B, 0x2B, 0x87},
{0x5E, 0xCF, 0x7F, 0x8B, 0x2B, 0x87},
{0x5C, 0xCF, 0x7F, 0x8B, 0xD0, 0x64},
{0x5E, 0xCF, 0x7F, 0x8B, 0xD0, 0x64},
};
Code:
#include "esp_common.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "freertos/timers.h"
#include "freertos/queue.h"
#include "lwip/sockets.h"
#include "lwip/dns.h"
#include "lwip/netdb.h"
#include "espnow.h"
#include "user_config.h"
#include "gpio.h"
#include "uart.h"
static u8 DevMacs[][6] = {
{0x5C, 0xCF, 0x7F, 0x8B, 0x2B, 0x87},
{0x5E, 0xCF, 0x7F, 0x8B, 0x2B, 0x87},
{0x5C, 0xCF, 0x7F, 0x8B, 0xD0, 0x64},
{0x5E, 0xCF, 0x7F, 0x8B, 0xD0, 0x64},
};
static u8 Key[16] = {
0x12, 0x21, 0x34, 0x43, 0x53, 0x87, 0x74, 0x95, 0x12, 0x21, 0x34, 0x43, 0x53, 0x87, 0x74, 0x95
};
ICACHE_FLASH_ATTR
void EspNowRecvCb(uint8 *mac_addr, uint8 *data, uint8 len)
{
printf("EspNowRecvCb[@%u] %uB from [%02X%02X%02X%02X%02X%02X]:%02X.\n", system_get_time(), len,
mac_addr[0], mac_addr[1], mac_addr[2], mac_addr[3], mac_addr[4], mac_addr[5], data?data[0]:256);
}
ICACHE_FLASH_ATTR
void EspNowSendCb(uint8 *mac_addr, uint8 status)
{
printf("EspNowSendCb[@%u] 2 [%02X%02X%02X%02X%02X%02X], s=%u.\n", system_get_time(),
mac_addr[0], mac_addr[1], mac_addr[2], mac_addr[3], mac_addr[4], mac_addr[5], status);
}
ICACHE_FLASH_ATTR
void Init(void* pArg)
{
int Ret;
u8 i=0;
Ret = esp_now_init();
if (Ret==0) {
Ret = esp_now_register_recv_cb(EspNowRecvCb);
printf("esp_now_register_recv_cb ret:%d.\n", Ret);
Ret = esp_now_register_send_cb(EspNowSendCb);
printf("esp_now_register_send_cb ret:%d.\n", Ret);
Ret = esp_now_set_self_role(ESP_NOW_ROLE_CONTROLLER);
printf("esp_now_set_self_role ret:%d.\n", Ret);
Ret = esp_now_add_peer(DevMacs[0], ESP_NOW_ROLE_SLAVE, 14, Key, 16);
printf("esp_now_add_peer 0 ret:%d.\n", Ret);
Ret = esp_now_add_peer(DevMacs[1], ESP_NOW_ROLE_SLAVE, 14, Key, 16);
printf("esp_now_add_peer 1 ret:%d.\n", Ret);
Ret = esp_now_add_peer(DevMacs[2], ESP_NOW_ROLE_CONTROLLER, 14, Key, 16);
printf("esp_now_add_peer 2 ret:%d.\n", Ret);
Ret = esp_now_add_peer(DevMacs[3], ESP_NOW_ROLE_CONTROLLER, 14, Key, 16);
printf("esp_now_add_peer 3 ret:%d.\n", Ret);
Ret = wifi_set_channel(1);
printf("wifi_set_channel ret:%d.\n", Ret);
while (1) {
Ret = esp_now_send(NULL, "Hello EspNow!", 13);
printf("esp_now_send[@%u] ret:%d.\n", system_get_time(), Ret);
vTaskDelay(1000/portTICK_RATE_MS);
}
} else {
printf("Failed[%d] to esp_now_init.\n", Ret);
}
vTaskDelay(30000/portTICK_RATE_MS);
printf("Thread Over.\n");
}
ICACHE_FLASH_ATTR
void user_init(void)
{
TCP_WND = 2*TCP_MSS;
struct rst_info *pInfo = system_get_rst_info();
u8 Mac[6] = {0};
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U, FUNC_UART1_TXD_BK);
UART_SetBaudrate(UART0, BIT_RATE_115200);
UART_SetPrintPort(UART0);
wifi_get_macaddr(STATION_IF, Mac);
printf("SDK version:%s\nchipid=%08X:%02X%02X%02X%02X%02X%02X\nsystem_rtc_clock_cali_proc=0x%X, rst:%u,%u\n",
system_get_sdk_version(),
system_get_chip_id(), Mac[0], Mac[1], Mac[2], Mac[3], Mac[4], Mac[5],
system_rtc_clock_cali_proc(),
pInfo->reason, pInfo->exccause);
system_update_cpu_freq(SYS_CPU_160MHZ);
printf("Awake Time:%u.%u.\n", system_get_time(), system_get_rtc_time());
wifi_set_opmode(STATION_MODE);
xTaskCreate(Init, (signed char*)"Init", 512, NULL, 9, NULL);
printf("user_init over\n");
}
Statistics: Posted by tobewinner — Sat Jul 02, 2016 3:21 pm