2.4G无线射频通信模块nRF24L01+开发笔记(基于MSP430RF6989)

根据网上的nRF24L01+例程和TI提供的MSP430RF6989的硬件SPI总线例程编写程序,对硬件MSP-EXP430RF6989 Launch Pad+nRF24L01P射频模块(淘宝购买)进行调试。

一、nRF24L01+初始化寄存器配置失败的原因(2015年12月20日)

1. SPI总线的配置要和配对设备一致,详见《MSP430中SPI总线的两种实现方式》。

2. 在nRF24L01+初始化寄存器配置的过程中,部分寄存器总出现写入失败(ENAA、RF_CH、CONFIG),保持缺省值的情况,而且情况不稳定,有时候可以成功。论坛里的网友反映是电源电压不稳造成的,为射频模块提供独立电源供电可以解决。

进一步测试发现,如果把CONFIG寄存器的配置放在其他nRF24L01+初始化寄存器配置之前,寄存器配置都可以成功,(林新华的《nRF24L01 试用实录》中的例程是这样的顺序,这样做功耗略大,但是并不明显)。研究Datasheet提供的nRF24L01+状态机发现,CONFIG寄存器不同于其他寄存器,它与CE信号可以共同控制nRF24L01+的工作模式。原参考例程中初始化配置的最后一步配置CONFIG使nRF24L01+工作在Standby-1模式下,而之前其他寄存器的配置都是在Power Down模式下完成的,而林新华例程的寄存器配置都是在Standby-1模式下完成的。由Datasheet可知,Power Down模式的工作电流是0.9uA,而Standby-1的模式工作电流是26uA。初步判断,在单片机和射频模块共用电源的情况下,Power Down模式的微弱工作电流极容易被单片机影响(或电源纹波本身影响),所以容易出现寄存器写入失败的情况。有待进一步在射频模块独立供电的状态下进行测试。

时间: 2024-10-15 02:31:08

2.4G无线射频通信模块nRF24L01+开发笔记(基于MSP430RF6989)的相关文章

RF无线射频电路设计干货分享

1.概述:射频(RF)PCB设计,在目前公开出版的理论上具有很多不确定性,常被形容为一种"黑色艺术".通常情况下,对于微波以下频段的电路(包括低频和低频数字电路),在全面掌握各类设计原则前提下的仔细规划是一次性成功设计的保证.对于微波以上频段和高频的PC类数字电路.则需要2~3个版本的PCB方能保证电路品质.而对于微波以上频段的RF电路,则往往需要更多版本的:PCB设计并不断完善,而且是在具备相当经验的前提下.由此可知RF电路设计上的困难. 数字电路模块和模拟电路模块之间的干扰 如果模

SimpliciTI开发笔记(中文版)

1.简介 此文件为有效使用SimpliciTI协议支持提供必要的信息.文中频繁地提到源代码文件,是因为源代码提供了这种支持. ? 在无线电使用的具体实施中,会有一些差别.参考中提到的固件支持协议本身,而没有特定的硬件. 2.参考文献 (1)SimpliciTI规范,TI,2007 (2)SimpliciTI 频率捷变应用笔记,2008 (3)SimpliciTI API (4)SimpliciTI应用安全 (5)SimpliciTI应用指南 3.概述 SimpliciTI是一种基于点对点通信的协

ANDROID开发笔记(一)

manifest, 英['m?n?fest] vt. 显示,表明;证明;使显现 adj. 明白的,明显的 n. 货单,旅客名单 wrap_content, 根据实际内容调整   原来新版的ADB已经支持无线连接了,这样对于我经常使用ADB安装软件的用户可谓是一大福音,这意味着91助手.腕豆夹这类的软件估计在不久的将来也能支持这个功能了,当然前提是你必须下载ADB(PC)软件,另外在手机侧你需要安装一款ADB wireless widget这个插件.使用方法: 1. 先在手机上执行adb wire

安卓开发笔记——自定义广告轮播Banner(无限循环实现)

关于广告轮播,大家肯定不会陌生,它在现手机市场各大APP出现的频率极高,它的优点在于"不占屏",可以仅用小小的固定空位来展示几个甚至几十个广告条,而且动态效果很好,具有很好的用户"友好性",下面来看几个示例图:     再来看下我仿写的效果: 关于广告轮播Banner这个东西,GitHub上面应该有现成的开源组件,不过我没去找过,觉得实现起来不会太难,就自己去仿写了,下面我说下实现的思路: 1.首先看到这个可以滑动切换图片的界面,我们很自然就会想到ViewPager

Android开发笔记(一百一十七)app省电方略

电源管理PowerManager PowerManager是Android的电源管理类,用于管理电源操作如睡眠.唤醒.重启以及调节屏幕亮度等等. PowerManager的对象从系统服务POWER_SERVICE中获取,它的主要方法如下: goToSleep : 睡眠,即锁屏. wakeUp : 唤醒,即解锁. reboot : 重启. 另有下列几个隐藏的方法: getMinimumScreenBrightnessSetting : 获取屏幕亮度的最小值. getMaximumScreenBri

Android开发笔记(一百零六)支付缴费SDK

第三方支付 第三方支付指的是第三方平台与各银行签约,在买方与卖方之间实现中介担保,从而增强了支付交易的安全性.国内常用的支付平台主要是支付宝和微信支付,其中支付宝的市场份额为71.5%,微信支付的市场份额为15.99%,也就是说这两家垄断了八分之七的支付市场(2015年数据).除此之外,还有几个app开发会用到的支付平台,包括:银联支付,主要用于公共事业缴费,如水电煤.有线电视.移动电信等等的充值:易宝支付,主要用于各种报名考试的缴费,特别是公务员与事业单位招考:快钱,被万达收购,主要用于航空旅

[Openwrt 项目开发笔记]:Openwrt平台搭建(一)

最近开始着手进行Openwrt平台的物联网网关设计,思路有些乱,通过笔记的方式进行记录和整理. 声明: 在本文中,有些内容摘自网上,我进行了整合,因此出处不明,在此对原文作者致歉! -----------------------------------------------------(分割线)------------------------------------------------------- 一. 选择Openwrt平台的理由 传统的路由器固件是由官方提供的.这些固件是不开源的,而

张高兴的 Windows 10 IoT 开发笔记:RTC 时钟模块 DS3231

原文:张高兴的 Windows 10 IoT 开发笔记:RTC 时钟模块 DS3231 GitHub:https://github.com/ZhangGaoxing/windows-iot-demo/tree/master/DS3231 注意:不包含闹钟设置

Android开发笔记(一百零三)地图与定位SDK

集成地图SDK 国内常用的地图SDK就是百度和高德了,二者的用法大同小异,可按照官网上的开发指南一步步来.下面是我在集成地图SDK时遇到的问题说明: 1.点击基本地图功能选项,不能打开地图,弹出"key验证出错!请在AndroidManifest.xml文件中检查key设置的"的红色字提示.查看日志提示"galaxy lib host missing meta-data,make sure you know the right way to integrate galaxy&