This commit is contained in:
DashyFox 2024-12-09 17:24:34 +03:00
parent a78990110d
commit a9f75262a5

View File

@ -109,7 +109,45 @@ void EthernetMaketClient::close(){
void EthernetMaketClient::tick_(){
if(_sock != MAX_SOCK_NUM && connectStatus!=CONNECT_CONNECTED && connectStatus!=CONNECT_STOP_WAITING&&connectStatus!=CONNECT_CONNECTING){
Serial.print("tick_() sock = "); Serial.println(_sock);
Serial.print("tick_() sock = "); Serial.print(_sock);
uint8_t s = w5500.readSnSR(_sock);
String state = "";
switch (s) {
case 0x00: state = "CLOSED"; connectStatus = CONNECT_STOP_WAITING; break;
case 0x13: state = "INIT"; break;
case 0x14: state = "LISTEN"; break;
case 0x15: state = "SYNSENT"; break;
case 0x16: state = "SYNRECV"; break;
case 0x17: state = "ESTABLISHED"; connectStatus = CONNECT_CONNECTED; break;
case 0x18: state = "FIN_WAIT"; break;
case 0x1A: state = "CLOSING"; break;
case 0x1B: state = "TIME_WAIT"; break;
case 0x1C: state = "CLOSE_WAIT"; connectStatus = CONNECT_STOP_START; break;
case 0x1D: state = "LAST_ACK"; break;
case 0x22: state = "UDP"; break;
case 0x32: state = "IPRAW"; break;
case 0x42: state = "MACRAW"; break;
case 0x5F: state = "PPPOE"; break;
default: state = "UNKNOWN"; break;
}
String connectStatusStr = "";
switch (connectStatus) {
case CONNECT_FAIL: connectStatusStr = "CONNECT_FAIL"; break;
case CONNECT_SUCCESS: connectStatusStr = "CONNECT_SUCCESS"; break;
case CONNECT_CONNECTING: connectStatusStr = "CONNECT_CONNECTING"; break;
case CONNECT_START: connectStatusStr = "CONNECT_START"; break;
case CONNECT_IDLE: connectStatusStr = "CONNECT_IDLE"; break;
case CONNECT_CONNECTED: connectStatusStr = "CONNECT_CONNECTED"; break;
case CONNECT_STOP_START: connectStatusStr = "CONNECT_STOP_START"; break;
case CONNECT_STOP_WAITING: connectStatusStr = "CONNECT_STOP_WAITING"; break;
default: connectStatusStr = "UNKNOWN"; break;
}
Serial.print(" state = ");
Serial.print(state);
Serial.print(" connectStatus = ");
Serial.print(connectStatusStr);
Serial.println();
}
//todo [] Пересмотреть стейт машину перевести на нативные статусы