问题始终没找到啊。工作忙,没仔细找。
但是端口肯定没错。我使用LL库提供的例子测试了,效果杠杠的。
STM32Cube_FW_H7_V1.8.0\Projects\NUCLEO-H7A3ZI-Q\Examples_LL\GPIO\GPIO_InfiniteLedToggling
之前没关注过LL库,原来在HAL库基础上开发了新的LL库,更加轻便,之前HAL库的笨重,浪费资源,很多用户表示不爽。
LL库比HAL轻便很多,大概编译后的目标代码只有HAL的三分之一大。
在这个库的基础上,做起来很容易啊。
奉上重定向串口的方法
int fputc(int ch,FILE *f)
{
LL_USART_TransmitData8(USARTx_INSTANCE, ch);
while(!(USARTx_INSTANCE->ISR & LL_USART_ISR_TC))
{;}
return ch;
}
USARTx_INSTANCE 例如我这里使用的是USART3
#define USARTx_INSTANCE USART3
int fputc(int ch,FILE *f)
{
USART3->TDR = ch;
while(!(USART3->ISR & LL_USART_ISR_TC))
{;}
return ch;
}
|