你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F103RET6的USART3不能使用。

[复制链接]
hysc 提问时间:2018-7-5 15:18 /
//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能通过中断收到串口数据。其它代码一样。不明原因,请指点。

谢谢。

收藏 评论7 发布时间:2018-7-5 15:18

举报

7个回答
废鱼 回答时间:2018-7-5 15:54:53
楼主,手册上写的需要设置一下复用功能。 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,available from the STMicroelectronics website: www.st.com.

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

CC4 回答时间:2018-7-5 15:59:55
建议安装 一个CubeMX 看看不同芯片下的端口定义,这些事就很容易 明白了。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

jakecumt 回答时间:2018-7-5 16:50:05
是用的时候看看是不是复用管脚,若是复用管脚需要在使用之前初始化成你要使用的功能,否侧会出问题

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

hysc 回答时间:2018-7-5 17:22:42
安 发表于 2018-7-5 15:54
楼主,手册上写的需要设置一下复用功能。 I2C2_SCL/USART3_TX(9)
9. This alternate function can be remap ...

但是在STM32F103C8T6上就没有复用,然后可以使用。
wolfgang 回答时间:2018-7-5 17:33:10
1、检查RCC是否开启
2、检查复用功能是否开启,*_msp文件中

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

hysc 回答时间:2018-7-5 18:22:22
谢谢大家,把芯片引脚全部重拖了一下,目前使用PB10和PB11,正常了。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2 介结帖

查看全部评分

五哥1 回答时间:2018-7-5 20:45:29
硬件故障会出现各种稀奇古怪的现象。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版