This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430F4152单片机IO口采样温湿度数据,IO口该如何配置

Other Parts Discussed in Thread: MSP430F4152

MSP430F4152单片机IO口采样温湿度数据,IO口该如何配置

代码如下:

  

char* Temp_hum_Collection(void)
{
int i=0,k=0,j=0;
MODEL_I0=1; //设为IO口模式
TEMP_DIR =1;//先将引脚拉高设为输出
TEMP_DIR_OUT =1;//输出高电平
TEMP_DIR_OUT =0;//电平拉低
DelayMs(20); //延时20ms确保DHT11能够检测到起始信号
TEMP_DIR_OUT =1;
DelayUs(40);//延时30us,等待读取DHT11的响应信号

TEMP_DIR=0; //将引脚拉低设为输入
if(TEMP_DIR_IN==0)//判断DTH11有没有发来响应信号
{
//while(TEMP_DIR_IN==1);
DelayUs(80);
while(TEMP_DIR_IN==0);
if(TEMP_DIR_IN==1)
{
DelayUs(80);
while(TEMP_DIR_IN==1);
for(j=0;j<40;j++)
{
if(TEMP_DIR_IN==0)
{
while(i<5)
{
DelayUs(10);
i++;
}
while(TEMP_DIR_IN==1);
if(TEMP_DIR_IN==1)
{
while(TEMP_DIR_IN==1)
{
DelayUs(2);
k++;
}
if((13<=k)&&(k<=14))
{
TempHumData[j]=0;
}
if(k>=35)
{
TempHumData[j]=1;
}
}
}
}
}
}
return TempHumData;
}