
CUBEMX界面汉化有吗?
STM32F103RET6 FLASH擦除失败问题
STM32CUBE MX无法安装,每次总是卡在最后一步
STM32部署机器学习算法硬件至少要使用哪个系列的芯片?
用NanoEdge Ai训练多分类后输出概率一直为一样的值,传不同数据永远都是一样的概率
STM32L433VCT6 进入STOP模式2之后,功耗依然和正常运行模式没有差别,请教大神
STM32G474RET6移相问题
STM32G474使用HRTIME完成两路180度移相问题
ST官网账号密码重置不了
重新配置SCB->VTOR = 0x08010000后,再次复位,程序异常,发现不进tick中断,IIC读数卡死在准备查询循环中。
建议将此引脚悬空,测量输出方波,避免外部电路影响。
如不能输出,那么简单测量一下该引脚悬空状态下对GND 和 VDD的阻抗,粗略判断一下是否有损坏。
有条件的化,再换一片对比一下。
/* UART5 init function */
void MX_UART5_Init(void)
{
/* USER CODE BEGIN UART5_Init 0 */
/* USER CODE END UART5_Init 0 */
LL_USART_InitTypeDef USART_InitStruct = {0};
LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
/* Peripheral clock enable */
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_UART5);
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOC);
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOD);
/**UART5 GPIO Configuration
PC12 ------> UART5_TX
PD2 ------> UART5_RX
*/
GPIO_InitStruct.Pin = LL_GPIO_PIN_12;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_HIGH;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
LL_GPIO_Init(GPIOC, &GPIO_InitStruct);
GPIO_InitStruct.Pin = LL_GPIO_PIN_2;
GPIO_InitStruct.Mode = LL_GPIO_MODE_FLOATING;
LL_GPIO_Init(GPIOD, &GPIO_InitStruct);
/* UART5 interrupt Init */
NVIC_SetPriority(UART5_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0));
NVIC_EnableIRQ(UART5_IRQn);
/* USER CODE BEGIN UART5_Init 1 */
/* USER CODE END UART5_Init 1 */
USART_InitStruct.BaudRate = 115200;
USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B;
USART_InitStruct.StopBits = LL_USART_STOPBITS_1;
USART_InitStruct.Parity = LL_USART_PARITY_NONE;
USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX;
USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE;
LL_USART_Init(UART5, &USART_InitStruct);
LL_USART_ConfigAsyncMode(UART5);
LL_USART_Enable(UART5);
/* USER CODE BEGIN UART5_Init 2 */
LL_USART_EnableIT_RXNE(UART5);
LL_USART_EnableIT_IDLE(UART5);
/* USER CODE END UART5_Init 2 */
}
void UART5_SendDatas(uint8_t *data, uint8_t len)
{
uint16_t i = 0;
for(i = 0; i < len; i++)
{
while(LL_USART_IsActiveFlag_TC(UART5)!= 1);
LL_USART_TransmitData8(UART5, data[i]);
}
}
uint16_t UART5_RxIndex = 0;
uint16_t UART5_RxLen = 0;
uint8_t UART5_RxBuf[UART5_RxMax] = {0};
void MY_UART5_IRQHandler(void)
{
uint8_t temp = 0;
if(LL_USART_IsActiveFlag_IDLE(UART5))
{
LL_USART_ClearFlag_IDLE(UART5);
UART5_RxLen = UART5_RxIndex;
UART5_RxIndex = 0;
}
if(LL_USART_IsActiveFlag_RXNE(UART5))
{
LL_USART_ClearFlag_RXNE(UART5);
temp = LL_USART_ReceiveData8(UART5);
UART5_RxBuf[UART5_RxIndex] = temp;
UART5_RxIndex ++;
}
}
PD2只有0.1v左右,几乎没有。
你尝试将UART5映射到其他GPIO上试试,
1、有可能这个PD2打坏了,内部上下拉有问题
2、有可能UART5 RX那部分,打坏了
3、也有可能以上两种情况都有
板子上的PD2是直接引出来的,断电直接测了一下,对VDD的电阻1.8KΩ,对GND的电阻只有2.8Ω,其他的引脚对VDD和GDN都是MΩ级别的。
应该是引脚坏掉了。
测了一下,是引脚坏掉了
会的 单独坏掉IO 或者是出现IO正常AD功能用不了了,之前出现过问题