智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 6491|回复: 25
打印 上一主题 下一主题

K60实现ADC四通道自动连续采集 无需CPU干预

  [复制链接]

59

主题

1029

帖子

0

精华

版主

有什么需帮助的?

Rank: 9Rank: 9Rank: 9

积分
15139

热心会员奖章论坛元老奖章优秀会员奖章在线王奖章

威望
11068
贡献
1411
兑换币
1728
注册时间
2011-12-18
在线时间
1330 小时
跳转到指定楼层
1#
发表于 2013-10-31 15:06:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 洋葱圈 于 2013-10-31 15:07 编辑

之前有许多朋友询问如何使用K60的ADC实现多个通道的连续自动采集功能。其实就K60而言,他的ADC有ADC0和ADC1,每个ADCx又有A和B两组控制通道,因此最多可以实现4组ADC通道的连续自动采集,而且配合DMA和PDB,无需CPU对采集过程进行干预,我们可以直接读取内存中的转换结果!
本例程同样是基于LPLD的OSKinetis固件库开发的,代码中全部使用库函数进行开发,开发过程无需涉及任何寄存器操作。每步我们都写了详细注释,相信不了解原理的童鞋也能看个大概!


下面我还是简单叙述下实现原理:
Step 1.配置ADC模块,配置A组和B组控制通道均为硬件触发,使能DMA请求。并使能相关输入通道。
Step 2.配置DMA模块,分别用2个DMA通道来控制ADC0和ADC1的DMA传输,并配置DMA源地址为ADC结果寄存器,配置主循环计数2次,因为要分别传输R[A]和R[B]结果寄存器的值。
Step 3.配置PDB模块,使用软件触发或其他外设触发均可,例程中位软件触发。关键步骤是要配置PDB的ADC预触发模式,使能通道0和通道1的预触发,并配置为Back to Back模式,这样才能让ADC的COCO转换完成标志自动触发下一个AD转换!
Step 4.触发PDB工作,坐享其成!

主要代码如下:
太长不贴了, 直接看程序吧各位。。。

运行结果:



例程下载:
务必注意:本例程只是一个用户代码,它必须基于OSKinetis固件库来运行,因此必须放置在固件库目录下的/project目录才能正确编译,固件库地址 http://www.znczz.com/thread-207411-1-1.html



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

6

主题

126

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4049
威望
1562
贡献
1013
兑换币
989
注册时间
2012-9-23
在线时间
737 小时
2#
发表于 2013-10-31 15:49:33 | 只看该作者
赞赞~~你们那个基于3.0库的教程赶紧继续写啦,等不及了~~
回复 支持 反对

使用道具 举报

59

主题

1029

帖子

0

精华

版主

有什么需帮助的?

Rank: 9Rank: 9Rank: 9

积分
15139

热心会员奖章论坛元老奖章优秀会员奖章在线王奖章

威望
11068
贡献
1411
兑换币
1728
注册时间
2011-12-18
在线时间
1330 小时
3#
 楼主| 发表于 2013-10-31 15:59:59 | 只看该作者
逍逍遥游 发表于 2013-10-31 15:49
赞赞~~你们那个基于3.0库的教程赶紧继续写啦,等不及了~~

努力码字中。。。
回复 支持 反对

使用道具 举报

14

主题

607

帖子

0

精华

会长

魅影

Rank: 8Rank: 8

积分
3808

活跃会员奖章在线王奖章优秀会员奖章

威望
1736
贡献
952
兑换币
1177
注册时间
2013-7-27
在线时间
560 小时
4#
发表于 2013-10-31 16:10:12 | 只看该作者
这么多,有点混了
回复 支持 反对

使用道具 举报

55

主题

1235

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6072
威望
3023
贡献
1595
兑换币
1879
注册时间
2012-11-6
在线时间
727 小时
5#
发表于 2013-10-31 16:22:06 | 只看该作者
写点l系列的吧
回复 支持 反对

使用道具 举报

20

主题

801

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4967

优秀会员奖章活跃会员奖章在线王奖章论坛元老奖章

威望
2934
贡献
605
兑换币
1966
注册时间
2012-9-13
在线时间
714 小时
毕业学校
上海海事大学
6#
发表于 2013-10-31 18:17:24 | 只看该作者
怒求3.0教程呀。
回复 支持 反对

使用道具 举报

2

主题

49

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1606
威望
789
贡献
457
兑换币
518
注册时间
2012-12-30
在线时间
180 小时
毕业学校
sanxiadaxue
7#
发表于 2013-10-31 19:21:55 | 只看该作者
之前怎么没想到...还能这样搞。
回复 支持 反对

使用道具 举报

59

主题

1029

帖子

0

精华

版主

有什么需帮助的?

Rank: 9Rank: 9Rank: 9

积分
15139

热心会员奖章论坛元老奖章优秀会员奖章在线王奖章

威望
11068
贡献
1411
兑换币
1728
注册时间
2011-12-18
在线时间
1330 小时
8#
 楼主| 发表于 2013-10-31 21:07:37 | 只看该作者
张永超 发表于 2013-10-31 16:22
写点l系列的吧

KL系列?
回复 支持 反对

使用道具 举报

59

主题

1029

帖子

0

精华

版主

有什么需帮助的?

Rank: 9Rank: 9Rank: 9

积分
15139

热心会员奖章论坛元老奖章优秀会员奖章在线王奖章

威望
11068
贡献
1411
兑换币
1728
注册时间
2011-12-18
在线时间
1330 小时
9#
 楼主| 发表于 2013-10-31 21:07:55 | 只看该作者
邵志伟 发表于 2013-10-31 18:17
怒求3.0教程呀。

教程努力码字中,每周更新。
回复 支持 反对

使用道具 举报

59

主题

1029

帖子

0

精华

版主

有什么需帮助的?

Rank: 9Rank: 9Rank: 9

积分
15139

热心会员奖章论坛元老奖章优秀会员奖章在线王奖章

威望
11068
贡献
1411
兑换币
1728
注册时间
2011-12-18
在线时间
1330 小时
10#
 楼主| 发表于 2013-10-31 21:08:24 | 只看该作者
正先生、正能量 发表于 2013-10-31 19:21
之前怎么没想到...还能这样搞。

K60的功能真是其乐无穷,好多待挖掘的呢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-21 22:10 , Processed in 0.144263 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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