nrf905参考程序参考教程包含多个实例和解释

nrf905参考程序参考教程包含多个实例和解释

ID:29619724

大小:4.65 MB

页数:51页

时间:2018-12-21

nrf905参考程序参考教程包含多个实例和解释_第1页
nrf905参考程序参考教程包含多个实例和解释_第2页
nrf905参考程序参考教程包含多个实例和解释_第3页
nrf905参考程序参考教程包含多个实例和解释_第4页
nrf905参考程序参考教程包含多个实例和解释_第5页
资源描述:

《nrf905参考程序参考教程包含多个实例和解释》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、NRF905程序参考教程。本资料主要是将程序中各部分子程序的功能与NRF905的手册相关联,使得各位同仁在每个子程序为什么这么写都在手册中找到具体的体现,特别是寄存器配置。内涵完整参考程序,是100%可用程序。硬件的连接方法在参考程序之后,并介绍原理。本人最后只是为了提供给大家一个入门的资料或是引子罢了,至于如何应用的巧妙那是后期编程巧妙的结果,目前只是给刚进门的人士一个可以快速理解和掌握的浅显易懂的教程罢了。本人疏忽之处还请见谅。按照惯例先展示作品抛砖引玉:四路AD采集+温度采集彩屏显示信息数据GSM手机电话最近做的,音频功放四

2、路电机控制大功率led控制,不解释。以前做的,舵机和摄像头,不解释。更早先的,VGA显示,不解释。已发送为例子。1.通过spi接口把寄存器相应的值写到905中2.把要发的数据写到905中3.把状态设置成发送4.数据被发出那么操作905就主要是前三步的问题,那么请带个这前三个问题深入理解下面的相关解释了。无线通信模块的三个要素:Nrf905模式的配置Nrf905通过寄存器配置Nrf905需要spi通信配置寄存器先看模式配置:程序加解释PWR_UPTRX_CETX_EN操作模式0XX断电和SPI编程10X待机和SPI编程110射频接收

3、模式111射频发送模式根据这个图表,我们发觉有四种模式。捡重点的说实现收发功能有两种模式。这两种模式在程序段中的实现是:设置成接受模式,程序中没写PWR_UP,如果他是低电平就变成断电,所以个程序段默认PWR_UP为高电平。voidSetRxMode(void){TXEN=0;TRX_CE=1;Delay(1);//delayformodechange(>=650us)}设置发送模式,这里会有疑问,在于TRX_CE=0;。这里给出的解释是,如果我们直接写TRX_CE=1;这样模块立即将其内部所写好的数据发送出去。而对于编程的人员来

4、说编出的程序五花八门,就比如说这条,改程序员的意图并不想让设置发送模式时,数据就被立即发出,所以写了TRX_CE=0;。如果看后面的完整程序,你会发现在发送时,有TRX_CE=1;这一步。所以说,刚才那个图表没有问题。这里可以认为是准备发送模式,而不是发送模式,一旦TRX_CE=1;那么数据立即被发送。voidSetTxMode(void){TRX_CE=0;TXEN=1;Delay(1);//delayformodechange(>=650us)}关于图表中前两种模式中,实例程序所应用的是第二种,即待机spi编程模式。不管应用两

5、种的哪一种,都是为了spi编程(通过spi通信配置905寄存器)。那么给出这个模式的应用程序段:有这么做引脚赋予各种电平先不用管他,我们看到PWR=1;TRX_CE=0;TXEN=0;这三个,在待机spi模式中TXEN=x;即可以为任何值。说明现在是待机且spi编程模式。程序段中其他引脚功能罗列下:Csn:spi的有效与否的引脚,低电平有效。如果只是单纯的设置模式,该引脚并没用处,只是后期程序的编写,所以做下配置。Sck:spi的时钟,现在只是设置模式,还没开始spi通信,所以付个低电平。DR:数据是否准备好,现在没有什么可准备的

6、。AD,CD也是一样,等到spi通信的时候才需关系。这里做个引子吧。voidnRF905Init(void){CSN=1;//SpidisableSCK=0;//SpiclocklineinitlowDR=0;//InitDRforinputAM=0;//InitAMforinputCD=0;//InitCDforinputPWR=1;//nRF905poweronTRX_CE=0;//SetnRF905instandbymodeTXEN=0;//setradioinRxmode}Nrf905寄存器的配置配置905寄存器的意思是,

7、通过spi传输一个值,放入905的寄存器中,这个值可以让905传输数据时,产生各种你想要的效果,类似于你用手调节耳机音量,你的手就相当于配置耳机的寄存器。那么我先给出主要需配置的寄存器然后再解释.如下面这个程序段:unsignedcharidataRFConf[11]={0x00,//配置命令//0x4c,//CH_NO,配置频段在430MHZ0x0c,//输出功率为10db,不重发,节电为正常模式0x44,//地址宽度设置,为4字节0x04,0x04,//接收发送有效数据长度为32字节0xCC,0xCC,0xCC,0xCC,//

8、接收地址0x58,//CRC充许,8位CRC校验,外部时钟信号不使能,16M晶振};0x00,//配置命令//后面的讲解中会说,所以大家从第二个开始看。CH_NO的意思如下,通过以下解释设置不同的值,可以让905工作在不同频段,这个需要的话再做详解

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。