El módulo SIM800L no responde a los comandos AT

Gracias a los dos por contestar, especialmente al que señaló la escasa intensidad de corriente de la bateria de LITIO como parte del problema. Me había fijado en el voltaje pero obvié el amperaje necesario para que el módulo SIM800L funcionase. En vez de liarme con pilas de LITIO o LIPO, decidí comprar módulos DC/DC que permiten regular el voltaje con una Intensidad de Corriente de hasta 3 Amperios. Llevan un pequeño potenciómetro a la salida para variar su tensión.

Arduino se conecta a este regulador de voltaje a su entrada (INPUT) que a su vez se conecta a su salida al sim800L

Conecté mi ARDUINO REV UNO al puerto USB de mi laptop y con este código conseguí que funcionase el envío de SMS.

#include <SoftwareSerial.h>
 
//SIM800 TX is connected to Arduino D8
#define SIM800_TX_PIN 8
 
//SIM800 RX is connected to Arduino D7
#define SIM800_RX_PIN 7
 
//Create software serial object to communicate with SIM800
SoftwareSerial serialSIM800(SIM800_TX_PIN,SIM800_RX_PIN);
 
void setup() {
  //Begin serial comunication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(19200);
  while(!Serial);
   
  //Being serial communication witj Arduino and SIM800
  serialSIM800.begin(19200);
  delay(1000);
  
  Serial.println("Setup Complete!");
  serialSIM800.println("AT+CPIN=\"9446\"");  //Comando AT para introducir el PIN de la tarjeta
  delay(25000);  //Tiempo para que encuentre una RED
  EnviaSMS();               // Llamada a la funcion que envia el SMS
}
void loop() {
  //Read SIM800 output (if available) and print it in Arduino IDE Serial Monitor
  if(serialSIM800.available()){
    Serial.write(serialSIM800.read());
  }
  //Read Arduino IDE Serial Monitor inputs (if available) and send them to SIM800
  if(Serial.available()){    
    serialSIM800.write(Serial.read());
  }
}
// Funcion para el envio de un SMS
void EnviaSMS(){    
 serialSIM800.println("AT+CMGF=1");                 // Activamos la funcion de envio de SMS
 delay(100);                                    // Pequeña pausa
 serialSIM800.println("AT+CMGS=\"+34625XXXXXX\"");  // Definimos el numero del destinatario en formato internacional 
 delay(100);                                    // Pequeña pausa
 serialSIM800.print("Hola Mundo!");                 // Definimos el cuerpo del mensaje
 delay(500);                                    // Pequeña pausa
 serialSIM800.print(char(26));                      // Enviamos el equivalente a Control+Z 
 delay(100);                                    // Pequeña pausa
serialSIM800.println("");                          // Enviamos un fin de linea
 delay(100);                                    // Pequeña pausa
}

Un saludo y mil gracias a los dos.

Doy por solucionado este tema.