我使用UART将ESP8266与ATmega8连接。我将一些值从ESP8266发送到ATmega8,在此基础上,ATmega8向ESP8266发送了一些值,这可以正常工作,但是几个小时后,ATmega8确实在将ATmega8重置为正常后发送了数据,但几小时后再次发送数据停止发送数据。
//ESP8266 CODE
Serial.write(post_data);
delay(2000);
String port_status = "";
if (Serial.available()) {
incomingByte = Serial.read();
delay(2000);
if(incomingByte == 70) {
pin_status = '0';
}
if(incomingByte == 79) {
pin_status = '1';
}
}
//ATMEGA8 CODE
int main() {
unsigned char reccive;
unsigned char ch;
while(1) {
while(! (ucsRA & (1<<RXC)));
{
reccive = UDR;
ch = ' ';
if(reccive == 'A') {
reccive = ' ';
_delay_ms(500);
ch = 'O';
while(! (ucsRA & (1<<TXC)));
{
UDR = 'O';
_delay_ms(500);
}
}
else {
ch = 'F';
while(! (ucsRA & (1<<TXC)));
{
UDR = 'F';
_delay_ms(500);
}
}
}
}
}