2023-03-03 06:56 AM
I connect my I2C but when I connect an oscilloscope I have nothing on the clock signal. So probably I misconfigured my clock. Could you give me the information? Thanks in advance.
In this picture below I've a warning, do you know how to remove this warning please ?
Thank you for your helps.
Regards
Yann DO
Solved! Go to Solution.
2023-03-07 03:46 AM
It's very strange when I come back to the '.ioc' I have a error and I selected resolve the error automatically. Now I have this configuration :
Normally the value is 8 but now it's 16. So I cant try again.
2023-03-07 03:48 AM
I have a warning :
Implicit declaration what does it means ?
But it's not very important, I can working. Now I have the clock on the SCL (just to have pull-up inside no pull-up).
But I have always the same error
2023-03-07 05:06 AM
Hi,
Sorry I have another error :
buff[0] had to make a shift. But I have always the same error.
2023-03-09 01:11 PM
Did you add the prototypes?
2023-03-09 01:16 PM
Yes I have developed prototypes but the error comes from SysTick as I sent you an email. How to configure the SysTick with my evaluation Board STM32L552E-EV ? Just to check if my board still works.
2023-03-09 01:25 PM
Explain your error.
And use the code snippet icon to add code instead of images. Makes it easier to copy code.
2023-03-09 01:33 PM
You can use this I2C example. It's the same STM32L5 family and not tied to a specific development board.
2023-03-09 11:32 PM
Hi,
As I say before I modify my code to check the SysTick function
int main(void)
{
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* Configure the peripherals common clocks */
PeriphCommonClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_I2C1_Init();
MX_SAI1_Init();
/* USER CODE BEGIN 2 */
HAL_Delay(50);
HAL_Delay(50);
// SGTL5000_init();
// set_volume(0);
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
}
And inside my function Hal_Delay (50), I'm always stuck in this line
__weak void HAL_Delay(uint32_t Delay)
{
uint32_t tickstart = HAL_GetTick();
uint32_t wait = Delay;
/* Add a period to guaranty minimum wait */
if (wait < HAL_MAX_DELAY)
{
wait += (uint32_t)uwTickFreq;
}
while ((HAL_GetTick() - tickstart) < wait)
{
}
}
And inside this function, it never returns to the calling function
__weak uint32_t HAL_GetTick(void)
{
return uwTick;
}
Do you know how to configure the SysTick of my evaluation board STM32L552E-EV ?