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

STM32L071RBT6 LL库下ADC使用DMA例程分享

[复制链接]
海迹天涯 发布时间:2018-12-5 17:38
      最近一个项目需要低功耗,之前听说LL库效率高,于是打算将此次项目用LL库来开发,我想效率高了省CPU资源,应该也能降低功耗吧于是就这么用上了。不过在使用的过程中发现LL库资料好少,开发过程中很多问题都要一边啃代码一边对照DATASHEET。虽然进度慢了一点,不过感觉一边做项目一边学习点新知识也挺充实的。
     先说说在使用ADC过程中遇到的坑吧,根据我的经验用cube配置好的ADC初始代码就不用管了,需要使用ADC功能的时候只需要调用相应的使能函数将DMA相应的通道与外设使能位置位就可以工作起来了,我也这么做了,打印出来一看,2个通道都是0,尝试直接拉高,依然是0。单步调试对照寄存器,发现置位的位、清零的位都是能对上的,这是咋回事呢。实在想不通,难道我的板子坏了吗?还是用HAL再验证一下吧,一通配置,5分钟搞定,CUBE就是方便,依然是一样的操作,初始化代码不动,在外设初始化完成后调用使能函数,编译下载后发现不是0,拉高,4095,对了。看来硬件没坏,再来单步调试下,发现原来是CR寄存器的ADVREGEN位没有置位,此位置1后ADC电压调节器开启,ADCFGR2寄存器CKMODE设置不对,这个设置同步异步时钟之前用的型号还没注意有这个寄存器,先在LL库改了再编译,终于输出了2个通道正确的ADC值。这里分享一下调试完成的DEMO代码。
@7CZ~7R5{LD@Y%MT2YVZ184.png

ADCdemo.rar

下载

4.6 MB, 下载次数: 714

评分

参与人数 1 ST金币 +20 收起 理由
STMCU + 20

查看全部评分

收藏 1 评论11 发布时间:2018-12-5 17:38

举报

11个回答
海迹天涯 回答时间:2018-12-5 17:41:46
补一张图,ADC设置
1544002877(1).jpg
五哥1 回答时间:2018-12-5 21:59:30
LL库的太少了,恭喜你有了进步
奏奏奏 回答时间:2018-12-6 09:37:09
哇,对比之下,HAL库用起来简单多了。
LL库果然是给高级玩家准备的
海迹天涯 回答时间:2018-12-6 10:58:22
五哥1 发表于 2018-12-5 21:59
LL库的太少了,恭喜你有了进步

学习中
海迹天涯 回答时间:2018-12-6 10:59:45
奏奏奏 发表于 2018-12-6 09:37
哇,对比之下,HAL库用起来简单多了。
LL库果然是给高级玩家准备的

也还好,下载的CUBE库中有例程的,可以参考一下,其他资料就没有了
shinyzhuo 回答时间:2019-1-30 10:15:30
大佬可以写一份HAL库的嘛.....
大山里的小豹子 回答时间:2019-4-10 15:48:22
大神,请问一下,你是怎么修改的LL库文件?感谢!
大山里的小豹子 回答时间:2019-4-10 18:47:16
大神,请问一下,你修改了LL库哪些地方呀?
future2018 回答时间:2020-1-15 15:45:46
多谢了,学习了
12下一页

所属标签

STM32团队

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


最新内容

相似技术帖

官网相关资源

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