当前页面为 开发中 版本,查看特定版本的文档,请在页面左下角的下拉菜单中进行选择。

i2c_sht30例程

1 功能概述

本代码示例主要演示i2c外设的主机双向通信功能,以采集温湿度传感器SHT30为实例,并将操作过程通过串口打印出来。

2 环境要求

  • Board: PAN2628b1_evb

  • Micro USB线两2根,一根用于程序下载,一根用于查看串口打印Log

  • 将 J13(P3_6)开关拔至SCL侧,将P3_6与SHT30芯片SCL相连

  • 将 J16(P3_7)开关拔至SDA侧,将P3_7与SHT30芯片SDA相连

  • 将 J19(P3_1) 开关拔至TX侧,将P3_1与uart的TX引脚相连

3 编译和烧录

例程位置:pan2628_dk\01_SDK\example_basic\i2c\i2c_sht30

打开目录下keil下的i2c_sht30.uvprojx工程,编译整个代码工程。

4 演示说明

根据环境要求一节的介绍,正确连接 EVB 开发板的跳线,编译、下载:

  1. 在电脑上打开串口调试工具,串口参数:115200/8bit/1stop/无校验

  2. 烧录程序后,观察串口打印的内容,看看是否有i2c sht30 read and write test.信息输出

  3. 观察是否有温湿度数据打印(数据内容根据实际情况在不断变化)

串口输出信息如下:

i2c sht30 read and write test.
temp is 27.86*C, hum is 37.52%

5 开发说明

通过调用 sht30.c 的SHT30_Init函数接口来完成sht30芯片的初始化,使用SHT30_ReadResult函数读取温湿度值。

 SHT30_Init();   /**< SHT30 initialise */

 printf("i2c sht30 read and write test.\r\n");
 
 while(1){
 	error = SHT30_ReadResult(&temp, &humi);
 	if(error == TRUE){
 		 printf("temp is %.2f*C, hum is %.2f%%\r\n", temp, humi);
 	}
 }

6 RAM/Flash资源使用情况

Program Size: data=42.1 xdata=8 const=73 code=4445