无线射频(二)

来源:互联网 发布:Python 交织元祖 编辑:程序博客网 时间:2024/04/29 04:33

前言

前面大体讲解了一下RF内核的知识,今天我们细讲CC2530_RF_FIFO访问 的相关知识。

RF_FIFO

CC2530发送或接收数据是通过FIFO操作来进行的。FIFO访问可以分为TXFIFO访问和RXFIFO访问,其操作都是通过SFR寄存器的RFD操作进行。当写入RFD寄存器时,数据被写入到TXFIFO,当读取数据RFD寄存器时,数据从RXFIFO中读出。

unsigned char i;signed char tx[ ]={"dh"};//将mac的内容写到RFD中for(i=0;i<3;i++){     RFD = tx[i];}

1、RXFIFO存储器区域位于地址0x6000到0x607F,一共128字节,在XREG存储区域中是可以访问的。RXFIFO可以保存一个或多个收到的帧,只要总字节数不大于128字节。有两种方式确定RXFIFO中的字节数:
1)读RFD寄存器

//  通过RFD读接收的数据长度unsigned char len;len = RFD;

2)读RXFIFOCNT寄存器

//  通过RXFIFOCNT读接收的数据长度unsigned char len;len = RXFIFOCNT;

TXFIFO中的字节数存储在TXFIFOCNT寄存器中,可以通过两种方式来进行TXFIFO的写操作,这里我介绍一种,因为另一种是不推荐的
写入RFD寄存器。


TXFIFO存储器区域位于地址0x6080到0x60FF,一共128字节。它在XREG存储区域中是可以访问的。
在不产生TX下溢的情况下,帧数据可以在执行TX命令选通之前或之后缓冲
阴影部分的字节必须写到TXFIFO的字节,其他字节可以被忽略。写入TXFIFO的帧数据根据了FRMCTRL0.AUTOCRC(CRC自动校验)是否启用可以分为两种情况:当AUTOCRC为0时,没有启动硬件自动检测;当AUTOCRC为1时,启动了硬件自动检测。


今天的内容就讲到这里,下期讲讲RF的发送过程

0 0