91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .zip
    金幣: 2
    下載: 1 次
    發(fā)布日期: 2021-05-23
  • 語言: 其他
  • 標簽: SHT20??SHT21??SMT32驅動??

資源簡介

基于官方的例程,移植到STM32F103,采用查詢方式,間隔500ms讀一次,溫度和濕度輪流讀取,注意SDA連接IO口配置為OD開漏輸出

資源截圖

代碼片段和文件信息

#define?_C_SHT20Drv
#include?“stm32f1xx_hal.h“
#include?“DataDef.h“
#include?“SHT20Drv.h“

//==============================================================================
void?I2c_StartCondition?()
//==============================================================================
{
??/*
??SDA=HIGH;
??SCL=HIGH;
??SDA=LOW;
??DelayMicroSeconds(10);??//?hold?time?start?condition?(t_HD;STA)
??SCL=LOW;
??DelayMicroSeconds(10);
??*/
??SHT20_SDA(1);
??SHT20_SCL(1);
??SHT20_SDA(0);
??DelayMicroSeconds(10);
??SHT20_SCL(0);
??DelayMicroSeconds(10);
}
//==============================================================================
void?I2c_StopCondition?()
//==============================================================================
{
??/*
??SDA=LOW;
??SCL=LOW;
??SCL=HIGH;
??DelayMicroSeconds(10);??//?set-up?time?stop?condition?(t_SU;STO)
??SDA=HIGH;
??DelayMicroSeconds(10);
??*/
??SHT20_SDA(0);
??SHT20_SCL(0);
??SHT20_SCL(1);
??DelayMicroSeconds(10);
??SHT20_SDA(1);
??DelayMicroSeconds(10);
??
}

//==============================================================================
u8?I2c_WriteByte?(u8?txByte)
//==============================================================================
{
??u8?maskerror=0;
??for?(mask=0x80;?mask>0;?mask>>=1)???//shift?bit?for?masking?(8?times)
??{?if?((mask?&?txByte)?==?0)?SHT20_SDA(0);//SDA=LOW;//masking?txByte?write?bit?to?SDA-Line
????else?SHT20_SDA(1);//SDA=HIGH;
????DelayMicroSeconds(1);?????????????//data?set-up?time?(t_SU;DAT)
????SHT20_SCL(1);//SCL=HIGH;?????????????????????????//generate?clock?pulse?on?SCL
????DelayMicroSeconds(5);?????????????//SCL?high?time?(t_HIGH)
????SHT20_SCL(0);//SCL=LOW;
????DelayMicroSeconds(1);?????????????//data?hold?time(t_HD;DAT)
??}
??SHT20_SDA(1);//SDA=HIGH;???????????????????????????//release?SDA-line
??SHT20_SCL(1);//SCL=HIGH;???????????????????????????//clk?#9?for?ack
??DelayMicroSeconds(1);???????????????//data?set-up?time?(t_SU;DAT)
??//if(SDA_CONF==HIGH)?error=ACK_ERROR;?//check?ack?from?i2c?slave
??if(SHT20_SDA_Read)?error=?ACK_ERROR;
??SHT20_SCL(0);//SCL=LOW;
??DelayMicroSeconds(20);??????????????//wait?time?to?see?byte?package?on?scope
??return?error;???????????????????????//return?error?code
}
//==============================================================================
u8?I2c_ReadByte?(etI2cAck?ack)
//==============================================================================
{
??u8?maskrxByte=0;
??SHT20_SDA(1);//SDA=HIGH;???????????????????????????//release?SDA-line
??for?(mask=0x80;?mask>0;?mask>>=1)???//shift?bit?for?masking?(8?times)
??{?SHT20_SCL(1);//SCL=HIGH;?????????????????????????//start?clock?on?SCL-line
????DelayMicroSeconds(1);?????????????//data?set-up?time?(t_SU;DAT)
????DelayMicroSeconds(3);?????????????//SCL?high?time?(t_HIGH)
????//if?(SDA_CONF==1)?rxByte=(rxByte?|?mask);?//read?bit
????if?(SHT20_SDA_Read)?rxByte=(rxByte?|?mask);
????SHT20_SCL(0);//SCL=LOW;
????DelayM

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????10445??2016-07-20?11:57??SHT20Drv.c
?????文件????????2847??2016-07-20?12:31??SHT20Drv.h

評論

共有 條評論