OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5208|回复: 10

STM32F103 ADC采样 如何利用按键控制是否采样

[复制链接]

9

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-6-8
在线时间
10 小时
发表于 2016-8-23 15:38:45 | 显示全部楼层 |阅读模式
1金钱
说白了就是如何利用按键控制引脚的开关状态。。。。。。。。。。求大神

最佳答案

查看完整内容[请看2#楼]

没必要像楼上说的那么复杂,看楼主意思,只需要用一个标志位就行了 我用伪代码写一个思路 [mw_shl_code=c,true] unsigned char Flag=0; void main(void) { Init();//初始化 //... while(1) { if(GetKey()==TRUE)//如果按下 { while(GetKey()==TRUE)//等待松开 ; Flag=!Flag; } if(Flag==TRUE) { ADC_Sample(); } } }[/mw_shl_code]
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

548

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1383
金钱
1383
注册时间
2015-2-3
在线时间
197 小时
发表于 2016-8-23 15:38:46 | 显示全部楼层
笨笨呆呆 发表于 2016-8-24 13:19
也就是我利用按键   按一下就是采集  再按一下就是关断   再按就是采集这样重复

没必要像楼上说的那么复杂,看楼主意思,只需要用一个标志位就行了
我用伪代码写一个思路
[mw_shl_code=c,true]

unsigned char        Flag=0;
void main(void)
{
        Init();//初始化
        //...
        while(1)
        {
                if(GetKey()==TRUE)//如果按下
                {
                        while(GetKey()==TRUE)//等待松开
                                ;
                        Flag=!Flag;
                }
                if(Flag==TRUE)
                {
                        ADC_Sample();
                }
        }
}[/mw_shl_code]
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11533
金钱
11533
注册时间
2014-4-1
在线时间
1313 小时
发表于 2016-8-23 16:09:25 | 显示全部楼层

重新描述你的需求。

回复

使用道具 举报

13

主题

611

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1929
金钱
1929
注册时间
2014-10-6
在线时间
625 小时
发表于 2016-8-23 16:19:09 | 显示全部楼层
设置成外部触发单次转换@!
回复

使用道具 举报

9

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-6-8
在线时间
10 小时
 楼主| 发表于 2016-8-24 13:19:53 | 显示全部楼层
xuande 发表于 2016-8-23 16:09
重新描述你的需求。

也就是我利用按键   按一下就是采集  再按一下就是关断   再按就是采集这样重复
回复

使用道具 举报

9

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-6-8
在线时间
10 小时
 楼主| 发表于 2016-8-24 13:21:56 | 显示全部楼层
烟酒不沾 发表于 2016-8-23 16:19
设置成外部触发单次转换@!

怎么设置啊  不明白你说的  。。。。原谅我是菜鸟   能说具体点吗
回复

使用道具 举报

13

主题

611

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1929
金钱
1929
注册时间
2014-10-6
在线时间
625 小时
发表于 2016-8-24 15:06:38 | 显示全部楼层
笨笨呆呆 发表于 2016-8-24 13:21
怎么设置啊  不明白你说的  。。。。原谅我是菜鸟   能说具体点吗

把ADC模式设置成单次转换,触发方式是外部触发就是你的按键,你按一次开关就ADC采样转换一次,不需要再按一次就关断,单次转换只转换一次!
回复

使用道具 举报

13

主题

611

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1929
金钱
1929
注册时间
2014-10-6
在线时间
625 小时
发表于 2016-8-24 15:06:42 | 显示全部楼层
笨笨呆呆 发表于 2016-8-24 13:21
怎么设置啊  不明白你说的  。。。。原谅我是菜鸟   能说具体点吗

把ADC模式设置成单次转换,触发方式是外部触发就是你的按键,你按一次开关就ADC采样转换一次,不需要再按一次就关断,单次转换只转换一次!
回复

使用道具 举报

13

主题

611

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1929
金钱
1929
注册时间
2014-10-6
在线时间
625 小时
发表于 2016-8-24 15:06:46 | 显示全部楼层
笨笨呆呆 发表于 2016-8-24 13:21
怎么设置啊  不明白你说的  。。。。原谅我是菜鸟   能说具体点吗

把ADC模式设置成单次转换,触发方式是外部触发就是你的按键,你按一次开关就ADC采样转换一次,不需要再按一次就关断,单次转换只转换一次!
回复

使用道具 举报

9

主题

43

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-6-8
在线时间
10 小时
 楼主| 发表于 2016-9-4 20:44:33 | 显示全部楼层
烟酒不沾 发表于 2016-8-24 15:06
把ADC模式设置成单次转换,触发方式是外部触发就是你的按键,你按一次开关就ADC采样转换一次,不需要再按 ...

兄弟方便留个QQ吗  加我也行984788598  有些问题想要请教
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
18
金钱
18
注册时间
2020-10-1
在线时间
7 小时
发表于 2020-10-17 12:00:55 | 显示全部楼层
烟酒不沾 发表于 2016-8-24 15:06
把ADC模式设置成单次转换,触发方式是外部触发就是你的按键,你按一次开关就ADC采样转换一次,不需要再按 ...

我能看一下你的ADC库函数配置吗
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-17 18:43

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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