Task Resources

Overview

Algorithms

UART Emulator

Full-duplex UART interface emulator. For details, see the resource description .

uartEmulator(); For details, see the procedure description .

Development Tools

Run-Time Logging

Evaluate and optimize performance of Sensor Controller tasks at full speed. For details, see the resource description .

rtlCheckLogDone(done); For details, see the procedure description .
rtlGetLogMask(bvStructs); For details, see the procedure description .
rtlLogCancel(); For details, see the procedure description .
rtlLogStructs(bvStructs); For details, see the procedure description .
rtlWaitLogDoneUs(timeout); For details, see the procedure description .

General-Purpose I/O

Analog Open-Drain Pins

General-purpose analog + open-drain pins (can drive to GND, for cap. touch). For details, see the resource description .

gpioClearOutput(auxio); For details, see the procedure description .
gpioSetOutput(auxio); For details, see the procedure description .
gpioToggleOutput(auxio); For details, see the procedure description .

Analog Open-Source Pins

General-purpose analog + open-source pins (can drive to VDDS). For details, see the resource description .

gpioClearOutput(auxio); For details, see the procedure description .
gpioSetOutput(auxio); For details, see the procedure description .
gpioToggleOutput(auxio); For details, see the procedure description .

Analog Pins

General-purpose analog pins, for use with analog peripherals. For details, see the resource description .

Differential Output Pins

General-purpose digital differential output pin pairs. For details, see the resource description .

gpioDisableDiffOutput(#auxioP, #auxioN); For details, see the procedure description .
gpioGenDiffOutput(#auxioP, #auxioN, value); For details, see the procedure description .

Digital Input Pins

General-purpose digital input pins, for manual polling. For details, see the resource description .

gpioCfgMode(auxio, mode); For details, see the procedure description .
gpioClearOutput(auxio); For details, see the procedure description .
gpioDisableInputBuf(auxio); For details, see the procedure description .
gpioEnableInputBuf(auxio); For details, see the procedure description .
gpioGetInputValue(auxio; value); For details, see the procedure description .
gpioSetOutput(auxio); For details, see the procedure description .
gpioToggleOutput(auxio); For details, see the procedure description .

Digital Open-Drain Pins

General-purpose digital open-drain pins (drive low). For details, see the resource description .

gpioCfgMode(auxio, mode); For details, see the procedure description .
gpioClearOutput(auxio); For details, see the procedure description .
gpioDisableInputBuf(auxio); For details, see the procedure description .
gpioEnableInputBuf(auxio); For details, see the procedure description .
gpioGenPulseTrain(#auxio, #polarity, #activeDuration, #inactiveDuration, count); For details, see the procedure description .
gpioGetInputValue(auxio; value); For details, see the procedure description .
gpioSetOutput(auxio); For details, see the procedure description .
gpioToggleOutput(auxio); For details, see the procedure description .

Digital Open-Source Pins

General-purpose digital open-source pins (drive high). For details, see the resource description .

gpioCfgMode(auxio, mode); For details, see the procedure description .
gpioClearOutput(auxio); For details, see the procedure description .
gpioDisableInputBuf(auxio); For details, see the procedure description .
gpioEnableInputBuf(auxio); For details, see the procedure description .
gpioGenPulseTrain(#auxio, #polarity, #activeDuration, #inactiveDuration, count); For details, see the procedure description .
gpioGetInputValue(auxio; value); For details, see the procedure description .
gpioSetOutput(auxio); For details, see the procedure description .
gpioToggleOutput(auxio); For details, see the procedure description .

Digital Output Pins

General-purpose digital output pins. For details, see the resource description .

gpioCfgMode(auxio, mode); For details, see the procedure description .
gpioClearOutput(auxio); For details, see the procedure description .
gpioDisableInputBuf(auxio); For details, see the procedure description .
gpioEnableInputBuf(auxio); For details, see the procedure description .
gpioGenPulseTrain(#auxio, #polarity, #activeDuration, #inactiveDuration, count); For details, see the procedure description .
gpioGetInputValue(auxio; value); For details, see the procedure description .
gpioSetOutput(auxio); For details, see the procedure description .
gpioToggleOutput(auxio); For details, see the procedure description .

Miscellaneous

Delay Insertion

Insert timer delays or wait for events in task code. For details, see the resource description .

fwDelayInstrCycles(delay); For details, see the procedure description .
fwDelayUs(#delay, #range); For details, see the procedure description .
fwWaitForEvSignal(signal, #level); For details, see the procedure description .
fwWaitForEvSignalOrExitFlag(signal, #level, exitFlagVar, #exitValue); For details, see the procedure description .

Peripherals

ADC

Analog to digital converter. For details, see the resource description .

adcDisable(); For details, see the procedure description .
adcDisableInputScaling(); For details, see the procedure description .
adcEnableAsync(#refSource, #trigger); For details, see the procedure description .
adcEnableSync(#refSource, #sampleTime, #trigger); For details, see the procedure description .
adcFlushFifo(); For details, see the procedure description .
adcGenManualTrigger(); For details, see the procedure description .
adcGetFifoStatus(value); For details, see the procedure description .
adcPopFifo(value); For details, see the procedure description .
adcReadFifo(value); For details, see the procedure description .
adcSelectGpioInput(auxio); For details, see the procedure description .
adcSelectIntInput(intInput); For details, see the procedure description .

COMPA

Continuous time comparator. For details, see the resource description .

compaConnectCapTouchRefIntRes(); For details, see the procedure description .
compaDisable(); For details, see the procedure description .
compaDisconnectCapTouchRefIntRes(); For details, see the procedure description .
compaEnable(); For details, see the procedure description .
compaEnableWithCapTouchRef(); For details, see the procedure description .
compaGetOutput(value); For details, see the procedure description .
compaSelectGpioInput(auxio); For details, see the procedure description .
compaSelectGpioRef(auxio); For details, see the procedure description .
compaSelectIntRef(intRef); For details, see the procedure description .

COMPB

Low-power clocked comparator. For details, see the resource description .

compbDisable(); For details, see the procedure description .
compbEnable(intRef); For details, see the procedure description .
compbGetOutput(value); For details, see the procedure description .
compbSelectGpioInput(auxio); For details, see the procedure description .

ISRC

Current source (for cap. touch and temperature measurement). For details, see the resource description .

compaSelectGpioInput(auxio); For details, see the procedure description .
isrcClamp(auxio); For details, see the procedure description .
isrcDisable(); For details, see the procedure description .
isrcDisableTempMeasWithAdc(); For details, see the procedure description .
isrcEnable(current); For details, see the procedure description .
isrcEnableTempMeasWithAdc(resistor); For details, see the procedure description .
isrcRelease(auxio); For details, see the procedure description .

Pulse Counter

Counts rising edges on a digital input pin or the COMPA output. For details, see the resource description .

pcntDisable(); For details, see the procedure description .
pcntEnable(input); For details, see the procedure description .
pcntGetValue(value); For details, see the procedure description .

TDC

Time to digital converter. For details, see the resource description .

tdcArm(startType); For details, see the procedure description .
tdcCheckDoneEv(done); For details, see the procedure description .
tdcDisable(); For details, see the procedure description .
tdcDisablePrescaler(); For details, see the procedure description .
tdcEnable(); For details, see the procedure description .
tdcEnablePrescaler(#div, input); For details, see the procedure description .
tdcGetValue(valueH, valueL); For details, see the procedure description .
tdcSetCntSource(#cntSource); For details, see the procedure description .
tdcSetTriggers(#startTrigger, #stopTrigger, ignoredStopTriggerCount); For details, see the procedure description .
tdcWaitUs(#timeout); For details, see the procedure description .

Timer 0

Execution timing and event counting, for use within task iterations. For details, see the resource description .

timer0CheckState(isRunning); For details, see the procedure description .
timer0Start(#mode, mant, #exp); For details, see the procedure description .
timer0StartWithTickSrc(#tickSrc, #edge, #mode, mant, #exp); For details, see the procedure description .
timer0Stop(); For details, see the procedure description .
timer0Wait(); For details, see the procedure description .

Timer 1

Execution timing and event counting, for use within task iterations. For details, see the resource description .

timer1CheckState(isRunning); For details, see the procedure description .
timer1Start(#mode, mant, #exp); For details, see the procedure description .
timer1StartWithTickSrc(#tickSrc, #edge, #mode, mant, #exp); For details, see the procedure description .
timer1Stop(); For details, see the procedure description .
timer1Wait(); For details, see the procedure description .

Serial Interfaces

I2C Master

I2C master interface. For details, see the resource description .

i2cDeviceReadReg16LsbFirst(#i2cAddr, regAddr8; value16); For details, see the procedure description .
i2cDeviceReadReg16MsbFirst(#i2cAddr, regAddr8; value16); For details, see the procedure description .
i2cDeviceReadReg8(#i2cAddr, regAddr8; value8); For details, see the procedure description .
i2cDeviceWriteReg16LsbFirst(#i2cAddr, regAddr8, value16); For details, see the procedure description .
i2cDeviceWriteReg16MsbFirst(#i2cAddr, regAddr8, value16); For details, see the procedure description .
i2cDeviceWriteReg8(#i2cAddr, regAddr8, value8); For details, see the procedure description .
i2cRepeatedStart(); For details, see the procedure description .
i2cRxAck(rxValue); For details, see the procedure description .
i2cRxNack(rxValue); For details, see the procedure description .
i2cStart(); For details, see the procedure description .
i2cStop(); For details, see the procedure description .
i2cTx(txValue); For details, see the procedure description .

SPI Chip Select

SPI master chip select (CSN). For details, see the resource description .

spiBegin(#cfg, #auxio); For details, see the procedure description .
spiEnd(#cfg, #auxio); For details, see the procedure description .

SPI Data Transfer

SPI master clock and data (SCLK, MOSI and MISO). For details, see the resource description .

spiRx16bit(#cfg; rxValue); For details, see the procedure description .
spiRx8bit(#cfg; rxValue); For details, see the procedure description .
spiTx16bit(#cfg, txValue); For details, see the procedure description .
spiTx8bit(#cfg, txValue); For details, see the procedure description .
spiTxRx16bit(#cfg, txValue; rxValue); For details, see the procedure description .
spiTxRx8bit(#cfg, txValue; rxValue); For details, see the procedure description .

System CPU Communication

Multi-Buffered Output Data Exchange

Seamless output buffer exchange with ALERT interrupt generation. For details, see the resource description .

fwCheckOutputBuffer(isAvailable); For details, see the procedure description .
fwSwitchOutputBuffer(); For details, see the procedure description .

Peripheral Sharing

Sharing of peripheral hardware modules with the System CPU. For details, see the resource description .

fwAcquirePeripheral(#peripheral); For details, see the procedure description .
fwReleasePeripheral(#peripheral); For details, see the procedure description .

System CPU Alert

Basic ALERT interrupt generation from task code. For details, see the resource description .

fwGenAlertInterrupt(); For details, see the procedure description .
fwGenQuickAlertInterrupt(); For details, see the procedure description .

Task Event Handling

COMPB Event Trigger

Use COMPB to trigger Event Handler Code. For details, see the resource description .

evhCancelTrigger(#evIndex); For details, see the procedure description .
evhSetupCompbTrigger(#evIndex, #level, #type); For details, see the procedure description .

GPIO Event Trigger

Use a single GPIO pin to trigger Event Handler Code. For details, see the resource description .

evhCancelTrigger(#evIndex); For details, see the procedure description .
evhSetupGpioTrigger(#evIndex, #auxio, #level, #type); For details, see the procedure description .

Timer 1 Event Trigger

Use Timer 1 to trigger Event Handler Code. For details, see the resource description .

evhCancelTrigger(#evIndex); For details, see the procedure description .
evhSetupTimer1CustomTrigger(#evIndex); For details, see the procedure description .
evhSetupTimer1Trigger(#evIndex, mant, #exp); For details, see the procedure description .

Task Execution

RTC-Based Execution Scheduling

Use the Real-Time Clock to trigger the Execution Code. For details, see the resource description .

fwScheduleTask(delay); For details, see the procedure description .

Timestamping

RTC Multi-Event Capture

RTC capture of every N’th rising edge on a GPIO pin. For details, see the resource description .

rtcmecCheckCaptEv(status); For details, see the procedure description .
rtcmecClearCaptEv(); For details, see the procedure description .
rtcmecInit(#auxio); For details, see the procedure description .
rtcmecSetPeriod(period); For details, see the procedure description .

Utilities

Math and Logic

Basic mathematical and logical operations. For details, see the resource description .

utilIncrAndSat(value, #sat; incrValue); For details, see the procedure description .
utilIncrAndWrap(value, #wrap; incrValue); For details, see the procedure description .
utilSwapEndianess(initialValue; swappedValue); For details, see the procedure description .