微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > nRF905实现无线加速度测量系统

nRF905实现无线加速度测量系统

时间:09-28 来源:互联网 点击:

I同步串行口已作为与LIS331DL的通信接口,为充分利用C8051F310的引脚资源,取C8051F310的P1.0,P1.1,P1.2和P1.3四个IO口组成一个模拟SPI串口与nRF905的SPI口相连接,数据采用单字节逐次移位的方式进行传输。

C8051F31O作为SPI主机,nRF905作为从机。主机在P1.0引脚提供主机模拟SPI时钟,P1.1引脚作为主机模拟MISO线,P1.2引脚作为主机模拟MOSI线,P1.3引脚作为从机SPI片选线。主机通过此模拟SPI串行口在配置模式下对从机相关寄存器进行配置;在RF发射和接受模式下进行发射数据的传送和接收数据的读取。nRF905的工作状态接口由CD,AM和DR组成;工作模式控制引脚由PWR,TRX和TX组成,C8051F310通过P1.4,P1.5和P1.6来设置nRF905的工作模式,具体模式设置如表1所示。

进入ShockBurst RX模式650μs后,nRF905不断检测,等待接收数据。当检测到同一频段的载波时,载波检测引脚CD被置高,当接收到一个相匹配的地址,地址检测引脚AM被置高,当一个正确的数据包接收完毕,nRF905自动移去字头、地址和CRC校验位,然后将DR引脚置高,通知MCU读取数据,数据读取完毕DR引脚置低。

当有数据要发送时,MCU按时序将接收机的地址和要发送的数据传送给nRF905,SPI接口速率在通信协议和器件配置时确定。进入Shock Burst TX模式650us后,射频寄存器自动开启,进行数据打包(加字头和CRC校验码),发射数据包。当数据发射完成,DR引脚置高通知MCU数据已成功发送。

3 软件设计

软件采用结构化程序设计方法,由主程序和各任务子程序组成。系统上电后,C8051F310完成对自身、LIS331DL传感器和射频收发器nRF905的初始化设,根据键值电平高低来决定是否进入工作状态。

在从机进入工作状态后,C8051F310通过SPI同步串行口读取LIS331DL传感器X,Y和Z轴寄存器的值,根据三个数值求出加速度值,然后将该数值连同主机地址一起通过模拟SPI口传给nRF905,由其自动完成数据的发送;主机进入工作状态后不断检测有效载波,当携带有效数据的载波出现后,nRF905自动完成去除数据包中的地址、CRC校验位和加速度数据的提取操作,此操作完成后通知C8051F310读取数据直至数据读取完毕,C8051F310将数据先在LCD1602液晶显示器中进行显示,然后通过RS232将数据保存到PC机,系统程序流程如图5所示。

4 系统调试

在旋转试验台上进行系统的测试。试验方案为:从机固定在距旋转台中心一定距离处,通过调整转台的转速来获得不同的法向加速度,从机对法向加速度进行测量,测量结果以射频方式传给主机进行显示和保存。该系统在试验中运行可靠,测量结果准确性高,由于采用数字式射频传输方式使数据传输误码率极低。原理样机如图6所示。

5 结论

采用无线数字传输方式避免了传输导线的内阻和杂散分布电容、环境温度、电磁干扰等影响,尤其适合于复杂环境下运动物体加速度的测量。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top