cancel
Showing results for 
Search instead for 
Did you mean: 

UART Communication with e paper display fails

eegdemir
Associate II

Hello Guys,

I am using waveshare 4.3 inch e paper UART display module. I looked to manual thousand time and I found a library called epd. this library was written in cpp and I rewrote for my stm32f411RE nucleo board in c and HAL Library. Buffer working good and I am transmitting hex codes to my computer. But the screen doesn't respond to these commands. I need for your help. My files and displays wiki are attached.

Thank you!!

 

https://www.waveshare.com/wiki/4.3inch_e-Paper_UART_Module 

 

 

 

7 REPLIES 7

Not sure there are a lot with the hardware to do the debug for you.

The IsSend will need to be volatile if changed in interrupt/callback.

Perhaps add diagnostic / telemetry output via serial so you can observe the interactions between the STM32 and display. Use a scope or logic analyzer to check the hardware level interactions.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Pavel A.
Evangelist III

Here you can get help with this. 

Thank you for your answer!! 

I am sending data to display via USART2 which connected both pc and display and I observed the data that board send to display. At the pc side everything fine but display doesn't respond. 

wiki says there is a parity bit but it is in the library. should I set a parity bit by cube mx? but I don't know how to set that because wiki doesn't say what parity is that (odd or even).

You can try it - just set (in cubemx) in usart2  parity , then try.

If still no response, change odd/even and try again.

If you feel a post has answered your question, please click "Accept as Solution".

Current set to no-parity, ie 8N1

 

/** * @brief USART2 Initialization Function * @PAram None * @retval None */ static void MX_USART2_UART_Init(void) { /* USER CODE BEGIN USART2_Init 0 */ /* USER CODE END USART2_Init 0 */ /* USER CODE BEGIN USART2_Init 1 */ /* USER CODE END USART2_Init 1 */ huart2.Instance = USART2; huart2.Init.BaudRate = 115200; huart2.Init.WordLength = UART_WORDLENGTH_8B; huart2.Init.StopBits = UART_STOPBITS_1; huart2.Init.Parity = UART_PARITY_NONE; huart2.Init.Mode = UART_MODE_TX_RX; huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE; huart2.Init.OverSampling = UART_OVERSAMPLING_16; if (HAL_UART_Init(&huart2) != HAL_OK) { Error_Handler(); } /* USER CODE BEGIN USART2_Init 2 */ /* USER CODE END USART2_Init 2 */ }

 

 

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

it didnt work bro 

ı try both of them it didnt work