명령. 데이터가 웹 사이트로 업데이트되고 장치가 로밍되므로이 특정 설정을했습니다. http://www.cosm.org을 사용할 수 없습니다. 15 분마다 업데이트된다는 지식만으로는 5 ~ 10 초마다 업데이트해야하기 때문입니다. 내가 UDP 연결을 형성하기 위해 아래 코드를 시도했지만이 수신 IP 및 포트를 통해 전송되지 않습니다 연결하려면GPRS 실드 서버에 아두 이노 센서 데이터를 전송하고 AT 내가 GPRS 실드 (geeetech <a href="http://www.geeetech.com/wiki/index.php/Arduino_GPRS_Shield" rel="nofollow">http://www.geeetech.com/wiki/index.php/Arduino_GPRS_Shield</a>에서 sim900 실드)를 사용하여 서버에 아두 이노 센서 데이터를 전송하기 위해 노력하고있어
. 왜 arduino쪽에 오류가 발생하는지 알지 못합니다.
import SocketServer
PORTNO = 14
class handler(SocketServer.DatagramRequestHandler):
def handle(self):
newmsg = self.rfile.readline().rstrip()
print (newmsg)
self.wfile.write(self.server.oldmsg)
self.server.oldmsg = newmsg
s = SocketServer.UDPServer(('',PORTNO), handler)
print "Awaiting UDP messages on port %d" % PORTNO
s.oldmsg = "This is the starting message."
s.serve_forever()
내가 가능한 솔루션은 TCP 연결로 변경 될 수 있습니다 볼 수 있습니다,하지만 난 방법을 모르는 :
///connect
void connectUDP()
{
mySerial.println("AT+CSTT=\"APN\"");
delay(3000);
ShowSerialData();
mySerial.println("AT+CIICR");
delay(3000);
ShowSerialData();
mySerial.println("AT+CIFSR");
delay(3000);
ShowSerialData();
mySerial.println("AT+CIPSTART=\"UDP\",\"SERVER IP\",\"SERVER PORT\"");
delay(3000);
ShowSerialData();
mySerial.println();
}
///send udp packet to server
void sendUDP()
{
for(int x = 0; x < 30; x++){
mySerial.println("AT+CIPSEND");
delay(100);
ShowSerialData();
mySerial.println("\"hello world\"");
delay(100);
ShowSerialData();
mySerial.println((char)26);
delay(1000);
ShowSerialData();
}
mySerial.println();
//ShowSerialData();
}
서버 쪽은 다음과 같이 (파이썬으로 작성)한다 do ...
모뎀의 응답을 구문 분석하는 데 사용할 수있는 코드는 무엇입니까? –
위의 링크 된 답변은 http://stackoverflow.com/a/16446523/23118 코드가 어떻게 생겼는지에 대한 구조를 보여줍니다. 어쩌면 당신이 사용할 수있는 mySerial.readln 함수가 있을까요? 그렇지 않으면 mySerial.read를 기반으로 독자적인 readln 함수를 작성하십시오 (반드시 종료해야합니다). – hlovdal