主要思想是通过灯光接收esp8266的TLS密钥,SSID和密码 我用时钟信号和数据信号实现了一些简单的协议 我可以读取数据并将其写入串行以查看发生了什么。 但主要问题是数据可能是不同的长度,而我的C lang知识不足以提供将这些数据存储在变量中。数据将是JSON字符串。
LOCAL void ICACHE_FLASH_ATTR beam_intr_handler(void)
{
if (GPIO_REG_READ(GPIO_STATUS_ADDRESS) & BIT(BUTTON_PIN))
{
//disable interrupt
gpio_pin_intr_state_set(GPIO_ID_PIN(BUTTON_PIN), GPIO_PIN_INTR_DISABLE);
//clear interrupt status
GPIO_REG_WRITE(GPIO_STATUS_W1TC_ADDRESS, GPIO_REG_READ(GPIO_STATUS_ADDRESS) & BIT(BUTTON_PIN));
os_printf("tick %d \r\n", system_get_time());
os_printf("sensor states %d\r\n", ((GPIO_REG_READ(GPIO_IN_ADDRESS) & (BIT(SENSOR_PIN1))) != 0));
}
}