keil 单片机无线通讯程序问题

2025-02-27 11:28:13
推荐回答(4个)
回答1:

就是表示某个寄存器的某个位,用 RX_DR 总比用 0100000 容易记吧, 增加程序可读性.

虽然我没有用过 NRF24L01, 但我凭着那几行代码就可以看出 某个状态寄存器有 RX_DR , TX_DS , MAX_RT 的位. sta,应该是指 status , 应该是保存某个寄存器的值.

如里我再猜下去,可能是: 接收数据就绪, 发送数据已经发出,(最后一个猜不出了)

回答2:

uint bdata sta; //状态标志
---------------------
这一行就是在“位寻址区”设定一个整型(即16位的)变量。

正是因为sta是设定在“位寻址区”,所以才可以用:
“sbit RX_DR =sta^6;”
把它的第六位设定为“位变量”RX_DR 。

回答3:

只是分别定义了三个变量,或者说三个位,把状态标志位(有16位)中的第四五六拿出来方便单独操作
sbit RX_DR sbit TX_DS sbit MAX_RT
就可以在下面的程序中直接用了

回答4:

它只是一个字节,下面是其不同的位,你C语言好好学学