OpenEdv-开源电子网

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

STM32F103C8T6+CCS811二氧化碳浓度检测

[复制链接]

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2019-2-15
在线时间
38 小时
发表于 2019-3-7 20:07:50 | 显示全部楼层 |阅读模式
本文使用的IIC协议 参考ltengy大佬的文章,需要的可以去github看看
https://ltengy.github.io/2018/08 ... %E6%8C%87%E5%8D%97/

主程序根据CCS811手册来进行编写,程序如下:
[mw_shl_code=c,true]#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "stdio.h"
#include "CCS811.h"
extern         ccs811_measurement_t CCS;
int main(void)
{
        u8 st1 = 0;
        delay_init();
        Uart1_init(115200);
        CCS811Init();
        app_Start();
        delay_ms(150);
        while(1)
        {
                st1 = CCS811_ReadOneByte(0x00);
                switch(st1)
                {
                        case 0x90:
                        {
                                setMode(MODE1);
                        }break;
                        case 0x98:
                        {
                                getData();
                                delay_ms(10);
                                if(CCS.eco2<10000)
                                {
                                        printf("co2 = %d tvoc = %d\r\n",CCS.eco2,CCS.tvoc);
                                }
                                delay_ms(300);
                        }break;
                        case 0x10:
                        {
                                app_Start();
                                printf("CCS811 Tries to enter App Mode!\r\n");
                                delay_ms(150);
                        }
                        case 0x99:
                        {
                                st1 = CCS811_ReadOneByte(0xE0);
                                printf("ERROR = %d\r\n",st1);
                        }
                        default:
                        {
                                reset();
                                printf("CCS811 Tries to reset\r\n");
                                delay_ms(150);
                        }break;
                }
                delay_ms(1000);
        }
}[/mw_shl_code]

记得在APP_Start后在测量模式选择时一定要加延时,要不然很可能出错,不能正确选择模式。
这个模块感觉很奇怪所以得多试试,如果出错,得重置模块 然后再进入重复上述操作
根据情况不同有可能开始测量的速度有所不同,我有时候开始有测量值快,有时候有测量值慢,这主要还是看MODE1什么时候设置成功。
测试结果1.png
测试结果.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14401
金钱
14401
注册时间
2018-8-3
在线时间
1156 小时
发表于 2019-3-7 20:30:05 | 显示全部楼层
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2019-2-15
在线时间
38 小时
 楼主| 发表于 2019-3-7 22:26:33 | 显示全部楼层
回复 支持 反对

使用道具 举报

头像被屏蔽

0

主题

207

帖子

0

精华

禁止发言

积分
276
金钱
276
注册时间
2019-3-4
在线时间
4 小时
发表于 2019-3-8 08:16:10 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

3

主题

15

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2018-11-6
在线时间
5 小时
发表于 2019-4-15 15:19:25 | 显示全部楼层
请问楼主能分享一下程序吗?
CCS811.h这类的文件没有
万分感谢
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2019-2-15
在线时间
38 小时
 楼主| 发表于 2019-4-30 21:36:56 | 显示全部楼层
回归此次各国 发表于 2019-4-15 15:19
请问楼主能分享一下程序吗?
CCS811.h这类的文件没有
万分感谢

那个我发的链接上就有
主要就是缺一个我上面写的主函数
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2019-5-26
在线时间
7 小时
发表于 2019-6-29 15:57:01 | 显示全部楼层
楼主求教啊
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2019-2-15
在线时间
38 小时
 楼主| 发表于 2019-7-1 21:36:36 | 显示全部楼层

可以查到硬件号码?
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2019-2-15
在线时间
38 小时
 楼主| 发表于 2019-7-1 21:38:00 | 显示全部楼层
只抽金卡啊 发表于 2019-7-1 21:36
可以查到硬件号码?

我把工程发给你吧
链接:https://pan.baidu.com/s/12EHjZwiv4Lamja13ydnA2Q
提取码:9ybq
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2019-7-13
在线时间
14 小时
发表于 2019-7-15 00:01:11 | 显示全部楼层
只抽金卡啊 发表于 2019-7-1 21:38
我把工程发给你吧
链接:https://pan.baidu.com/s/12EHjZwiv4Lamja13ydnA2Q
提取码:9ybq

链接过期了耶
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2019-8-8
在线时间
4 小时
发表于 2019-8-8 10:26:39 | 显示全部楼层
非常需要工程
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2019-2-15
在线时间
38 小时
 楼主| 发表于 2019-8-8 15:52:23 | 显示全部楼层
回复 支持 反对

使用道具 举报

5

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
241
金钱
241
注册时间
2019-2-15
在线时间
38 小时
 楼主| 发表于 2019-8-8 15:53:02 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2019-8-8
在线时间
4 小时
发表于 2019-8-8 16:26:06 | 显示全部楼层
只抽金卡啊 发表于 2019-8-8 15:53
链接:https://pan.baidu.com/s/1uiuFfUfE74VZoksQ3DkqJg
提取码:nzao

非常感谢,我去试试,真的非常谢谢
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2019-3-31
在线时间
7 小时
发表于 2020-7-24 20:40:31 | 显示全部楼层
非常感谢楼主!!!
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2021-7-13
在线时间
6 小时
发表于 2021-7-23 10:30:22 | 显示全部楼层
串口调试界面一直输出CCS811 Tries to reset,请问怎么解决
回复 支持 反对

使用道具 举报

9

主题

91

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1849
金钱
1849
注册时间
2019-3-8
在线时间
324 小时
发表于 2022-8-7 19:12:58 | 显示全部楼层
串口调试界面一直输出CCS811 Tries to reset,请问怎么解决
回复 支持 反对

使用道具 举报

9

主题

91

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1849
金钱
1849
注册时间
2019-3-8
在线时间
324 小时
发表于 2022-8-7 19:13:19 | 显示全部楼层
知之为知之 发表于 2021-7-23 10:30
串口调试界面一直输出CCS811 Tries to reset,请问怎么解决

请问你解决了吗 我也是这个问题
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-4-26 18:44

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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