2024-03-28 12:04 AM - edited 2024-03-28 12:40 AM
Hi expert, our project is currently in the development stage. We are using the NUCLEO-H753ZI Development Kit for firmware development while awaiting the arrival of our custom board from the manufacturer. The dev-kit employs the STM32H753ZI (LQFP144), which has a slightly different pin configuration compared to the MCU on our custom board STM32H753ZI (LQFP100).
During our development process, we encountered an issue with using PC2_C to control SPI2 (SPI2_MISO), where it consistently pulls low. Despite extensive debugging efforts, including configuring the pin as GPIO and measuring with a logic analyzer, the issue persisted. Upon researching similar cases on the ST Community forum STM32H735V (LQFP100) PC2_C and PC3_C speed and FAQ: Default State of STM32H7 switches connecting Pxy_C and Pxy pads, we realized it might be related to a known issue in the STM32H7 family, specifically a bug in the silicon regarding the PC02 pin.
After reviewing the documentation and conducting tests on our end, we observed that while PC3_C can be controlled as expected, PC2_C cannot be controlled even when manipulating the external pad switches using the provided code:
HAL_SYSCFG_AnalogSwitchConfig(SYSCFG_SWITCH_PC2, SYSCFG_SWITCH_PC2_CLOSE); HAL_SYSCFG_AnalogSwitchConfig(SYSCFG_SWITCH_PC3, SYSCFG_SWITCH_PC3_CLOSE);
Thank you in advance for your assistance.
Solved! Go to Solution.
2024-04-03 01:15 AM
From my side I probed CN11/35 on the NUCLEO-H753ZI and there is no issue: PC2_C is toggling.
Could you please check the continuity between CN11 connector PC2_C pin and pin28 of the chip? The continuity test should be done on the connector and not on the PCB.
Are you sure the IO is not damaged by a previous usage?
2024-03-28 12:12 AM - edited 2024-03-28 12:16 AM
Hello,
Did you face the described issue on the NUCLEO-H753ZI (LQFP144)?
PS:
PA0, PA1, PC2_C and PC3_C pins are available on all packages.
PC2, PC3, PA0_C and PA1_C pins are available only on the TFBGA240+25
2024-03-28 12:39 AM
Hi, @SofLit,
"Did you encounter the described issue on the NUCLEO-H753ZI (LQFP144)?"
-> Yes, we're experiencing an issue with the development kit (PC2_C Pin). However, our custom board is incoming (expected in a few weeks or more). We'll be utilizing the STM32H753ZI (LQFP100) instead of the STM32H753ZI (LQFP144) on NUCLEO-H753ZI. I want to confirm whether it has the same issue as the STM32H7 family or not?
2024-03-28 12:54 AM
During our development process, we encountered an issue with using PC2_C to control SPI2 (SPI2_MISO), where it consistently pulls low.
If I understand well the issue, you cannot even toggle PC2_C GPIO pin with NUCLEO-H753ZI. Could you confirm?
2024-03-28 02:53 AM - edited 2024-03-28 02:53 AM
Hi @SofLit , Yes, correct. We cannot toggle the PC2_C GPIO pin with NUCLEO-H753ZI, and the issue is the same as what was discussed in the ST Community forum "Regarding STM32H735V (LQFP100) PC2_C and PC3_C speed, as well as the FAQ regarding the default state of STM32H7 switches connecting Pxy_C and Pxy pads". Could you help me confirm whether the issue lies with a bug in the silicon regarding the PC2_C pin, or if it's something else?
2024-03-28 03:03 AM - edited 2024-03-28 03:03 AM
Hi @SofLit , Yes, correct. We cannot toggle the PC2_C GPIO pin with NUCLEO-H753ZI
I will check on NUCLEO-H743ZI.
and the issue is the same as what was discussed in the ST Community forum "Regarding STM32H735V (LQFP100) PC2_C and PC3_C speed, as well as the FAQ regarding the default state of STM32H7 switches connecting Pxy_C and Pxy pads". Could you help me confirm whether the issue lies with a bug in the silicon regarding the PC2_C pin, or if it's something else?
I don't think it's the same issue.
Your are not arriving to toggle the IO while for the other threads the subject is related to timing issue. Which is already known.
2024-03-29 07:25 AM
Hello,
I tested toggling PC2_C on Nucleo-H743: MCU pin 28 / Nucleo: CN10-9 and didn't find any issue. This is what I see on PC2_C toggling each 5ms with a logic analyzer. .
Could you please verify if you're checking the right pin? or test its on another chip as it could be an issue with that chip?
2024-03-29 07:46 AM
Hi @SofLit , do you have the NUCLEO-H753ZI board available for testing? It should be the same model as the chip we previously tested.
Additionally, we also have the Nucleo-H743 Development Kit. We will test it on Monday, GMT+7, and provide you with feedback thereafter.
2024-03-29 07:51 AM - edited 2024-04-01 09:10 AM
Hello,
I don't have NUCLEO-H753ZI board. Meanwhile, STM32H743 and STM32H753 represent the same die. The only difference is the cryptographic feature. So I don't think it's related to the part number.
As you have another board, please test it and get back to us with your findings.
Thanks
2024-03-29 07:56 AM - edited 2024-03-29 08:19 AM
And this is the code I used for the test to toggle PC2_C pin:
int main(void)
{
/* Configure the MPU attributes */
MPU_Config();
/* Enable the CPU Cache */
CPU_CACHE_Enable();
HAL_Init();
/* Configure the system clock to 400 MHz */
SystemClock_Config();
/* -1- Initialize GPIOs */
GPIO_Init();
HAL_SYSCFG_AnalogSwitchConfig(SYSCFG_SWITCH_PC2, SYSCFG_SWITCH_PC2_CLOSE);
/* Infinite loop */
while (1)
{
HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_2);
HAL_Delay(5);
}
}
void GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
/* GPIO Ports Clock Enable */
__HAL_RCC_GPIOC_CLK_ENABLE();
/*Configure GPIO pin : PC2_C */
GPIO_InitStruct.Pin = GPIO_PIN_2;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
}