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

LL 库现在BUG太多希望官方能重视LL库

[复制链接]
lqs0905 发布时间:2018-11-30 11:58
本帖最后由 lqs0905 于 2018-11-30 12:20 编辑

本人是做消费电子的,所以在成本能节省就节省,在项目上就没有使用HAL这种很占用资源的库。在开发过程中我使用 cubeMX 配置单片机 库使用LL。我发现CubeMx 进行配置使用HAL库都没有问题,但是换成LL库之后问题就是一大堆,例如:
1.CubeMx在初始化IO口将IO口设为输低电平,如果使用HAL库就是正常的,换成LL库之后你会发现,在初始化IO口时根本就没有实现IO设成低电平的代码。
2.CubeMX 在重管脚时使用HAL库在初始化时就有重映的代码,但是在LL库中就没有这一功能,需要手动加上去,但是LL库中关于重映的代码还有BUG不能用,详情看我的贴子https://www.stmcu.org.cn/module/forum/thread-618115-1-1.html


评分

参与人数 1 ST金币 +20 收起 理由
STMCU + 20 活动奖励

查看全部评分

收藏 评论14 发布时间:2018-11-30 11:58

举报

14个回答
奏奏奏 回答时间:2018-11-30 12:01:45
你说具体一点哪个系列哪个型号,我有点不相信想试给你看
toofree 回答时间:2018-11-30 12:41:34
MCU型号、STM32CubeMx版本、HAL(及LL)库版本,都是什么?没有交代前提条件,直接说BUG没意义。
我也在STM32F103、STM32L496,在STM32CubeMx 2.5之前遇到过HAL、LL库的Bug,习惯库随时更新最新版本。不过等STM32CubeMx和HAL库更新到新版本后,发现已知BUG已被ST偷偷修复。
lqs0905 回答时间:2018-11-30 13:35:46
本帖最后由 lqs0905 于 2018-11-30 13:36 编辑

大家帮忙看一下,另一个不能重映射的见我另一个贴一楼有链接

捕获.PNG
捕获1.PNG

LED.zip

下载

1.79 KB, 下载次数: 1

lqs0905 回答时间:2018-11-30 13:42:08
我觉得像STM32这么大的团队应该是很严谨的,我发现的这两个问题也不是什么藏的很深的BUG,只要用LL生成一下工程就能试出来。我觉得很不应该
MrJiu 回答时间:2018-11-30 13:42:08
本帖最后由 MrJiu 于 2018-11-30 13:43 编辑

HAL和LL本身都是都是对寄存器的封装,至于功能的实现,那不叫bug,那叫未实现,或者说是功能不提供!!!而且,既然是省资源,或多或少会因为架构原因,导致某些东西不能实现(仅仅只得是特殊地方,因为架构都是针对普通大众)。。。换句话说就是,hal的功能可以覆盖80%的程序需求,LL或许只能覆盖70%的需求,另外的特殊需求要自己实现。。。就拿你说的,初始化后,IO口电平不能指定,自己后面加一句话不就得了。。。至于你说的管脚重映射bug,这个要指定某个版本的某个芯片来说,因为使用IO的时候,都他妈需要重映射。。。
最后,我hal和ll都使用,到目前为止,我是未遇到什么bug的,要说唯一的逻辑错误,那就是adc的channe设置存在一个特殊原因导致的逻辑错误,需要自己看代码才知道原因。。至于其他bug未遇到。。。还有,多看hal和ll本身代码,很多东西看代码就知道怎么回事。。。不要动不动就搞大新闻,你看看hal和ll代码质量远高于在座的各位,自己心里要有点B数!!!
lqs0905 回答时间:2018-11-30 13:53:29
MrJiu 发表于 2018-11-30 13:42
HAL和LL本身都是都是对寄存器的封装,至于功能的实现,那不叫bug,那叫未实现,或者说是功能不提供!!!而 ...

因为我是做产品的,我一惯的思维就是我提供不了的功能,我是不出现在我的产品说明书里,退一步要留我也会说明这个功能暂未实现。我只是希望stm32给我们提供更优质的代码,没有你想的什么大新闻来华众取宠。还有重映射这个加不了几个字节的代码,你再看看LL库生成的代码 PB4   ------> TIM3_CH1
  */
  GPIO_InitStruct.Pin = LL_GPIO_PIN_4;
  GPIO_InitStruct.Mode = LL_GPIO_MODE_FLOATING;
  LL_GPIO_Init(GPIOB, &GPIO_InitStruct); 这个都有你说应不应该加上重映射???
MrJiu 回答时间:2018-11-30 13:57:32
lqs0905 发表于 2018-11-30 13:53
因为我是做产品的,我一惯的思维就是我提供不了的功能,我是不出现在我的产品说明书里,退一步要留我也会 ...

都是做产品得。。。没人不是做产品得。。。虽然不知道你怎么设置得,因为我没有用F1系列得芯片,懒的去下载库文件包,但是我F0同样的初始化代码是这个样子
GPIO_InitStruct.Pin = DP_00_Pin;
  GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
  GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
  GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
  GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
  GPIO_InitStruct.Alternate = LL_GPIO_AF_1;
  LL_GPIO_Init(DP_00_GPIO_Port, &GPIO_InitStruct);
MrJiu 回答时间:2018-11-30 14:06:43
lqs0905 发表于 2018-11-30 13:53
因为我是做产品的,我一惯的思维就是我提供不了的功能,我是不出现在我的产品说明书里,退一步要留我也会 ...

至于说明书,你还别说,还真有,很显然你没看就说别人没有。。。不要搞什么一贯思维,懒就是你的思维!!!附上说明后缀.chm去库驱动路径里面找找,绝对有这个文档!!!没怎么看代码,也没怎么看文档吧!!!人啊,还是要低调,不要搞大事情!!!
Snail_Feng 回答时间:2018-11-30 14:07:01
向来自己使用库有问题进去看下寄存器操作方式,有bug很正常,不过用过F3 L0 L1 F4 F7基本都没遇到过BUG,有小量BUg直接进去修改LL库即可都是小问题
12下一页

所属标签

STM32团队

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


最新内容

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