No hay respuesta de ESP8266-01 durante la comunicación con el descubrimiento STM32F429

0

Actualmente estoy trabajando en un proyecto que requiere el uso de UART para comunicarse entre STM32F429 Discovery Kit y ESP 8266-01. Estoy programando en Keil uVison 5 y CubeMx usando las funciones estándar de la biblioteca HAL. El problema es que no hay respuesta de ESP cuando se comunica con STM32F4: el búfer de reinicio de fecha en la función HAL está claro, el módulo ESP tampoco parpadea en el led azul , por lo que no hay información que desee mandar. Intenté resolverlo mediante un simpe de envío / recepción de par de funciones de la biblioteca HAL. Cuando investigué por debbuger, parece que hay un tiempo de espera al recibir la respuesta de ESP. Esto es lo que he hecho hasta ahora:

  • Revisé los conectores tx / rx, hay líneas finas, especialmente rx / tx que usan 3.3V, por lo que no hay problema allí.
  • Revisé la velocidad en baudios en los pines start uart, es 115200, aunque probé 9600, tampoco funcionó.
  • Intenté comunicarme por AT cammds con ESP por convertidor USB / UART, funcionó bien.
  • Lo mismo con la comunicación con STM32 por convertidor USB / UART, funciona correctamente.

  • He intentado varios ejemplos de ESP, he eliminado uno de ellos hasta ahora.

  • Los comandos AT se envían con \ n \ r marcas al final de cada uno
  • Intenté algunos perypherials UART STM32
  • ESP se alimenta desde una fuente externa.

Se me acabaron las ideas de qué hacer ahora, tal vez sea algo con las opciones de STM32. La bandera de Copmete. ¿Podría darme una pista de cómo hacer que esto funcione? A continuación una muestra del código que usé para las pruebas:

UART_HandleTypeDef huart2;

void SystemClock_Config(void);
static void MX_GPIO_Init(void);
static void MX_USART2_UART_Init(void);


int main(void)
{

  HAL_Init();

  SystemClock_Config();

  MX_GPIO_Init();
  MX_USART2_UART_Init();

 uint8_t rec[10];
 uint8_t send[]="AT\n\r";

  while (1)
  {
    HAL_UART_Transmit(&huart2,send, sizeof(send), 5000);
    HAL_Delay(2000);
    HAL_UART_Receive(&huart2,rec,sizeof(rec),5000);
  }
}
    
pregunta Przemek

0 respuestas

Lea otras preguntas en las etiquetas