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

STM32L0 固件库BUG

[复制链接]
二手烟 发布时间:2015-7-23 13:51
STM32L0XXX系类  ST官网提供的固件库文件“stm32l0xx_hal_gpio.c” 第259行存在错误:
1、错误代码如下图:  运算符的优先级导致

G5]L1X8[MV}5(0F@C)UFC74.png

2、修改后正确代码如下图:
HP[}UV7DHGIYTU)JMOX{XF5.png

收藏 评论10 发布时间:2015-7-23 13:51

举报

10个回答
moyanming2013 回答时间:2015-7-23 15:22:07

LZ你改错了!
如果单单考虑优先级(先不考虑“错误”)的话,你把原意搞错了:
  1. temp &= ~((uint32_t) 0x0F)//此处是对
  2. //0x0F取非,后面的暂且不论,看你改的:
  3. temp &= ~(((uint32_t)0x0F) << (...));//你
  4. //对这个表达式取非了!
复制代码

一般情况下这些库是经过了审核的,不太容易会出现错误,即是是bug也是非常晦涩的地方,不太容易在这种地方出错,要先从自身找问题。
苏柚 回答时间:2015-7-23 14:06:16
谢谢分享
二手烟 回答时间:2015-7-23 16:01:16
moyanming2013 发表于 2015-7-23 15:22
LZ你改错了!
如果单单考虑优先级(先不考虑“错误”)的话,你把原意搞错了:

这句代码是意思是把相应的控制位清零,你这样看就可以看出问题了!
这个代码是根据实际使用发现的问题!  会影响到外部中断的设置!
creep 回答时间:2015-7-23 16:14:12
moyanming2013 发表于 2015-7-23 15:22
LZ你改错了!
如果单单考虑优先级(先不考虑“错误”)的话,你把原意搞错了:

这个地方可能的确有点问题,在其他的系列芯片HAL库比如F4的就是和楼主位第二张图片修改的那样,估计是ST的人搞错了。
LVX.m 回答时间:2015-7-23 16:36:26
二手烟 发表于 2015-7-23 16:01
这句代码是意思是把相应的控制位清零,你这样看就可以看出问题了!
这个代码是根据实际使用发现的问题!  ...

楼主说的 这个BUG 你仿真的时候 看寄存器状态 就能开出来了
stary666 回答时间:2015-7-23 18:01:27
最好不用,,,
党国特派员 回答时间:2015-7-24 09:44:57
看看。。。。
moyanming2013 回答时间:2015-7-24 16:00:20
creep 发表于 2015-7-23 16:14
这个地方可能的确有点问题,在其他的系列芯片HAL库比如F4的就是和楼主位第二张图片修改的那样,估计是ST ...

难道说cube中真是存在某些问题么,那么lz使用的cube版本更新到最新看看?
creep 回答时间:2015-7-24 16:11:10
moyanming2013 发表于 2015-7-24 16:00
难道说cube中真是存在某些问题么,那么lz使用的cube版本更新到最新看看?

是的,问题还不少呢。之前群里有个妹子说HAL库的SPI有问题调不通,最后也是库的问题。
cube stm32f0的1.2.1的驱动库有问题,spi调不通
12下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版