中级会员
 
- 积分
- 272
- 金钱
- 272
- 注册时间
- 2019-4-28
- 在线时间
- 80 小时
|
3金钱
使用串口3想发送一组数据,代码如图所示,会产生死机。仿真中发现代码会死机在HAL_UART_Transmit函数处或者HardFault_Handler函数中。在第一个判断语句中,若将HAL_Delay(3000);注释掉,保留三两句,则不会死机。
若将HAL_GPIO_WritePin(GPIOA, GPIO_PIN_3, GPIO_PIN_SET);注释掉,保留另三句,也不会死机。
若将 HAL_GPIO_WritePin(GPIOA, GPIO_PIN_3, GPIO_PIN_RESET); HAL_Delay(3000);这两句注释掉,保留另两句,也不会死机。
若将HAL_GPIO_WritePin(GPIOA, GPIO_PIN_3, GPIO_PIN_RESET);注释掉,保留另三句,则会死机。
经过一番调试,仍不知什么问题,PA3引脚为外设模块的MOS管供电开关控制引脚,串口3与外设通信。将第三句的PA3换成其他引脚都不会死机。
|
|