現在、私のhttpサーバーにesp8266を接続しようとしています。私のローカルのWiFiネットワークの作品への接続が、私は自分のサーバーに接続しようとした場合、私は、ターミナルウィンドウでこのエラーを取得する:ESP8266 - TCPサーバーへの接続(C言語)
致命的な例外9(LoadStoreAlignmentCause): EPC1 = 0x4026027b、EPC2 = 0x00000000に、EPC3 = 0x00000000のTCP接続を処理し、このようになります私は
check_ip()
呼び出すuser_init
機能で、excvaddr = 0x00000011、DEPC = 0x00000000の
:
LOCAL void ICACHE_FLASH_ATTR check_ip(void){
struct espconn conn;
struct ip_info ipconf;
esp_tcp tcp;
uint8 ipAddr[4] = {1,2,3,4};
uint32 localPort = espconn_port();
bool res = wifi_get_ip_info(STATION_IF, &ipconf);
if(!res)
os_printf("No Success.");
else{
os_memcpy(tcp.local_ip,&ipconf.ip,4);
if(wifi_station_get_connect_status() == STATION_GOT_IP && ipconf.ip.addr != 0){
os_printf("Got IP Address.\n");
tcp.remote_port = 80;
tcp.local_port = espconn_port();
os_memcpy(tcp.remote_ip,ipAddr,4);
conn.type = ESPCONN_TCP;
conn.state = ESPCONN_NONE;
conn.proto.tcp = &tcp;
espconn_regist_connectcb(&conn,tcp_connect_cb);
espconn_regist_reconcb(&conn,tcp_recon_cb);
espconn_connect(&conn);
os_timer_disarm(&timer);
} else {
os_timer_setfn(&timer,(os_timer_func_t*)check_ip,NULL);
os_timer_arm(&timer,100,0); //recall function after 100ms, don't repeat
}
}
}
すべてのヘルプは、Vでありますエリーはとても感謝しています。
解決策を質問に追加するのではなく、回答として追加してください – mpromonet