• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32f103驱动sht20得到的温度不变化始终128

lichangle 2018-06-23 浏览量:1539
#define SHT2x_I2C_PORT          GPIOA
#define SHT2x_SCL_PIN           GPIO_Pin_6        //6
#define SHT2x_SDA_PIN           GPIO_Pin_7        //7
#define SHT2x_SCL_HIGH()        GPIO_SetBits(SHT2x_I2C_PORT SHT2x_SCL_PIN)
#define SHT2x_SCL_LOW()         GPIO_ResetBits(SHT2x_I2C_PORT SHT2x_SCL_PIN)
#define SHT2x_SDA_HIGH()             GPIO_SetBits(SHT2x_I2C_PORT SHT2x_SDA_PIN)
#define SHT2x_SDA_LOW()         GPIO_ResetBits(SHT2x_I2C_PORT SHT2x_SDA_PIN)
#define SHT2x_SCL_STATE()       GPIO_ReadInputDataBit(SHT2x_I2C_PORT SHT2x_SCL_PIN)
#define SHT2x_SDA_STATE()       GPIO_ReadInputDataBit(SHT2x_I2C_PORT SHT2x_SDA_PI
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB  ENABLE);
void SHT2x_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB  ENABLE);
    GPIO_InitStructure.GPIO_Pin =  SHT2x_SCL_PIN | SHT2x_SDA_PIN;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(SHT2x_I2C_PORT &GPIO_InitStructure);
    SHT2x_SCL_HIGH();
    SHT2x_SDA_HIGH();
    SHT2x_Delay(80);
    SHT2x_SoftReset();

}

如上代码 请问是哪里的问题?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 这个只是初始化的代码,并没有协议部分的代码,也没有数据处理的代码,真是看不出来问题。

    可能你的数据处理有问题吧。或是协议问题了

    • 发布于 2018-06-25
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:2
  • 这个代码目前没有发现问题,要看看你的驱动代码是不是跟驱动时序对应,还要检查一下你的寄存器是不是写入正确
    • 发布于2018-06-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 主要检查一下你的adc时钟是不是已经打开,数据的处理是否正确
    • 发布于2018-07-19
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32f103驱动sht20得到的温度不变化始终128