用cube重新配置uart2后同时打开了exti模块的问题

发表在 BSP2019-3-18 12:44 [复制链接] 5 120

BSP:用的正点原子F429阿波罗的BSP,官网最新下载的。
& O* y- x7 A3 v$ y现象:我想用该BSP的uart2作为控制台的输出(默认是BSP),看说明uart2的管脚涉及到复用功能,要用cube进行配置。我用的cube版本是最新的5.1.0,F4固件库默认的是STM32Cube FW_F4 V1.22.0,但是我网上没有下载到,于是下载了最新的F4固件库是V1.24.0版本的。用cube只打开了uart2功能,其他没动,最后编译出错,检查发现stm32f4xx_hal_conf.h文件里打开了宏定义#define HAL_EXTI_MODULE_ENABLED,但是对应的.h头文件却没有包含进来,所以编译出错。: J3 @" v1 x5 J" D3 ^+ k  O) O, o1 Y
疑问:理论上是不会打开EXTI模块的,是不是我用了1.24.0的库的问题?9 f; H3 c8 g7 u

( G0 @# s' |7 s- ^! g2 D; j
微信截图4.png
微信图片1.png
微信图片2.png
微信图片3.png
使用道具 举报 显示全部楼层 回复
最新评论 | 正序浏览
显示全部楼层 |楼层直达:
发表于 2019-3-18 14:28:36 | 显示全部楼层
BSP默认都有控制台输出的,为啥要重新配置?
使用道具 举报 回复
发表于 2019-3-18 14:52:41 | 显示全部楼层
本帖最后由 shibinjiech 于 2019-3-18 14:57 编辑
2 v, f7 |' f+ ]* i1 T
misonyo 发表于 2019-3-18 14:28; s2 W- y/ A1 X
BSP默认都有控制台输出的,为啥要重新配置?

; G" |0 C+ Q* j) T' P1 l/ q这个不是重点呀。我现在发现啥都不改,重新用cube生成一下代码,stm32f4xx_hal_conf.h文件里这个宏定义#define HAL_EXTI_MODULE_ENABLED    就打开了,导致编译出错
使用道具 举报 回复
发表于 2019-4-16 16:27:00 | 显示全部楼层
我也遇到了这个问题,用cubemx5.1生成代码的时候,会自动声明一个HAL_EXTI_MODULE_ENABLED的宏,在keil中编译会导致没有引用相应的头文件而导致出错,每次使用cubemx以后注释掉这段宏就可以正常使用了
使用道具 举报 回复
发表于 2019-4-16 16:28:42 | 显示全部楼层
misonyo 发表于 2019-3-18 14:28; F! H( h! T2 o( s
BSP默认都有控制台输出的,为啥要重新配置?

) ]0 d9 ^$ n" {- c因为是移植的bsp,需要使用cubemx修改默认的串口引脚,可能是cubemx的原因会自动添加一个HAL_EXTI_MODULE_ENABLED的宏,需要手动注释才能在keil中编译通过
使用道具 举报 回复
发表于 1 小时前 | 显示全部楼层
ZhouJin 发表于 2019-4-16 16:27
: I6 [. M: z* m我也遇到了这个问题,用cubemx5.1生成代码的时候,会自动声明一个HAL_EXTI_MODULE_ENABLED的宏,在keil中编 ...
* r0 s5 v+ Z; d; X' }  {
换个低版本的就没有问题,最新版本的有问题。
使用道具 举报 回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|RT-Thread开发者社区  

© 2013-2017 上海睿赛德电子科技有限公司 沪ICP备13014002号-1

Powered by RT-Thread

快速回复 返回顶部 返回列表