@这是第一次写博客哦~~
下位机数据发送程序片段
说明:下位机数据的采集主要是两个温度传感器与两个湿度传感器进行,数据采集完通过下列片段进行发送六个字节数据
代码如下
**while(1){
if(n % 10 == 0){//100ms读一次
Get_Ds1Value();//读18B20
Get_Ds2Value();//读18B20 value = temp * 0.0625
Dh1_ReadData(&dumi1); //读DHT11
Dh2_ReadData(&dumi2); //读DHT11
}
delay_ms(10);//10ms
n++;
if(n == 50){//500ms发送一次数据
n = 0;
GPIO_IF_LedToggle(MCU_RED_LED_GPIO);
SendDataBuffer[2]=dumi1;
SendDataBuffer[5]=dumi2;
for(i=0;i<6;i++)
UARTCharPut(UARTA1_BASE,SendDataBuffer[i]);
delay_ms(300);
}
}**
上位机蓝牙客户端接收
如图所示
把接收的六个字节数据拆分为四个值显示在UI上
接收的六个字节数据如:
AE 01 37 BE 01 45
该数据一二位和四五位组成温度值
三和六位是湿度值
用蓝牙客户端接受数组并把需要的数组拆分在显示在标签上,对于温度值第二位是高位,必须乘以16^2再加上第一位,既:
两位接收的的数据: AE 01
最后的值=AE+01*16*16
**有的还需要十六进制转换成十进制