20231008_HangBiao_emb/资料/09_arduino代码/bc26_tcp/bc26_tcp.ino

84 lines
2.6 KiB
Arduino
Raw Normal View History

2023-10-08 08:59:56 +00:00
/*
Blink
Turns on an LED on for one second, then off for one second, repeatedly.
Most Arduinos have an on-board LED you can control. On the Uno and
Leonardo, it is attached to digital pin 13. If you're unsure what
pin the on-board LED is connected to on your Arduino model, check
the documentation at http://arduino.cc
This example code is in the public domain.
modified 8 May 2014
by Scott Fitzgerald
*/
//判断返回值是否正确
void connectNBIOT (String cmd, char *res)
{
while(1)
{
Serial.println(cmd);
delay(500);
while(Serial.available()>0)
{
if(Serial.find(res))
{
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(100); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(100);
return;
}
}
delay(1000);
}
}
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin 13 as an output.
pinMode(13, OUTPUT);
Serial.begin(115200); //
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// prints title with ending line break
connectNBIOT("AT","OK");
Serial.println("ATE0&W");//关闭回显
delay(300);
connectNBIOT("AT+CPIN?","+CPIN: READY");//返+CPIN:READY表明识别到卡了
connectNBIOT("AT+CGATT?","+CGATT: 1");//返+CGACT: 1,就能正常工作了
Serial.println("AT+QICLOSE=0");//关闭上一次socekt连接
delay(500);
connectNBIOT("AT+QIOPEN=1,0,\"TCP\",\"47.92.146.210\",8888,1234,0","+QIOPEN: 0,0");//建立服务器的IP和端口连接
Serial.println("TCP CONNECT IS OK");//
delay(300);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(13, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
// prints title with ending line break
connectNBIOT("AT+QISEND=0,10,1234567890","SEND OK");//send message
}
/*
Blink
Turns on an LED on for one second, then off for one second, repeatedly.
Most Arduinos have an on-board LED you can control. On the Uno and
Leonardo, it is attached to digital pin 13. If you're unsure what
pin the on-board LED is connected to on your Arduino model, check
the documentation at http://arduino.cc
This example code is in the public domain.
modified 8 May 2014
by Scott Fitzgerald
*/