现在用nrf24l01做一个跳动中继节点。收到的数据不能转发给主控台,请问什么原因
就是将a节点的温度传给b·b再传给c,用的是nrf24l01
#include"Allhead.h"
sbit CE=P1^2; //RX/TX模式选择端
sbit IRQ=P1^3; //可屏蔽中断端
sbit CSN=P1^4; //SPI片选端//就是SS
sbit MOSI=P1^5; //SPI主机输出从机输入端
sbit MISO=P1^6; //SPI主机输出从机输出端
sbit SCLK=P1^7; //SPI时钟端
unchar RevTempDate[5];//最后一位用来存放结束标志
unchar code TxAddr[]={0x40,0x43,0x10,0x10,0x01};//发送地址
unchar code RxAddr1[]={0x36};//编号2
/*****************状态标志*****************************************/
unchar bdata sta; //状态标志
sbit RX_DR=sta^6;
sbit TX_DS=sta^5;
sbit MAX_RT=sta^4;
/*****************SPI时序函数******************************************/
unchar NRFSPI(unchar date)
{
unchar i;
for(i=0;i<8;i++) // 循环8次
{
if(date&0x80)
MOSI=1;
************************************/
#include"reg52.h"
#include"Allhead.h"
/************************主函数********************/
void main()
{
//LCD1602Int();
*(RevTempDate+4)='\0';
LcdInt(); //12864液晶初始化
LcdClear(); //12864液晶清屏
Max232Int();//串口初始化
NRF24L01Int();
LcdWriteChStr(2,10,"当前温度:");
while(1)
{
NRFSetRXMode();//设置为接收模式
GetDate();//开始接受数
LCDDelay(1000);
NRFSetTxMode(sta);发送模式
CheckACK();
LCDDelay(1000);
}
我要赚赏金打赏帖 |
|
|---|---|
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |
| AG32VH407下光照强度传感器BH1750及其检测被打赏¥22元 | |
| AT32VH407下使用温湿度传感器DHT22进行检测被打赏¥20元 | |
| DIY一个婴儿澡盆温度计被打赏¥34元 | |
| 【FreeRtos】FreeRtos+MPU region 配置规则被打赏¥23元 | |
| 【分享开发笔记,赚取电动螺丝刀】三分钟快速上手驱动墨水屏(ArduinoIDE)被打赏¥28元 | |
| 【S32K3XX】LIN 通讯模块使用被打赏¥31元 | |
| 【FreeRtos】FreeRtos + MPU模块的配置使用被打赏¥32元 | |