STM32F103RET6的USART3不能使用

2019-07-14 14:56发布

//RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
//RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3,ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO , ENABLE);
GPIO_PinRemapConfig(GPIO_PartialRemap_USART3, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3,ENABLE);

上面注释掉的代码,在STM32F103C8T6上,同时使用PB10和PB11,则USART3能通过中断能收到串口数据。
同样的代码,在STM32F103RET6上,同时使用PB10和PB11,则USART3不能通过中断收到串口数据。

但是修改后的未注释代码,使用PinRemap后,同时使用PC10和PC11,则USART3能通过中断收到串口数据。其它代码一样。不明原因,请指点。

谢谢。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
shugan2011
1楼-- · 2019-07-14 21:49
建议安装 一个CubeMX 看看不同芯片下的端口定义,这些事就很容易 明白了。
svmuwer
2楼-- · 2019-07-15 00:00
 精彩回答 2  元偷偷看……
uryyywerw
3楼-- · 2019-07-15 01:50
TOPCB 发表于 2018-12-28 19:42
楼主,手册上写的需要设置一下复用功能。 I2C2_SCL/USART3_TX(9)
9. This alternate function can be remapped by software to some other port pins (if available on the used package). For more details, refer to the Alternate function I/O and debug configuration section in the STM32F10xxx reference manual,av ...

但是在STM32F103C8T6上就没有复用,然后可以使用。
peternie
4楼-- · 2019-07-15 07:01
1、检查RCC是否开启
2、检查复用功能是否开启,*_msp文件中
uryyywerw
5楼-- · 2019-07-15 11:50
谢谢大家,把芯片引脚全部重拖了一下,目前使用PB10和PB11,正常了。
csw_ying
6楼-- · 2019-07-15 17:20
硬件故障会出现各种稀奇古怪的现象。

一周热门 更多>