cc2420_registers.h¶
Register and command definitions for CC2420.
-
CC2420_OPT_AUTOACK
¶ auto ACKs active
1
(0x0001)
-
CC2420_OPT_CSMA
¶ CSMA active.
1
(0x0002)
-
CC2420_OPT_PROMISCUOUS
¶ promiscuous mode active
1
(0x0004)
-
CC2420_OPT_PRELOADING
¶ preloading enabled
1
(0x0008)
-
CC2420_OPT_TELL_TX_START
¶ notify MAC layer on TX start
1
(0x0010)
-
CC2420_OPT_TELL_TX_END
¶ notify MAC layer on TX finished
1
(0x0020)
-
CC2420_OPT_TELL_RX_START
¶ notify MAC layer on RX start
1
(0x0040)
-
CC2420_OPT_TELL_RX_END
¶ notify MAC layer on RX finished
1
(0x0080)
-
enum
@94
¶ - CC2420_GOTO_PD
- power down
- CC2420_GOTO_IDLE
- idle
- CC2420_GOTO_RX
- receive state
- CC2420_GOTO_TXON
- transmit packet without CCA
- CC2420_GOTO_TXONCCA
- transmit packet using CCA
-
enum
@95
¶ - CC2420_STATE_PD
= 0
- power down
- CC2420_STATE_IDLE
= 1
- idle state
- CC2420_STATE_TX_PRE
= 34
- transmitting preamble
- CC2420_STATE_RX_SEARCH
= 6
- receive SFD search
- CC2420_STATE_RX_OVERFLOW
= 17
- receive buffer overflow
- CC2420_STATE_PD
-
CC2420_REG_WRITE
¶ read register value
1
(0x00)
-
CC2420_REG_READ
¶ write register value
1
(0x40)
-
CC2420_RAM
¶ access the internal RAM
1
(0x80)
-
CC2420_RAM_WRITE
¶ write to RAM
1
(0x00)
-
CC2420_RAM_READ
¶ read from RAM
1
(0x20)
-
CC2420_FIFO_READ
¶ 1
(CC2420_REG_RXFIFO | CC2420_REG_READ)
-
CC2420_FIFO_WRITE
¶ 1
(CC2420_REG_TXFIFO | CC2420_REG_WRITE)
-
CC2420_STROBE_NOP
¶ no operation
1
(0x00)
-
CC2420_STROBE_XOSCON
¶ turn transceiver on
1
(0x01)
-
CC2420_STROBE_TXCAL
¶ calibrate TX freq and wait
1
(0x02)
-
CC2420_STROBE_RXON
¶ switch to RX mode
1
(0x03)
-
CC2420_STROBE_TXON
¶ switch to TX mode
1
(0x04)
-
CC2420_STROBE_TXONCCA
¶ switch to TX after CCA
1
(0x05)
-
CC2420_STROBE_RFOFF
¶ switch to IDLE mode
1
(0x06)
-
CC2420_STROBE_XOSCOFF
¶ power down
1
(0x07)
-
CC2420_STROBE_FLUSHRX
¶ flush RX FIFO
1
(0x08)
-
CC2420_STROBE_FLUSHTX
¶ flush TX FIFO
1
(0x09)
-
CC2420_STROBE_ACK
¶ send ACK with pending cleared
1
(0x0A)
-
CC2420_STROBE_ACKPEND
¶ send ACK with pending set
1
(0x0B)
-
CC2420_STROBE_RXDEC
¶ start RX FIFO decrypt/verify
1
(0x0C)
-
CC2420_STROBE_TXENC
¶ start TX FIFO encrypt/auth
1
(0x0D)
-
CC2420_STROBE_AES
¶ start AES encryption
1
(0x0E)
-
CC2420_REG_MAIN
¶ main control
1
(0x10)
-
CC2420_REG_MDMCTRL0
¶ modem control 0
1
(0x11)
-
CC2420_REG_MDMCTRL1
¶ modem control 1
1
(0x12)
-
CC2420_REG_RSSI
¶ RSSI and CCA control.
1
(0x13)
-
CC2420_REG_SYNCWORD
¶ synchronization word control
1
(0x14)
-
CC2420_REG_TXCTRL
¶ transmit control
1
(0x15)
-
CC2420_REG_RXCTRL0
¶ receive control 0
1
(0x16)
-
CC2420_REG_RXCTRL1
¶ receive control 1
1
(0x17)
-
CC2420_REG_FSCTRL
¶ freq synthesizer control
1
(0x18)
-
CC2420_REG_SECCTRL0
¶ security control 0
1
(0x19)
-
CC2420_REG_SECCTRL1
¶ security control 1
1
(0x1A)
-
CC2420_REG_BATTMON
¶ battery monitor control
1
(0x1B)
-
CC2420_REG_IOCFG0
¶ I/O control 0.
1
(0x1C)
-
CC2420_REG_IOCFG1
¶ I/O control 1.
1
(0x1D)
-
CC2420_REG_MANFIDL
¶ manufacturer ID low
1
(0x1e)
-
CC2420_REG_MANFIDH
¶ manufacturer ID high
1
(0x1F)
-
CC2420_REG_FSMTC
¶ FSM timer constants.
1
(0x20)
-
CC2420_REG_MANAND
¶ manual signal AND override
1
(0x21)
-
CC2420_REG_MANOR
¶ manual signal OR override
1
(0x22)
-
CC2420_REG_AGCCTRL
¶ AGC control.
1
(0x23)
-
CC2420_REG_AGCTST0
¶ AGC test 0.
1
(0x24)
-
CC2420_REG_AGCTST1
¶ AGC test 1.
1
(0x25)
-
CC2420_REG_AGCTST2
¶ AGC test 2.
1
(0x26)
-
CC2420_REG_FSTST0
¶ freq synthesizer test 0
1
(0x27)
-
CC2420_REG_FSTST1
¶ freq synthesizer test 1
1
(0x28)
-
CC2420_REG_FSTST2
¶ freq synthesizer test 2
1
(0x29)
-
CC2420_REG_FSTST3
¶ freq synthesizer test 3
1
(0x2A)
-
CC2420_REG_RXBPFTST
¶ RX bandpass filter test.
1
(0x2B)
-
CC2420_REG_FSMSTATE
¶ FSM status.
1
(0x2C)
-
CC2420_REG_ADCTST
¶ ADC test.
1
(0x2D)
-
CC2420_REG_DACTST
¶ DAC test.
1
(0x2E)
-
CC2420_REG_TOPTST
¶ top level test
1
(0x2F)
-
CC2420_REG_TXFIFO
¶ TX FIFO byte.
1
(0x3E)
-
CC2420_REG_RXFIFO
¶ RX FIFO byte.
1
(0x3F)
-
CC2420_RAM_TXFIFO
¶ 1
(0x0000)
-
CC2420_RAM_RXFIFO
¶ 1
(0x0080)
-
CC2420_RAM_KEY0
¶ 1
(0x0100)
-
CC2420_RAM_RXNONCE
¶ 1
(0x0110)
-
CC2420_RAM_RXCTR
¶ 1
(0x0110)
-
CC2420_RAM_SABUF
¶ 1
(0x0120)
-
CC2420_RAM_KEY1
¶ 1
(0x0130)
-
CC2420_RAM_TXNONCE
¶ 1
(0x0140)
-
CC2420_RAM_TXCTR
¶ 1
(0x0140)
-
CC2420_RAM_CBCSTATE
¶ 1
(0x0150)
-
CC2420_RAM_IEEEADR
¶ 1
(0x0160)
-
CC2420_RAM_PANID
¶ 1
(0x0168)
-
CC2420_RAM_SHORTADR
¶ 1
(0x016A)
-
CC2420_STATUS_XOSC_STABLE
¶ 1
(0x40)
-
CC2420_STATUS_TX_UNDERFLOW
¶ 1
(0x20)
-
CC2420_STATUS_ENC_BUSY
¶ 1
(0x10)
-
CC2420_STATUS_TX_ACTIVE
¶ 1
(0x08)
-
CC2420_STATUS_PLL_LOCK
¶ 1
(0x04)
-
CC2420_STATUS_RSSI_VALID
¶ 1
(0x02)
-
CC2420_MDMCTRL0_RES_FRM
¶ 1
(0x2000
-
CC2420_MDMCTRL0_ADR_DECODE
¶ 1
(0x0800)
-
CC2420_MDMCTRL0_PAN_COORD
¶ 1
(0x1000)
-
CC2420_MDMCTRL0_AUTOCRC
¶ 1
(0x0020)
-
CC2420_MDMCTRL0_AUTOACK
¶ 1
(0x0010)
-
CC2420_MDMCTRL0_PREAMBLE_M
¶ 1
(0x000f)
-
CC2420_MDMCTRL0_PREAMBLE_3B
¶ 1
(0x0002)
-
CC2420_CRCCOR_CRC_MASK
¶ CRC/Correlation bit masks.
1
(0x80)
-
CC2420_CRCCOR_COR_MASK
¶ 1
(0x7F)
-
CC2420_TXCTRL_PA_MASK
¶ 1
(0x001f)
-
CC2420_RXCTRL1_RXBPF_LOCUR
¶ 1
(0x2000)
-
CC2420_FSCTRL_LOCK_THR_MASK
¶ 1
(0xc000)
-
CC2420_FSCTRL_CAL_DONE
¶ 1
(0x2000)
-
CC2420_FSCTRL_CAL_RUNNING
¶ 1
(0x1000)
-
CC2420_FSCTRL_LOCK_LENGTH
¶ 1
(0x0800)
-
CC2420_FSCTRL_LOCK_STATUS
¶ 1
(0x0400)
-
CC2420_FSCTRL_FREQ_MASK
¶ 1
(0x03ff)
-
CC2420_SECCTRL0_RXFIFO_PROT
¶ 1
(0x0200)
-
CC2420_MANFIDL_VAL
¶ 1
(0x233d)
-
CC2420_MANFIDH_VAL
¶ 1
(0x3000)