cancel
Showing results for 
Search instead for 
Did you mean: 

Black screen after running target

AWe.1
Associate II

Hello 🙂

I was doing setup from that tutorial on STM32F7508-DK:

https://www.youtube.com/watch?v=2LQpaz44Ug4&ab_channel=STMicroelectronics

I replaced ADC with I2C and make callback from Master Receive instead of ADC Callback.

void HAL_I2C_MasterRxCpltCallback (I2C_HandleTypeDef * hi2c)

{

float tab_current_temp[64];

tempValue = conversion(convtempData, tab_current_temp);

 // RX Done .. Do Something!

}

Timer settings were left default.

Does anyone have any idea where is the problem?

Also, when debugging from the STM32CubeIDE following message appears:

0693W00000Hq6odQAB.png

3 REPLIES 3
MM..1
Chief II

You mix here and dont report what is problem.

  1. youtube is diferent devkit
  2. i dont check but maybe different LCD
  3. errors ???
  4. black screen seems as hard fault
  5. ...

Try start with basic create project with LCD working, then add next parts

AWe.1
Associate II

@MM..1​ The main problem is that if I run target in TouchGFX then the screen becomes black.

  1. That's true, but I don't think it should make such a big difference
  2. I'm not sure
  3. There are no errors displayed

With other project it works fine, but after adding that what is in the tutorial effect is the same. I assume that it is something connected with timers, but I don't know how to change it.

I will try to do it with baby steps.

Alexandre RENOUX
Principal

Hello Awe.1,

Form what I see, debugging does not seem to work. So you cannot really know why the screen is black.

This is one of the drawbacks of using F750 or H750 due to these MCUs being "flashless", meaning that the code is in external Flash.

To make debugging possible, some steps need to be performed beforehand. Unfortunately, I'm not an expert in debugging for flashless MCUs.

Additionally, I don't know what your conversion() function is doing but I hope it's not a heavy process. In fact, you should not do real calculation directly in the callback.

If you use the I2C in interrupt mode, your code should not be blocked even though it fails fetching data. However, the initialization itself can be a blocking point. Maybe your code is stuck in the I2C config.

/Alexandre