0

嗨,我使用 MBED 开发了一个基于 Discovery L476 板(STM32L476VGT6)的板,并将其移植到 VisualGDB 后一切正常。唯一不起作用的是LPUART1。我将它连接到 PB10(LPUART1_RX)、PB11(LPUART1_TX) 但每当我在代码中声明端口并下载它时,程序就会挂起,甚至无法启动:

Serial RS232(PB_11, PB_10);

如果我删除这一行,代码效果很好(但我不能使用这个端口)

我更改了 PeripheralPins.c 中的引脚定义,因此 PB10 和 PB11 将用作 LPUART TX 和 RX 引脚:(我添加了这些行)

const PinMap PinMap_UART_RX[] = { {PB_10, LPUART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_LPUART1)},

//

const PinMap PinMap_UART_TX[] = { {PB_11, LPUART_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_LPUART1)},

但它仍然不起作用。有任何想法吗?

4

1 回答 1

1

请参阅https://github.com/ARMmbed/mbed-os/issues/5389,波特率需要设置为[sys_clk / 4096 ... sys_clk / 3]。此设备上的系统时钟运行在 80MHz。您可以在此板的 HAL 中修复它,直到部署真正的修复程序。

于 2017-11-10T05:33:01.620 回答