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

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

BSP:用的正点原子F429阿波罗的BSP,官网最新下载的。5 J4 R9 f/ Y# C* ^9 R
现象:我想用该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头文件却没有包含进来,所以编译出错。0 q. b! L9 R+ I3 c/ o0 F6 ~* ?" v1 w
疑问:理论上是不会打开EXTI模块的,是不是我用了1.24.0的库的问题?
) q0 B2 c. N, s2 |) \! p3 o* 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 编辑 " l/ t& g$ [) X2 Q' \( Y
misonyo 发表于 2019-3-18 14:28" e, V. b4 w% E1 n
BSP默认都有控制台输出的,为啥要重新配置?

% d8 G' N7 |' ~: L这个不是重点呀。我现在发现啥都不改,重新用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:287 k  e) o( f) c$ @2 I& I, }( W
BSP默认都有控制台输出的,为啥要重新配置?

+ b3 T7 U. P4 o- A* m4 d因为是移植的bsp,需要使用cubemx修改默认的串口引脚,可能是cubemx的原因会自动添加一个HAL_EXTI_MODULE_ENABLED的宏,需要手动注释才能在keil中编译通过
使用道具 举报 回复
发表于 2019-4-24 16:31:59 | 显示全部楼层
ZhouJin 发表于 2019-4-16 16:27
" S! \% ]$ Z5 T9 L我也遇到了这个问题,用cubemx5.1生成代码的时候,会自动声明一个HAL_EXTI_MODULE_ENABLED的宏,在keil中编 ...

& B7 J6 t# F3 w* I4 O换个低版本的就没有问题,最新版本的有问题。
使用道具 举报 回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

Powered by RT-Thread

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