App Inventor之蓝牙接收多字节数据

@这是第一次写博客哦~~

下位机数据发送程序片段

说明:下位机数据的采集主要是两个温度传感器与两个湿度传感器进行,数据采集完通过下列片段进行发送六个字节数据

代码如下

**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);
		}
    }**

上位机蓝牙客户端接收

App Inventor之蓝牙接收多字节数据_第1张图片
如图所示
把接收的六个字节数据拆分为四个值显示在UI上
接收的六个字节数据如:

AE 01 37 BE 01 45

该数据一二位和四五位组成温度值
三和六位是湿度值

App Inventor之蓝牙接收多字节数据_第2张图片
用蓝牙客户端接受数组并把需要的数组拆分在显示在标签上,对于温度值第二位是高位,必须乘以16^2再加上第一位,既:

两位接收的的数据:  AE 01
最后的值=AE+01*16*16

**有的还需要十六进制转换成十进制

************第一次分享压力好大。。。。。

你可能感兴趣的:(上位机开发,AppInventor,蓝牙)