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

查看: 1327|回复: 1

[STM32L496] 【NUCLEO-L496ZG评测】ADC时钟问题修复&ADC_DMA使用&过采样&LCD160...

[复制链接]

57

主题

317

回帖

7

蝴蝶豆

论坛元老

最后登录
2020-8-2
发表于 2017-5-8 17:50:15 | 显示全部楼层 |阅读模式
【NUCLEO-L496ZG评测】ADC时钟问题修复&ADC_DMA使用&过采样&LCD1602驱动


昨晚摸索了一下,发现ADC有三个时钟可选,其中PLLSAI1时钟只有ADC1能用,
PLLSAI2只有ADC2能用,而SYSCLK则是ADC1和ADC2都能用。由于PLLSAI1时钟要给USB-OTG提供48MHz的高频时钟,而如此高的频率ADC1无法使用,因此就只能使用系统时钟再分频了,而事实上ADC1使用SYSCLK时钟之后的确也能正常工作。
1.PNG 2.PNG
    关于DMA,CubeMX对DMA的封装也是达到非常傻瓜的程度,只需要简单配置下即可使用。这里我要说下DMA数据的格式问题,由于ADC的数据最高是可以上到几千(mV)的,因此一个字节8位显然存不下,但是一个字32位由多余了,因此,可以采用半字16位来存。另外,ADC DMA采集必须使用循环采集,不可以使用单次采集,否则就会只采集到一个数据。
3.PNG 4.PNG
    再说下过采样。过采样是ADC提高精度的一个功能。L496的ADC1支持过采样,可以设置许多参数。
5.PNG
    设置完DMA和过采样之后,我在驱动文件里设置了DMA和过采样的开关,各位坛友下载之后按实际情况来调用。
6.PNG
    LCD1602在之前的帖子中已经介绍过了,采用一片74HC595芯片驱动,信号线只需要RS、EN、RCLK、SER、SRCLK五根。
1.gif 2.gif
    上传一份工程文件和头文件。
工程文件.zip (2.25 MB, 下载次数: 27)
IMG_20170508_164344.jpg
IMG_20170508_164551.jpg
回复

使用道具 举报

0

主题

10

回帖

0

蝴蝶豆

新手上路

最后登录
2019-1-10
发表于 2019-1-9 19:29:06 | 显示全部楼层
谢谢大佬分享,非常感谢
回复 支持 反对

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版