OpenEdv-开源电子网

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

最近弄粉尘传感器GP2Y1010AU0F 希望用过的帮解答一下

[复制链接]

13

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
106
金钱
106
注册时间
2012-7-4
在线时间
0 小时
发表于 2014-4-28 09:05:07 | 显示全部楼层 |阅读模式
u16 AD_PM;
void config_GP2Y1010AU0F() //PIN3  B13 
{
    GPIO_ResetBits(GPIOB,GPIO_Pin_13);                // 点亮连接到pin3 的LED
    delay_us(280);   //  过0.28毫秒
    AD_PM=Get_Adc(ADC_Channel_2); // 对连接到A0的模块Vo进行采样
    delay_us(40);    //  过0.04毫秒
    GPIO_SetBits(GPIOB,GPIO_Pin_13); //  关闭LED
    delay_us(9680); //  等待9.680毫秒

  // dustdensity=0.17*AD_PM-0.1;  //灰尘浓度与电压线性关系
}
while(1)
{
    config_GP2Y1010AU0F();
   //delay_ms(500);
    //printf("%d",AD_PM);
}


第一张波形是PIN3 LED输入波形  第二张是点跟烟以后输出PIN5的波形  但是打印串口的时候 电压采样值一直是几到几十 说明电压一直是0 如果是4000多 就对了 如果波形对了 那是我AD没采到这个电压吗 ?怎么解决呢 谢谢大家了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2014-4-28 09:12:05 | 显示全部楼层
这种类似PWM的脉冲波形用输入捕获就行了。
既然要精确捕获,为什么还要加软件延时?
回复 支持 反对

使用道具 举报

13

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
106
金钱
106
注册时间
2012-7-4
在线时间
0 小时
 楼主| 发表于 2014-4-28 09:44:27 | 显示全部楼层
回复【2楼】ricefat:
---------------------------------
这些软件延时是配置输入脉冲的时间 必须在延时280US后采集 我可能没采集到这个电压
回复 支持 反对

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2014-4-28 11:35:41 | 显示全部楼层
用输入捕获,配置完成后等待波形跳变就好
回复 支持 反对

使用道具 举报

21

主题

64

帖子

0

精华

初级会员

Rank: 2

积分
176
金钱
176
注册时间
2013-3-20
在线时间
2 小时
发表于 2014-8-2 15:06:33 | 显示全部楼层
输入波形不是周期10ms,高电平0.32ms吗?
回复 支持 反对

使用道具 举报

83

主题

400

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2273
金钱
2273
注册时间
2013-8-26
在线时间
228 小时
发表于 2014-8-2 21:48:24 | 显示全部楼层
一,你的驱动波形好像不对,怎么不用定时器驱动呢?
二,第二张图好像是对的,就是脉冲形式的,如果你用什么表测量的话,可能就是0.几或者0.00几伏特。。
三,如果你想采集AD模拟形式的话,加个RC吧,或者更好一点的电路,效果能好点。
个人建议。。
回复 支持 反对

使用道具 举报

5

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
109
金钱
109
注册时间
2014-7-16
在线时间
15 小时
发表于 2014-9-16 20:22:54 | 显示全部楼层
这问题你解决了没有?
没有最好,只有更好
回复 支持 反对

使用道具 举报

10

主题

232

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2288
金钱
2288
注册时间
2012-8-24
在线时间
247 小时
发表于 2014-9-16 22:28:02 | 显示全部楼层
怎么看不懂呀?有没有原理图呀,共发一个程序也看不懂呀
单片机技术交流请加127034610
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
68
金钱
68
注册时间
2015-1-7
在线时间
12 小时
发表于 2016-3-2 10:18:24 | 显示全部楼层
ricefat 发表于 2014-4-28 09:12
这种类似PWM的脉冲波形用输入捕获就行了。
既然要精确捕获,为什么还要加软件延时?

没懂你说的输入捕获,我觉得要也是pwm输出啊
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2016-5-5
在线时间
3 小时
发表于 2016-5-5 21:12:11 | 显示全部楼层
楼主能把你的程序给我发一份吗?刚学习这个模块还有很多不懂的地方,我qq553717669,谢谢了
回复 支持 反对

使用道具 举报

29

主题

492

帖子

0

精华

高级会员

Rank: 4

积分
810
金钱
810
注册时间
2016-4-7
在线时间
123 小时
发表于 2016-6-13 17:02:43 | 显示全部楼层
本帖最后由 xujian468 于 2016-6-13 17:06 编辑

也在搞这个问题,但是6脚如果VCC接5V的话,灰尘浓度达到最高的话,Vo(5脚)输出最高会达到3.6,3.7V,那估计会烧AD口吧,我打算VCC接3.3V
AAAA.jpg
bb.png
回复 支持 反对

使用道具 举报

15

主题

406

帖子

0

精华

高级会员

Rank: 4

积分
795
金钱
795
注册时间
2015-3-26
在线时间
151 小时
发表于 2016-6-14 09:37:38 | 显示全部楼层
用过夏普的pm2.5微粒传感器,那个直接串口收就行了
回复 支持 反对

使用道具 举报

29

主题

492

帖子

0

精华

高级会员

Rank: 4

积分
810
金钱
810
注册时间
2016-4-7
在线时间
123 小时
发表于 2016-6-15 13:38:57 | 显示全部楼层
xyl210xyl 发表于 2016-6-14 09:37
用过夏普的pm2.5微粒传感器,那个直接串口收就行了

你说的是 2代,他选的是 1代的
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2016-12-1
在线时间
1 小时
发表于 2016-12-1 11:38:15 | 显示全部楼层
楼主,我是夏普粉尘传感器一级**商,如有技术问题请联系:Q413497925
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-25 18:49

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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