用51单片机采集温湿度传感器SHT11的数据,遇到问题
用51单片机采集温湿度传感器SHT11的数据,用串口发给上位机,接上传感器能正常采集数据,但是不接传感器上位机就没有数据返回,怎么个情况?我单步调试倒是能运行到串口函数哪里,也能通过;;;;下面的函数都是网上一搜一大片的,此处函数体略掉/*=========================================
启动函数
=========================================*/
void init_SHT()
{}
/*=========================================
字节传送函数
=========================================*/
uchar write_byte(uchar value)
{
}
/*=========================================
读数据函数
=========================================*/
uchar read_byte(uchar dat)
{
}
/*=========================================
复位函数
=========================================*/
void reset_SHT()
{
}
/*=========================================
发送指令到SHT11执行温度和湿度的测量转换
=========================================*/
void convert_SHT(SHT_dat *s,uchar mode)
{
}
/*=========================================
温度和湿度补偿及输出温度值和相对湿度值
=========================================*/
void caculation_SHT(SHT_dat *s)
{
}
//将得到的数据以十六进制数发送出去
void float_convert(SHT_dat *s)
{
float com;
uint dat;
com=s->temperature;
com*=100;
dat=(uint)com;
s->num_temp=dat/256;
s->num_temp=dat%256;
com=s->humidity;
com*=100;
dat=(uint)com;
s->num_humi=dat/256;
s->num_humi=dat%256;
}
void main(void)
{
SHT_dat aa; //定义温湿度测量处理结构体
uchar wenshi1=0;
INIT_Time0();
WDTInit();
while(1)
{
WDT(); //喂狗
convert_SHT(&aa,TEMP); //温度转换
convert_SHT(&aa,HUMI); //湿度转换
caculation_SHT(&aa); //温度和湿度的补偿
float_convert(&aa); //将浮点数转换成整型,各个位的数分别保存
if(Flag_Time1>200)//1s执行一次
{
Flag_Time1 = 0;
TxBuf=aa.num_temp;
TxBuf=aa.num_temp;
TxBuf=aa.num_humi;
TxBuf=aa.num_humi;
Tx_Buf(TxBuf,6);
}
}
}
单步调试完全可以运行到Tx_Buf(TxBuf,6);
程序里面有检测上位机把, 程序运行时PC是要给应答信号的 魏道志 发表于 2015-5-9 16:13
程序运行时PC是要给应答信号的
PC给应答信号?您有完整的程序吗?分享一下吧
页:
[1]