STM32 Nucleo-H7 上诡异的波特率

买了块NUCLEO-H743 ,使用STM32CubeMX 配置的主频居然是72M,而不是400M。配置的lwip+rtos 怎么也ping不通。无奈之下,下载了 STM32Cube_FW_H7_V1.7.0 一下子lwip +rtos 就成功了。没开心多久,为了printf 再定位,开通USART3 又是不通,后来好不容易发现串口调试助手上出现了几个反着的“???”,于是怀疑各种时钟配置错误。偶尔发现设置的115200 波特率,调试助手上设为38400 就好了。1/3 关系,蒙圈!

   搜索各种老外的讨论区,终于发现问题:

在stm32h7xx_hal_conf_default.h中,我将

#define HSE_VALUE((uint32_t)25000000)/ *!<外部振荡器的值以Hz * /

更改为

#define HSE_VALUE((uint32_t)8000000)/ *!<外部振荡器的值in Hz * /

我开通UART3 的方式:

stm32h7xx_nucelo_conf.h 中开放 USE_COM_LOG  为 1

/* COM define */
#define USE_COM_LOG                         1U
#define USE_BSP_COM_FEATURE                 1U
static void BSP_Config(void)
{
  BSP_LED_Init(LED2);
  BSP_LED_Init(LED3);
  COM_InitTypeDef com1;
	com1.BaudRate=115200;
	com1.WordLength=COM_WORDLENGTH_8B;
	com1.StopBits=COM_STOPBITS_1;
	com1.Parity=COM_PARITY_NONE;
	com1.HwFlowCtl=COM_HWCONTROL_NONE;
	BSP_COM_Init(COM1,&com1);
}

至于printf 的再定位,倒是已经有了。

    这段时间的痛苦经历再一次告诉我,不要过分相信大公司发布的东西,依然是各种bug。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值