nrf24l01无线模块c语言程序

nrf24l01无线模块c语言程序

ID:27619666

大小:141.14 KB

页数:10页

时间:2018-12-05

nrf24l01无线模块c语言程序_第1页
nrf24l01无线模块c语言程序_第2页
nrf24l01无线模块c语言程序_第3页
nrf24l01无线模块c语言程序_第4页
nrf24l01无线模块c语言程序_第5页
资源描述:

《nrf24l01无线模块c语言程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、NRF24L01无线模块C语言程序24MHz晶振^include^include^include^include^include^include#defineU8unsignedcharWdefineU16unsignedintWdefineTX_ADDR_W1TDH5//发送地址宽度设置为5个字节#defineRX_ADDR_WITDH5//接收地址宽度设置为5个字节#defineTX_DATA_WTTDH1//发送数据宽度1个字节#defineRX_DATA_WITDII1//接收数据宽度1个字节#defineREREGISTER0x00//读取配

2、置寄存器#defineW_REGISTER0x20//写配置寄存器#defineR_RX_PAYLOAD'0x61//读取RX有效数据#defineW_TX_PAYLOAD'OxaO//写TX有效数据#dcfincFLUSHTXOxel//清除TTXFIFO寄存器#defineELUSH_RX0xe2//清除RXE1E0寄存器#defineREUSE_TX_PL0xe3//重新使用上一毡有效数据#defineNOPOxff//空操作#dcfincCONFIG0x00//配置寄存器#defineEN_AA0x01//使能自动应答#defineEN_RXA

3、DDR0x02//接收通道使能0-5个通道#defineSETUP_AW0x03//设置数据通道地址宽度3-5#defineSETUP^RETR0x04//建立自动重发#dcfincRFCH0x05//射频通道设置#defineRE^SETUP0x06//射频寄存器#defineSTATUS0x07//状态寄存器#defineOBSERVE_TX0x08//发送检测寄存器#defineCD0x09//载波#dcfincRXADDRPO0x0a//数据通道0接收地址#defineRX_ADDR_P1OxOb//数据通道1接收地址#defineRX_ADD

4、R_P20x0c//数据通道2接收地址#defineRX_ADDR_P3OxOd//数据通道3接收地址#defineRX_ADDR_P4OxOe//数据通道4接收地址#dcfincRXADDRP5OxOf//数据通道5接收地址#defineTX_ADDR0x10//发送地址#defineRX__PW_P00xll//P0通道数据宽度设置#defineRX__PW_P10xl2//Pl通道数据宽度设置#defineRX__PW_P20xl3//P2通道数据宽度设置#dcfincRX__PW_P30xl4//P3通道数据宽度设置#defineRX__PW_

5、P40xl5//P4通道数据宽度设置#defineRX__PW_P50xl6//P5通道数据宽度设罝#defineFIFOSTATUS0xl7//FTW)状态寄存器//NRF24L01U8NRFACK();U8NRFSPI(U8date);U8NREReadReg(U8RegAddr);U8NRFWriteReg(U8RegAddr,U8date);U8NRFReadRxDate(U8RegAddr,U8*RxDate,U8DateLen);U8NRFWriteTxDate(U8RegAddr,U8*TxDate,U8DateLen);U8NRFRev

6、Date(U8*RevDate);voidNRFSetTxMode(U8*TxDate);voidNRF24L01Int();voidNRFSetRXMode();U8CheckACKO;voidDelay(U16t);U8bdatasta;//mainvoidDelay_10ms(U16del);bitCE=PC4;//RX/TX模式选择端sbitIRQ=P1"1;//可屏蔽中断端sbitCSN=Pr6;//SH片选端//就是SSsbitMosi=pro;//spi主机输出从机输入端lsbitMTSOPC2;//SPT主机输入从机输出端sbitSCL

7、K=Pr3;//SPI时钟端U8codeTxAddr[]={0x34,0x43,0x10,0x10,0x01};//发送地址U8bdatasta;//状态标志sbitRX_DR=sta6;sbitTX_DS=sta5;sbitMAX_RT=sta"4;voidDelay(U16t)U16x,y;for(x=t;x>O;x--)for(y=l10;y>0;y--);}U8NRESPi(U8date)U8i;for(i=0;i<8;i++)//循环8次{if(date&0x80)MOSI=1;elseMOSI=O;//byte最高位输出到MOSIdate«

8、=l;//低一位移位到最高位SCLK=1if(MISO)1位数据,//拉高SCK,nRF24L

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

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

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