a próbowałeś przez arduino przez prosty testowy kod? Mi szybciej zadziałał jak podłączyłem do Arduino niż do kompa przez uart, koniecznie podłącz tez pin 3.3V bo bez niego też mi nie działał dobrze. Samo 5V z zewnętrznego zasilania nie wystarczało
Kod:
#include <SoftwareSerial.h>
SoftwareSerial mySerial(A2, A3); (dla arduino nano, wiadomo podłączamy TX arduino do RX sim800 EVB)
void setup() {
mySerial.begin(9600); // the GPRS baud rate
Serial.begin(9600); // the SERIAL baud rate
delay(5000);
//*************************** konfiguracja modulu GSM
Serial.println("KONFIGURACJA MODEMU GSM SIM800L");
Serial.print("\ntest polaczenia z SIM800L");
mySerial.println("AT"); //Once the handshake test is successful, it will back to OK
ShowSerialData2();
delay(100);
Serial.print("\nTest jakosci sygnalu ");
mySerial.println("AT+CSQ"); //Signal Quality Report
ShowSerialData2();
delay(100);
mySerial.println("AT+CCID"); //Read SIM information to confirm whether the SIM is plugged
ShowSerialData2();
mySerial.println("AT+CMGF=1"); //TA sets parameter to denote which input and output format of messages to use. /0 PDU mode / 1 Text mode
ShowSerialData2();
mySerial.println("AT+CNMI=1,2,0,0,0"); //ustaw tryb odbioru sms
ShowSerialData2();
mySerial.println("AT+CREG?"); ////Check whether it has registered in the network
ShowSerialData2();
//********************************************************************************************************* ShowSerialData
void ShowSerialData2()
{
while(mySerial.available()){
Serial.write(mySerial.read());
}
while(Serial.available()){
mySerial.write(Serial.read());
}
delay(100);
}