3513|1

6107

帖子

4

TA的资源

版主

楼主
 

【测评SGP40】+UART通信测试传感器 [复制链接]

本帖最后由 damiaa 于 2021-2-10 12:07 编辑

【测评SGP40】+UART通信测试传感器

1), SEK-SVM40支持I2C和UART通信。Sensirion_Gas_Sensors_SEK-SVM40_Technical_Description_D1手册里有详细的介绍。

Sensirion_Gas_Sensors_SEK-SVM40_Technical_Description_D1.pdf (497.35 KB, 下载次数: 5)

硬件接口连线如下:

1,2电源电压,3,4,I2C和uart共享,5选择I2C 还是uart  接GND为i2C,悬空或者接VCC为uart。

 

2),有一些代码,有支持arduino的,有嵌入式的。但arduino的好像用到了serial1,因为stm32的板子跑arduino 不知道怎么整除serial1。因此作罢。

就用at32F407的uart口吧。也很好的。下篇里面仔细介绍。现在先把uart的通信搞明白。

Sensirion_Gas_Sensors_SEK-SVM40_UART_Interface_Description_D1手册对串口通信说得很明白。

Sensirion_Gas_Sensors_SEK-SVM40_UART_Interface_Description_D1.pdf (285.59 KB, 下载次数: 4)

3),根据Sensirion_Gas_Sensors_SEK-SVM40_UART_Interface_Description_D1介绍,物理层通信串口通信参数uart 115200 n,8,1。 

 SHDLC Frame Layer层采用一套简易的SHDLC包裹I2C的MISO MOSI。

4),具体实现看UART Commands

有13个命令。 按资料介绍。只要把串口接好。发送命令就会有回传结果。

5),下面准备一个uart-ttl的工具,这里采用ch340.   

          准备串口通信助手     也可以直接用官方的哪个uart-ttl +串口通信助手

      连接svm40到uart-ttl 注意 VCC GDD TX RX 四根,svm40的TX接uart-ttl RX  svm40的RX接uart-ttl TX !

  

接好后插到电脑

查看一下串口

打开串口调试助手 设置串口通信参数 115200 n,8,1

把命令都加进去。打开串口,就可以实验了。

6,通信时发现有些命令是关联的,比如,如果模块处于复位状态。或者按svm40_device_reset后

      svm40_get_signals读命令就不能正确执行。要先发送启动测量命令svm40_start_measurement

7,具体数据分析。

1,svm40_start_measurement 开启测量

2,svm40_get_signals 

3,svm40_get_raw_signals

4,svm40_stop_measurement  关闭测量

5,svm40_get_temperature_offset

6,svm40_set_temperature_offset

7,svm40_get_voc_parameters

8,svm40_set_voc_parameters

9,svm40_store_input_parameters

10,svm40_get_voc_states

11,svm40_set_voc_states

12,svm40_get_version  版本号获取

13,svm40_device_reset 模块复位

13个命令里面除了6,8,11命令带参数外,其他都是固定一个命令,资料里有说,看MOSI Data  Byte number  Description
因此实验是很方便的,直接送手册里面数据就OK,6,8,11倒是要计算一下。

1,4,是开启关闭测量,12,版本号获取,13,模块复位。

2,获得测量值。

3,svm40_get_raw_signals

0, 1  int16 provides the VOC Index (no unit) with a scaling factor of 10, e.g., an output of +250
         corresponds to a VOC Index of +25.0.
 2, 3  int16 provides the relative humidity (in % RH) compensated for the temperature offset with a
         scaling factor of 100, e.g., an output of +2’500 corresponds to +25.00 % RH.
 4, 5  int16 provides the temperature (in °C) with a scaling factor of 200, e.g., an output of +5’000
         corresponds to +25.00 °C.

命令  7E 00 03 01 0A F1 7E

应答  7E 00 03 00 06 00 00 20 1C 09 81 30 7E 

VOC                     0000        ==>     0

RH                        201C       ==>     8220   82.20%

TEMPERATURE  0981        ==>     2433   12.165°C

再用官方的串口工具和官方uart-ttl读一下比较

数值是81.09%   12.275°C   因为温湿度是动态变化的,所以值是对得上的。

数值是0

5,svm40_get_temperature_offset

6,svm40_set_temperature_offset

7,svm40_get_voc_parameters

8,svm40_set_voc_parameters

9,svm40_store_input_parameters

10,svm40_get_voc_states

11,svm40_set_voc_states

准备了一块板子,串口调试好了,下一步准备把模块加上试试。

此帖出自传感器论坛

最新回复

测试描述的很清楚 顶起   详情 回复 发表于 2021-2-28 11:47

赞赏

2

查看全部赞赏

点赞(1) 关注
 
 

回复
举报

2万

帖子

342

TA的资源

版主

沙发
 

测试描述的很清楚

顶起

此帖出自传感器论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表