什么是 "ESP_NOW_ROLE_MAX"?
What is "ESP_NOW_ROLE_MAX"?
在 nodemcu v1.0 (esp-12e) 上试用 esp-now 时,我在使用 esp_now_set_self_role(...)
设置角色时偶然发现了 ESP_NOW_ROLE_MAX
,想知道这可能是什么?任何想法? (我用的是Platform.io,不过在Arduino中应该也是一样的IDE)
ESP-NOW 通信是对等点(主从)之间的通信。主设备控制整个通信主动性,从设备只响应主设备的请求(如果适用)。
一个设备有可能同时扮演主从角色。如果设备是一个或多个从属设备的主设备,而反过来又是另一个主设备的从设备,则会发生这种情况。
如果设备没有角色,它将处于空闲状态。
table总结了四(五)种可能性,以及它们对应的名称和接口优先级:
esp_now_set_self_role(role) the role can be:
ESP_NOW_ROLE_IDLE = 0,
ESP_NOW_ROLE_CONTROLLER,
ESP_NOW_ROLE_SLAVE,
ESP_NOW_ROLE_COMBO,
ESP_NOW_ROLE_MAX
Idle –without function- ESP_NOW_ROLE_IDLE = 0 no interface
Master ESP_NOW_ROLE_CONTROLLER = 1 priority is given to the station interface
Slave ESP_NOW_ROLE_SLAVE = 2 priority is given to the SoftAP interface
Master + Slave ESP_NOW_ROLE_MAX = 3 priority is given to the station interface
Master + Slave ESP_NOW_ROLE_COMBO priority is given to the SoftAP interface
像
一样使用
// Once ESPNow is successfully init, we will register for Send CB to
// get the status of Trasnmitted packet
esp_now_set_self_role(ESP_NOW_ROLE_CONTROLLER);
esp_now_register_send_cb(OnDataSent);
// Register peer
esp_now_add_peer(broadcastAddress, ESP_NOW_ROLE_SLAVE, 1, NULL, 0);
阅读有关 possible scenarios look here 的更多详细信息
更多信息在 sources.
在 nodemcu v1.0 (esp-12e) 上试用 esp-now 时,我在使用 esp_now_set_self_role(...)
设置角色时偶然发现了 ESP_NOW_ROLE_MAX
,想知道这可能是什么?任何想法? (我用的是Platform.io,不过在Arduino中应该也是一样的IDE)
ESP-NOW 通信是对等点(主从)之间的通信。主设备控制整个通信主动性,从设备只响应主设备的请求(如果适用)。
一个设备有可能同时扮演主从角色。如果设备是一个或多个从属设备的主设备,而反过来又是另一个主设备的从设备,则会发生这种情况。
如果设备没有角色,它将处于空闲状态。
table总结了四(五)种可能性,以及它们对应的名称和接口优先级:
esp_now_set_self_role(role) the role can be:
ESP_NOW_ROLE_IDLE = 0,
ESP_NOW_ROLE_CONTROLLER,
ESP_NOW_ROLE_SLAVE,
ESP_NOW_ROLE_COMBO,
ESP_NOW_ROLE_MAX
Idle –without function- ESP_NOW_ROLE_IDLE = 0 no interface
Master ESP_NOW_ROLE_CONTROLLER = 1 priority is given to the station interface
Slave ESP_NOW_ROLE_SLAVE = 2 priority is given to the SoftAP interface
Master + Slave ESP_NOW_ROLE_MAX = 3 priority is given to the station interface
Master + Slave ESP_NOW_ROLE_COMBO priority is given to the SoftAP interface
像
一样使用 // Once ESPNow is successfully init, we will register for Send CB to
// get the status of Trasnmitted packet
esp_now_set_self_role(ESP_NOW_ROLE_CONTROLLER);
esp_now_register_send_cb(OnDataSent);
// Register peer
esp_now_add_peer(broadcastAddress, ESP_NOW_ROLE_SLAVE, 1, NULL, 0);
阅读有关 possible scenarios look here 的更多详细信息
更多信息在 sources.