SENSIRION SCD30 二氧化碳传感器


I2C 地址: 0x61

I2C 通信速率: 100KHz

特别注意: SCD30 要求与其通信的 I2C Master 主机,必须支持 clock stretching 时钟延展 (12mS,150mS)


SCD30 I2C 命令


static const uint8_t SCD30_I2C_ADDRESS = 0x61;#define SCD30_CMD_START_PERIODIC_MEASUREMENT   {0x00,0x10}
#define SCD30_CMD_STOP_PERIODIC_MEASUREMENT    {0x01,0x04}
#define SCD30_CMD_SET_MEASUREMENT_INTERVAL     {0x46,0x00}
#define SCD30_CMD_GET_DATA_READY               {0x02,0x02}
#define SCD30_CMD_READ_MEASUREMENT             {0x03,0x00}
#define SCD30_CMD_AUTO_SELF_CALIBRATION        {0x53,0x06}
#define SCD30_CMD_SET_FORCED_RECALIBRATION     {0x52,0x04}
#define SCD30_CMD_SET_TEMPERATURE_OFFSET       {0x54,0x03}
#define SCD30_CMD_SET_ALTITUDE_COMPENSATION    {0x51,0x02}
#define SCD30_CMD_SOFT_RESET                   {0xD3,0x04}

I2C 通信中数据的 CRC 校验


I2C CRC 校验程序 (Polynomial 0x31 <X8+X5+X4+1>, CRC 初始值 0xFF)


static const unsigned char crc_table[] =
{
0x00,0x31,0x62,0x53,0xc4,0xf5,0xa6,0x97,0xb9,0x88,0xdb,0xea,0x7d,0x4c,0x1f,0x2e,
0x43,0x72,0x21,0x10,0x87,0xb6,0xe5,0xd4,0xfa,0xcb,0x98,0xa9,0x3e,0x0f,0x5c,0x6d,
0x86,0xb7,0xe4,0xd5,0x42,0x73,0x20,0x11,0x3f,0x0e,0x5d,0x6c,0xfb,0xca,0x99,0xa8,
0xc5,0xf4,0xa7,0x96,0x01,0x30,0x63,0x52,0x7c,0x4d,0x1e,0x2f,0xb8,0x89,0xda,0xeb,
0x3d,0x0c,0x5f,0x6e,0xf9,0xc8,0x9b,0xaa,0x84,0xb5,0xe6,0xd7,0x40,0x71,0x22,0x13,
0x7e,0x4f,0x1c,0x2d,0xba,0x8b,0xd8,0xe9,0xc7,0xf6,0xa5,0x94,0x03,0x32,0x61,0x50,
0xbb,0x8a,0xd9,0xe8,0x7f,0x4e,0x1d,0x2c,0x02,0x33,0x60,0x51,0xc6,0xf7,0xa4,0x95,
0xf8,0xc9,0x9a,0xab,0x3c,0x0d,0x5e,0x6f,0x41,0x70,0x23,0x12,0x85,0xb4,0xe7,0xd6,
0x7a,0x4b,0x18,0x29,0xbe,0x8f,0xdc,0xed,0xc3,0xf2,0xa1,0x90,0x07,0x36,0x65,0x54,
0x39,0x08,0x5b,0x6a,0xfd,0xcc,0x9f,0xae,0x80,0xb1,0xe2,0xd3,0x44,0x75,0x26,0x17,
0xfc,0xcd,0x9e,0xaf,0x38,0x09,0x5a,0x6b,0x45,0x74,0x27,0x16,0x81,0xb0,0xe3,0xd2,
0xbf,0x8e,0xdd,0xec,0x7b,0x4a,0x19,0x28,0x06,0x37,0x64,0x55,0xc2,0xf3,0xa0,0x91,
0x47,0x76,0x25,0x14,0x83,0xb2,0xe1,0xd0,0xfe,0xcf,0x9c,0xad,0x3a,0x0b,0x58,0x69,
0x04,0x35,0x66,0x57,0xc0,0xf1,0xa2,0x93,0xbd,0x8c,0xdf,0xee,0x79,0x48,0x1b,0x2a,
0xc1,0xf0,0xa3,0x92,0x05,0x34,0x67,0x56,0x78,0x49,0x1a,0x2b,0xbc,0x8d,0xde,0xef,
0x82,0xb3,0xe0,0xd1,0x46,0x77,0x24,0x15,0x3b,0x0a,0x59,0x68,0xff,0xce,0x9d,0xac
};unsigned char crc8scd30(unsigned char *ptr, unsigned char len)
{unsigned char crc = 0xFF;while (len--){crc = crc_table[crc ^ *ptr++];}return (crc);
}

SENSIRION SCD30 二氧化碳传感器 I2C 通信参数及相关命令相关推荐

  1. SENSIRION SCD30 二氧化碳传感器测量数据转换

    硬件:Nordic nRF52840 SoC, SENSIRION SCD30 软件: Nordic SDK V15.2, Keil V5.23 SCD30 I2C 读取测量值命令, 0x0300 参 ...

  2. Sensirion SCD4x 二氧化碳传感器,STM32 I2C读取CO2浓度,温度,湿度值

    目录: 一.描述 二.部分函数代码 1.开始周期测量. 2.停止周期测量. 3.读取传感器数据. 4.读取传感器序列号. 5.传感器自检. 6.传感器恢复出厂设置. 7.传感器软件复位. 8 查询传感 ...

  3. STM32应用(七)JY901九轴姿态模块(串口DMA空闲中断和I2C通信)

    文章目录 0.相关基础知识介绍 0.1六轴.九轴传感器有什么区别? 1.JY901模块简介 1.1 产品概述 1.2 性能参数 1.3 实物图和接线 2.软件和使用说明书 3.串口通信JY901 3. ...

  4. I2C通信之Arduino与加速度传感器ADXL345

    文章目录 有用的链接 加速度传感器灵敏度表示的几种方式LSB/g,count/g,V/g,V/° I2C通信之Arduino与加速度传感器ADXL345 有用的链接 Arduino Wire参考:ht ...

  5. 传感器i2c与arduino连接_Arduino中进行I2C通信发送数据案例分析

    在之前的文章中,我们介绍了Arduino之间的SPI通信.今天我们将学习另一种串行通信协议:I2C(内部集成电路).比较I2C和SPI,I2C只有两条线,而SPI使用四条,I2C可以有多个主机和从机, ...

  6. I2C通信之Arduino 陀螺仪传感器ITG3205

    topic I2C通信之Arduino与陀螺仪传感器ITG3205 I2C通信之Arduino与陀螺仪传感器ITG3205 转载自:https://www.geek-workshop.com/thre ...

  7. 传感器i2c与arduino连接_如何在两个Arduino开发板之间使用I2C总线进行通信

    在之前的文章中,我们介绍了Arduino之间的SPI通信.今天我们将学习另一种串行通信协议:I2C(内部集成电路).比较I2C和SPI,I2C只有两条线,而SPI使用四条,I2C可以有多个主机和从机, ...

  8. i2c通信的详细讲解_【博文连载】SCCB(I2C)初始化时序介绍

    在正式开始OV7725视频采集实现之前,Bingo不得不先讲解一下OV7725的寄存器配置接口.OV7725上电会默认输出YUV422格式的视频流,但我们希望传感器能够按照我们预期的模式工作,我们需要 ...

  9. STM32——I2C通信

    文章目录 一.I2C通信 二.使用I2C通信的硬件设备 三.硬件电路 四.I2C时序基本单元 起始与终止 发送 接收 发送应答与接收应答 五.I2C时序 指定地址写 当前地址读 指定地址读 连续读与写 ...

最新文章

  1. java 开发工具_Java开发工具和环境,你了解多少?
  2. jquery serialize()无效读取不到数据
  3. 在Visual Studio 2010 里使用Nunit 进行Debug 测试
  4. 【Flink】Flink自带的测试类 AbstractStreamOperatorTestHarness
  5. 【新华网】阿里与重庆9所高校合作 加快大数据人才培养
  6. Qt - QVariant
  7. SLAM_数据集_EuRoC数据集简介与使用
  8. 【元胞自动机】基于matlab元胞自动机城市规划【含Matlab源码 125期】
  9. indesign增效工具缺失_下载了Indesign CS5,但是文件打不开,说缺少增效工具,如何处理?...
  10. 做一个网站真的有那么难吗?
  11. java web课程设计之图书管理系统
  12. 过去的一切该翻篇了 好好奔向未来吧
  13. Tmw去掉名字服务器显示,7.1WOW大秘境福利:老司机分享溢出与死疽TMW监视
  14. PID算法 控制参数如何设定调节
  15. 10亿美元生态圈现雏形 巨头热议虚拟经济全球化
  16. IOS开发之——新浪微博(42)
  17. Can't find bundle for base name XXXX, locale zh_CN解决方法
  18. NeurIPS 2022 | 南理工/百度/中科院提出SVF:小样本分割新范式!
  19. Oracle视图,索引,序列的练习语句
  20. 高仿电视墙服务器系统结构,威方信科VFC高清电视墙服务器TVW3800产品中心_DAV数字音视工程网...

热门文章

  1. 《AHNG: Representation learning on attributed heterogeneous network(2019-Elsevier)》
  2. 生成全球定位系统、伽利略和北斗二号的Matlab代码及实际数据捕获文件,为测试功能提供完整信号与频谱
  3. 音频转码 via FFmpeg
  4. 新课改计算机专业选课要求,新高考如何选科?各专业类选科要求对照表来了
  5. Java设计模式之责任链模式(简单易懂)
  6. Nginx (7):nginx高可用配置
  7. 前端培训ajax都有哪些优点和缺点
  8. 玩转Redis-Lua脚本入门到实战-树形结构存储及查询
  9. 利用tampermonkey写一个打印页面的脚本
  10. 用Python画如此漂亮的专业插图?简直So easy