android模拟量输入引脚,Android物联网应用 zigbee四输入模拟量的使用和编程 物联网设备2-四输入模拟量的使用.docx...

接线图

在本设备中,四输入模块是插在zigbee板上的,这里有两种方式来进行使用:

这里的zigbee板如果通过zigbee进行无线通信,可以通过和内置在网关中的协调器进行通信,从而在网关上进行无线数据获取。注意,此时这块zigbee板子需要刷写相应的传感器的hex文件。

如果不通过zigbee进行通信,那么直接通过其串口获取数据。黑色zigbee板子下面是由rs232串口。这个直接通过串口线连接在电脑串口或者平板串口进行串口编程。注意,此时这块zigbee板子需要刷写相应的四通道独立的hex文件。我们这里主要描述的是这种方式。

刷写hex文件

使用CC Debugger通过USB数据线与计算机相连,通过10线的排线与CC2530实验板的调试接口相连。在与CC2530实验板相连时,要注意要让排线的1脚对应实验板上调试接口的1脚,即排线上的三角箭头要与实验板上的白色三角箭头对齐。

运行桌面上已经安装好了的SmartRF Flash Programmer,选择System-on-Chip选项卡,对实验板供电,按下CC Debugger上面的复位按钮,此时可以看到SmartRF Flash Programmer的设备列表区先生当前连接的单片机的信息,如下图所示。

单击Flash Image的选择按钮…,选择要烧写的下位机程序文件,这里由于只使用其板子上的串口,所以烧写四通道独立采集模块中的hex文件(这个文件在D:\software\感知层套件资料\02驱动\02zigee烧写文件夹中)。

单击下方的Perform actions按钮,开始对CC2530进行编程,动作过程中会有执行进度条显示,完成如下图:

由于这里无需组网,所以不需要运行配置参数软件。

通过串口调试助手了解数据格式

zigbee上传传感器数据为:

HEAD + LEN + CMD0 + CMD1 + ADRL + ADRH + DTYPEL+ DTYPEH + DLEN + REV +[SDATA] + CHK

HEAD:数据头, 固定为 0xfe

LEN:数据包长度, ADRL 开始到 CHK 前一个字节的字节数

CMD0:命令类型, 固定为 0x46

CMD1:命令类型, 固定为 0x87

ADRL:传输信息源节点的短地址低 8 位

ADRH:传输信息源节点的短地址高 8 位

DTYPEL:数据类型低位, 固定为 0x02

DTYPEH:数据类型高位, 固定为 0x00

DLEN: [SDATA] 的长度

REV:保留,固定为 0x00

SDATA:传感器发送的数据包,多字节

CHK:校验码,从 LEN 开始到 CHK 前一个字节的所有字节依次按字节异或的值

其中SDATA构成具体为:INTEMP + INVOL + PARADRL+ PARADRH + [SENSORDATA]

INTEMP: 内部温度

INVOL:内部电压

PARADRL:父节点短地址低字节

PARADRH:父节点短地址高字节

SENSORDATA:传感数据,多字节,允许没有,具体如下:

SENSORDATA传感数据的格式:LGTYPE+ SORL + SORH+ STYPE + SORDATA

LGTYPE: 逻辑类型,01---路由; 02---全功能节点;03---终端节点;

SORL: 传感器编号低位

SORH: 传感器编号高位

STYPE:传感器类型,具体见下表

SORDATA:传感数值,多字节, 具体见下表

从上面的分析可以看出,四输入模拟量通过串口,上传上来的数据的第18个字节为STYPE,应该是0x30,之后的第19、20字节应该是接线图中In1中的光照值,第21、22字节是接线图中的IN2中的温度值,第23、24字节是接线图中的In3中的湿度值。当然这些两字节的值还需要通过表格后面的相应公式转换为电流值,然后通过相应的量程转换为对应的实际值。

注意:通过串口调试助手观察这些数据时,需要选择波特率为38400

Android上的编程

方法一:使用厂商提供的类库

和以前的4150一样,加载libs,里面有相应的so文件和jar文件,配置androidstuido中的相关内容:

android{

……

sourceSets {

main {

jniLibs.srcDirs = ['libs']

}

}

}

编程中可以参考pdf中的jar文档。

这里可以给出一部分代码:

// 打开ZigBee串口和线程

public void openZigBee() {

int com = -1;

//打开串口 com代表设备com口,mode为接入模式 0为串口接入 1=usb接入,baudRate=波特率(波

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值