Skip to main content
Dhaval Patel
Associate II
March 12, 2018
Solved

STM32F769NI Discovery UART6 sends corrupted output

  • March 12, 2018
  • 3 replies
  • 3343 views
Posted on March 12, 2018 at 23:29

Hi,

I using

Board: STM32F769NI Discovery

CubeMx: 4.24.0

STM32Cube_FW_F7_V1.9.0

ARM MDK: 5.24.2.0

When I try to use UART6 for communicating with hyper terminal (or putty).

My UART6 and HT are configured as below

0690X00000604TQQAY.jpg

I get corrupted output on hyper terminal.

0690X0000060A68QAE.png

If I use UART1 via ST-link with baud rate 115200. I do get proper output on hyper terminal.

0690X00000604HzQAI.jpg

I tried to set different clock source for UART: PCLK2, SYSCLK, HSI, LSE but it doesn't resolve the issue.

My CubeMx setup is as below:

0690X00000604TVQAY.jpg0690X00000604TWQAY.jpg0690X00000604TaQAI.jpg

I don't understand why UART6 output doesn't work as it should be?

Any hint?

Thanks

#discovery #uart #stm32f7 #stm32f769ni #uart6
This topic has been closed for replies.
Best answer by Tesla DeLorean
Posted on March 13, 2018 at 00:28

How are you wiring USART6 to hyperterminal?

The USART is at CMOS levels which are not compatible with RS232 levels.

3 replies

Tesla DeLorean
Tesla DeLoreanBest answer
Guru
March 12, 2018
Posted on March 13, 2018 at 00:28

How are you wiring USART6 to hyperterminal?

The USART is at CMOS levels which are not compatible with RS232 levels.

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
Dhaval Patel
Associate II
March 13, 2018
Posted on March 13, 2018 at 17:42

Thanks Clive for pointing out this. Somehow I missed this. Now I use MAX232 to drive my RS-232. It works fine.0690X00000604TqQAI.jpg

Incase someone has same issue then below is the ckt dia (taken from TI data sheet)

0690X00000604R6QAI.jpg

Connect ground of Discovery board to MAX-232 ckt ground and RS-232 ground (pin5).

Pavel A.
Super User
March 12, 2018
Posted on March 13, 2018 at 00:39

On the Cube timing tree you immediately see that HSE is not connected at all.

PLL feeds from HSI. To fix this, click the radio button on PLL source mux to select HSE.

Or, select HSE input for the System clock mux.

Then, in case of conflicts (if something shows up in red color), select 'resolve' until all red stuff disappears.

- pa

Dhaval Patel
Associate II
March 13, 2018
Posted on March 13, 2018 at 17:47

Thanks for trying to help me on this. I have already tried different clock combinations. I think for discovery board we can use any source of clock to drive UART clock from three available clock types as per AN4661.

Tesla DeLorean
Guru
March 13, 2018
Posted on March 13, 2018 at 17:53

You can. There is a dependency on the define HSE_VALUE being correct so the math works properly when HSE is in use, and this is a frequent cause of garbled data, but as your other USART worked properly I discounted this as a possible cause.

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
AHame.190
Visitor II
October 17, 2019

hai ,

Let me ask you a question related to this ....I am trying to implement UART communication between STM32F746 DISCO and ESP32-WROOM-32D developement board. I am using UART6 for connection . Right now , I am unable to see anything on PUTTY FROM uart6 . I believe this is the coz of absence of MAX232 OR RS232 STANDARD . So my question is , I dont want to see the data on PC from UART6 , BUT AM I ABLE TO RECIEVE DATA ON THE OTHER END & ENSURE ITS TRANSMISSION OVER THERE ?

Tesla DeLorean
Guru
October 17, 2019

Please consider just opening a new thread in the future.

The STM32 and ESP32-WROOM-32D module should be able to talk to each other via CMOS level. ie MCU to MCU

If you want to inspect or probe the signals, you might do better with a USB-to-CMOS Serial like adapter using an SiLabs or FTDI chip. Connect the RX pin of the adapter to the USART6_RX or USART6_TX pin to inspect the traffic.

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..