Sensor Controller Studio is used to write, test and debug code for the CC26xx/CC13xx Sensor Controller, allowing for ultra-low power application design.
The tool generates a Sensor Controller Interface driver, which is a set of C source files to be compiled into the System CPU (ARM Cortex-M3/M4) application. These source files contain the Sensor Controller firmware image and associated definitions, and generic functions that allow the System CPU application to control the Sensor Controller and exchange data.
The Sensor Controller is a small CPU core that is highly optimized for low power consumption and efficient peripheral operation. The Sensor Controller is located in the CC26xx/CC13xx auxiliary (AUX) power/clock domain, and can perform simple background tasks autonomously and independently of the System CPU and the MCU domain power state. Such tasks include but are not limited to:
- Analog sensor polling, using ADC or comparator
- Digital sensor polling, using SPI, I2C or other protocols
- Capacitive sensing, using current source, comparator and time-to-digital converter (TDC)
- Waveform generation, for example for LCDs
The Sensor Controller is user programmable, using a simple programming language with syntax similar to C. This allows for sensor polling and other tasks to be specified as sequential algorithms, rather than static configuration of complex peripheral modules, timers, DMA, register programmable state machines, event routing and so on. The main advantages are:
- Dynamic reuse of hardware resources
- Ability to perform simple data processing without need for dedicated hardware
- Observability and debugging options