MSP430单片机与nRF905无线通信系统设计
}RFConfig;
RFConfig RxTxConf=
{
10,
0x01, 0x0c, 0x44, 0x20, 0x20, 0xcc,
0xcc, 0xcc, 0xcc, 0x58
};
nRF905提供SPI口的读写指令,当CSN为低时,SPI接口开始等待一条指令,任何一条新指令均由CSN的由高到底的转换开始。下面主要介绍nRF905的发送流程和接收流程。
发送流程:
A.当微控制器有数据要发送时,通过SPI接口,按时序把接收机的地址和要发送的数据送传给nRF905,SPI接口的速率在通信协议和器件配置时确定;
B.微控制器置高TRX_CE和TX_EN,激发nRF905的ShockBurstTM发送模式;
C.nRF905的ShockBurstTM发送:射频寄存器自动开启;数据打包(加字头和CRC校验码);发送数据包;当数据发送完成,数据准备好引脚被置高;
D.当TRX_CE被置低,nRF905发送过程完成,自动进入空闲模式。
ShockBurstTM工作模式保证,一旦发送数据的过程开始,无论TRX_EN和TX_EN引脚是高或低,发送过程都会被处理完。只有在前一个数据包被发送完毕,nRF905才能接受下一个发送数据包。
接收流程:
A.当TRX_CE为高、TX_EN为低时,nRF905进入ShockBurstTM接收模式;
B.650us后,nRF905不断监测,等待接收数据;
C.当nRF905检测到同一频段的载波时,载波检测引脚被置高;
D.当接收到一个相匹配的地址,地址匹配引脚被置高;
E.当一个正确的数据包接收完毕,nRF905自动移去字头、地址和CRC校验位,然后把数据准备好引脚置高
F.微控制器把TRX_CE置低,nRF905进入空闲模式;
G.微控制器通过SPI口,以一定的速率把数据移到微控制器内;
H.当所有的数据接收完毕,nRF905把数据准备好引脚和地址匹配引脚置低;
I.nRF905此时可以进入ShockBurstTM接收模式、ShockBurstTM发送模式或关机模式。
MSP430F149的串口通讯程序设计,主要是设定传输的速率为4800bps,数据传输为8位数,1个停止位,无奇偶校验。根据相应的发送端和接收端来设定发送模块和接收模块使能,发送中断和接收中断使能。
在PC机软件设计中,串口通信模块负责PC机与下位机之间的数据通信。而主界面和数据库设计主要是方便对接收的数据进行管理。
实验测试分析
在发送和接收时利用示波器和万用表对nRF905的相关引脚进行测量分析如下:
发射时nRF905的分析情况如表1所示。
接收时nRF905的分析情况如表2所示。
结语
本设计实现了基于MSP430F149和nRF905的无线通信。发送端和接收端之间的距离为80米,之间没有任何有线连接,通过发送端发送数据,在接收端能正确接收数据并显示在PC机上。实验表明,该系统实时性好,性能可靠。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码