• 大小: 457KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-17
  • 语言: 其他
  • 标签: SHT31  

资源简介

STM32F103读SHT31温湿度传感器代码,实测可用,采用MDK5.4编译器

资源截图

代码片段和文件信息

//=============================================================================
//    S E N S I R I O N   AG  Laubisruetistr. 50 CH-8712 Staefa Switzerland
//=============================================================================
// Project   :  SHT3x Sample Code (V1.1)
// File      :  i2c_hal.c (V1.1)
// Author    :  RFU
// Date      :  6-Mai-2015
// Controller:  STM32F100RB
// IDE       :  礦ision V5.12.0.0
// Compiler  :  Armcc
// Brief     :  I2C hardware abstraction layer
//=============================================================================

//-- Includes -----------------------------------------------------------------
#include “i2c_hal.h“

//-- Defines ------------------------------------------------------------------
// I2C IO-Pins                        /* -- adapt the defines for your uC -- */

// SDA on port B bit 7
#define SDA_LOW()  (GPIOB->BSRR = 0x00800000) // set SDA to low
#define SDA_OPEN() (GPIOB->BSRR = 0x00000080) // set SDA to open-drain
#define SDA_READ   (GPIOB->IDR  & 0x0080)     // read SDA

// SCL on port B bit 6              /* -- adapt the defines for your uC -- */
#define SCL_LOW()  (GPIOB->BSRR = 0x00400000) // set SCL to low
#define SCL_OPEN() (GPIOB->BSRR = 0x00000040) // set SCL to open-drain
#define SCL_READ   (GPIOB->IDR  & 0x0040)     // read SCL

//-- Static function prototypes -----------------------------------------------
static etError I2c_WaitWhileClockStreching(u8t timeout);

//-----------------------------------------------------------------------------
void I2c_Init(void)                      /* -- adapt the init for your uC -- */
{
  RCC->APB2ENR |= 0x00000008;  // I/O port B clock enabled
  
  SDA_OPEN();                  // I2C-bus idle mode SDA released
  SCL_OPEN();                  // I2C-bus idle mode SCL released
  
  // SDA on port B bit 14
  // SCL on port B bit 13
GPIOB->CRL&=0X00FFFFFF; //PB6/7 推挽输出
GPIOB->CRL|=0X55000000;    
}

//-----------------------------------------------------------------------------
void I2c_StartCondition(void)
{
  SDA_OPEN();
  DelayMicroSeconds(1);
  SCL_OPEN();
  DelayMicroSeconds(1);
  SDA_LOW();
  DelayMicroSeconds(10);  // hold time start condition (t_HD;STA)
  SCL_LOW();
  DelayMicroSeconds(10);
}

//-----------------------------------------------------------------------------
void I2c_StopCondition(void)
{
  SCL_LOW();
  DelayMicroSeconds(1);
  SDA_LOW();
  DelayMicroSeconds(1);
  SCL_OPEN();
  DelayMicroSeconds(10);  // set-up time stop condition (t_SU;STO)
  SDA_OPEN();
  DelayMicroSeconds(10);
}

//-----------------------------------------------------------------------------
etError I2c_WriteByte(u8t txByte)
{
  etError error = NO_ERROR;
  u8t     mask;
  for(mask = 0x80; mask > 0; mask >>= 1)// shift bit for masking (8 times)
  {
    if((mask & txByte) == 0) SDA_LOW(); // masking txByte write bit to SDA-Line
    else                     SDA_OPEN();

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2047  2017-11-23 15:41  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\DebugConfig\STM32-Discovery_STM32F100RB_1.0.0.dbgconf

     文件        339  2019-02-20 11:47  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\EventRecorderStub.scvd

     文件     241595  2019-02-19 15:19  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\i2c_hal.crf

     文件        650  2019-02-19 15:19  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\i2c_hal.d

     文件     259232  2019-02-19 15:19  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\i2c_hal.o

     文件     245349  2019-02-20 11:51  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\JlinkLog.txt

     文件        755  2019-02-19 17:10  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\JlinkSettings.ini

     文件     245993  2019-02-20 11:46  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\main.crf

     文件        640  2019-02-20 11:46  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\main.d

     文件     261212  2019-02-20 11:46  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\main.o

     文件        241  2015-05-07 22:24  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\Readme.txt

     文件        363  2019-02-19 15:07  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\RTE\_STM32-Discovery\RTE_Components.h

     文件     252776  2019-02-19 17:12  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\sht3x.crf

     文件        653  2019-02-19 17:12  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\sht3x.d

     文件     276188  2019-02-19 17:12  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\sht3x.o

     文件      44048  2019-02-20 11:46  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.axf

     文件       1761  2019-02-20 11:47  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.build_log.htm

     文件      68264  2019-02-20 11:46  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.htm

     文件        334  2019-02-20 11:46  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.lnp

     文件      69450  2019-02-20 11:46  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.map

     文件        479  2019-02-19 15:07  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.sct

    .......    169185  2019-02-19 18:03  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.uvguix.victor

     文件       9776  2015-05-07 22:24  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.uvopt

    .......      9362  2019-02-19 18:03  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.uvoptx

     文件      16124  2015-05-07 22:24  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.uvproj.saved_uv4

    .......     15250  2019-02-19 17:12  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode.uvprojx

     文件       4526  2019-02-20 11:47  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_SampleCode_STM32-Discovery.dep

     文件      13466  2015-05-07 22:24  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\SHT3x_Samplecode_Structure.pdf

     文件       5661  2019-02-19 15:19  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\Source\i2c_hal.c

     文件       2922  2015-05-07 22:24  Sensirion_Humidity_Sensors_SHT3x_Sample_Code\Source\i2c_hal.h

............此处省略21个文件信息

评论

共有 条评论