资源简介
项目中用到的程序,稳定可靠,由官方源码改写,模拟I2C,改好IO口直接就能驱动。初始化的时候调用 SHT3X_Init(0x44);(地址看自己硬件0x44或45)即可。官方源码的各种模式都保留了,省事的话直接用SHT3X_getHumidityTemperature函数就是最简单的获取温湿度到&temperature, &humidity。

代码片段和文件信息
//=============================================================================
// S E N S I R I O N AG Laubisruetistr. 50 CH-8712 Staefa Switzerland
//=============================================================================
// Project : SHT3x Sample Code (V1.1)
// File : sht3x.c (V1.1)
// Author : RFU
// Date : 6-Mai-2015
// Controller: STM32F100RB
// IDE : 礦ision V5.12.0.0
// Compiler : Armcc
// Brief : Sensor layer: Implementation of functions for sensor access.
//=============================================================================
//-- Includes -----------------------------------------------------------------
#include “sht3x.h“
#include “gpio.h“
extern float tem_temp_displayftem_humi_displayf;
//-- Defines ------------------------------------------------------------------
// Generator polynomial for CRC
//-- Defines ------------------------------------------------------------------
// Generator polynomial for CRC
#define POLYNOMIAL 0x131 // P(x) = x^8 + x^5 + x^4 + 1 = 100110001
//=============================================================================
// IO-Pins /* -- adapt the defines for your uC -- */
//-----------------------------------------------------------------------------
// Reset on port B bit 12
#define RESET_LOW() LED_GREEN_ON// set Reset to low
#define RESET_HIGH() LED_GREEN_OFF // set Reset to high
// Alert on port B bit 10
#define ALERT_READ // read Alert
//=============================================================================
//-- Global variables ---------------------------------------------------------
static u8t _i2cAddress; // I2C Address
//-- Static function prototypes -----------------------------------------------
static etError SHT3X_WriteAlertLimitData(ft humidity ft temperature);
static etError SHT3X_ReadAlertLimitData(ft* humidity ft* temperature);
static etError SHT3X_StartWriteAccess(void);
static etError SHT3X_StartReadAccess(void);
static void SHT3X_StopAccess(void);
static etError SHT3X_WriteCommand(etCommands command);
static etError SHT3X_Read2BytesAndCrc(u16t* data etI2cAck finaleAckNack
u8t timeout);
static etError SHT3X_Write2BytesAndCrc(u16t data);
static u8t SHT3X_CalcCrc(u8t data[] u8t nbrOfBytes);
static etError SHT3X_CheckCrc(u8t data[] u8t nbrOfBytes u8t checksum);
static ft SHT3X_CalcTemperature(u16t rawValue);
static ft SHT3X_CalcHumidity(u16t rawValue);
static u16t SHT3X_CalcRawTemperature(ft temperature);
static u16t SHT3X_CalcRawHumidity(ft humidity);
//=============================================================================
// IO-Pins /* -- adapt the defines for your uC -- */
//-----------------------------------------------------------------------------
// Reset on port B bit 12
//#define RESET_LOW() (GPIOB->BSRR = 0x10000000) // set Reset to
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 32725 2020-01-15 14:23 sht3x\sht3x.c
文件 16793 2020-01-15 14:24 sht3x\sht3x.h
目录 0 2020-01-15 14:29 sht3x\
相关资源
- 用DIO 做的I2C程式
- I2C总线接口设计
- 8051F040SMBUS多机通信
- DHT10_I2C驱动.zip
- I2C串行EEPROM应用系统的健壮性设计
- 电子-GravityI2C3.7V锂电池电量计stm32L1
- arduino主机,stm8从机。I2C测试 。每次
- 10位ADC转换器AD5612(stm32_IO口模拟I2C)
- (带有源代码)基于FPGA的模拟I2C接口
- 基于STM32F103ZE的STH3x温湿度传感器代码
- I2C-verilog-(非常详细的i2c学习心得)
- stm32f103iic读取AT24XX全系eeprom
- 分享一个0.96的oled显示驱动,软件模拟
- DAC8571_I2C模式_STM32
- STM32F4 I2C从机中断
- ADS1110stm32驱动自带I2C驱动
- STM32F103C8 例程
- stm32 I2C主从机模式控制代码
- 基于STM32F103硬件I2C读写24Cxx驱动代码的
- Ginkgo_USB-I2C_Classic_Setup_v2.9.2.zip
- I2C从设备接收数据verilog代码实现
- CH341-I2C-labview-应用说明+VI-所有版本都
- Delphi2CPP 和注册机
- STM32_MPU6050DMP硬件I2C读取欧拉角
- 基于FPGA的EEPROM读写系统
- 用stm32硬件I2C和模拟I2C读写EEPROM
- 利用STM32硬件I2C使用加速度传感器AD
- STM32与HTU21的I2C通讯源码
- stm32f103硬件I2C主从通信
- sht20 程序
评论
共有 条评论