I am trying to connect UART communication with STM32L053C8-Discovery. But the problem is on terminal I get unknown symbols.

My Setup on CubeMX


/* USER CODE BEGIN Includes */
uint8_t tx_buff[]={1};
uint8_t rx_buff[10];

  while (1)
    HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5);
    HAL_UART_Transmit_DMA(&huart1,tx_buff,sizeof(tx_buff));// Sending in DMA mode

To RX,TX pins I connected FT232RL FTDI module.

enter image description here

enter image description here

With Arduino it works but with STM32 in terminal I get only symbols. Maybe someone could explain me how to correctly set the format?

enter image description here

Also there is a full code of main.c: https://pastebin.com/kST92XWZ


Baud rate mismatch.

Baud rate is set to 9600 baud on the screenshots, but it's 9800 in the linked code.

huart1.Init.BaudRate = 9800;
  • \$\begingroup\$ Sorry, my mistake. But I'm getting the same result with 9600. pastebin.com/qAFpiuy9 \$\endgroup\$ – m1row Nov 2 '18 at 10:38
  • 1
    \$\begingroup\$ tx_buff[]={1}; is not a printable character code. What should your terminal program do with it? Try transmitting a string. \$\endgroup\$ – followed Monica to Codidact Nov 2 '18 at 11:00
  • \$\begingroup\$ Thank you for your replay! I've downloaded STM32Cube MCU Package for STM32L0 series from link. There was an example of UART communication. I will analyse it. Have a good day! \$\endgroup\$ – m1row Nov 2 '18 at 11:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.