Note Doxygen generated HTML can be found here.
This driver aims to provide a generic API for Texas Instrument's CC110L/CC1101 line of RF transceivers. It tries to wrap up some of the quirks in dealing with these components, so they they don't have to be repeated for each MCU port.
As TI have made many of the registers common across the CC1100 and CC2500 range, this driver should be compatible with other parts. Please notes that it is possible CC110L/CC1101 specific features are used in this driver and the examples.
This driver has three core modules:
-
CCxxxx The abstraction layer which should provide a platform independent interface to the CC1101/CCxxxx.
-
QuickStart Convenience functions which depend on the CCxxxx abstraction layer. They demonstrate one particular configuration of the device, using the register configurations from TI's slaa325a example code.
-
SPI The hardware specific part of this driver and will need to be tailored for the Microcontroller being used. The functionality required to be implemented can be found in
src/spi/ccx_spi.h
. Some example implementations of this can be found insrc/spi/ports
.
The file src/ccx.mk
tries to quickly bring in the relevant files to your build
system. It should be sourced in your project Makefile and will provide the
following variables:
CCX_CSRC
- C source filesCCX_INC
- include directoriesCCX_DEF
- List of defines for the C preprocessor
An example of using this is available at
examples/msp_exp430g2_transceiver/Makefile
.
In order to use the CCX API you should:
- Source
src/ccx.mk
in your project Makefile - Add
CCX_CSRC
to your C source/CSRC
- Add
CCX_INC
to your includes/INC
- Add
CCX_DEF
to your compiler flags/CFLAGS
- Include
ccx_api.h
in your C files
To bring in Quickstart you should follow the steps above to use the CCX module.
Additionally, before sourcing src/ccx.mk
in your
project Makefile you should:
- Set
CCX_QS_FREQ
to be either315
,433
,868
,915
,2400
- Set
CCX_QS_CONNECTED_GDO
to be either0
or2
to set the receive interrupt as eitherGD0
orGD2
Ensure that you include ccx_quickstart.h
in your relevant C files.
The following variables can be set in your Makefile before sourcing src/ccx.mk
to provide some convenient debugging.
- Set
CCX_LOG_ERRORS
to1
to enable a user defined logging function (@ref ccxErrorLog) to be called when an error is encountered. - Set
CCX_TESTS
to1
to compile in a small group of tests.
These can be called with @ref ccxRunTests.