Task Resources¶
Overview¶
Algorithms¶
LCD Controller¶
Waveform generation for LCD, supporting any number of GPIO pins. For details, see the resource description .
lcdApplyNextState(); For details, see the procedure description . |
lcdInit(idlePatternPos); For details, see the procedure description . |
lcdPrepareNextState(nextPatternPos); For details, see the procedure description . |
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 . |
gpioWaitForLevel(auxio, #level); For details, see the procedure description . |
gpioWaitForLevelUs(auxio, #level, timeout); 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 . |
gpioWaitForLevel(auxio, #level); For details, see the procedure description . |
gpioWaitForLevelUs(auxio, #level, timeout); 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 . |
gpioWaitForLevel(auxio, #level); For details, see the procedure description . |
gpioWaitForLevelUs(auxio, #level, timeout); 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 . |
gpioWaitForLevel(auxio, #level); For details, see the procedure description . |
gpioWaitForLevelUs(auxio, #level, timeout); 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 . |
gpioWaitForLevel(auxio, #level); For details, see the procedure description . |
gpioWaitForLevelUs(auxio, #level, timeout); 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 . |
gpioWaitForLevel(auxio, #level); For details, see the procedure description . |
gpioWaitForLevelUs(auxio, #level, timeout); For details, see the procedure description . |
Miscellaneous¶
AON Domain Functionality¶
Provides access to always-on domain system functionality. For details, see the resource description .
sysCheckActiveState(isActive); For details, see the procedure description . |
sysCheckMcuPmSwitchDet(flag); For details, see the procedure description . |
sysCheckVddrRechargeDet(flag); For details, see the procedure description . |
sysClearMcuPmSwitchDet(); For details, see the procedure description . |
sysDisableVddrRechargeDet(); For details, see the procedure description . |
sysEnableVddrRechargeDet(); For details, see the procedure description . |
sysForceAndWaitOnVddrRecharge(); For details, see the procedure description . |
sysGetBatmonTemp(temperature); For details, see the procedure description . |
sysGetBatmonVolt(voltage); For details, see the procedure description . |
sysGetPwrSupplyState(isActive); For details, see the procedure description . |
sysGetRtcSubsecValue(subsec); For details, see the procedure description . |
sysGetRtcValue(sec, subsec); For details, see the procedure description . |
sysGetVddrRechargeState(state); For details, see the procedure description . |
sysWaitForActiveState(#waitForActive); For details, see the procedure description . |
sysWaitForPwrSupplyState(#waitForActive); For details, see the procedure description . |
sysWaitForVddrRechargeState(#waitForActive); For details, see the procedure description . |
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); 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 . |
fwWaitForEvSignalUs(signal, #level, timeout); For details, see the procedure description . |
fwWaitForTwoEvSignals(#waitForBoth, signalA, #levelA, signalB, #levelB); For details, see the procedure description . |
Signal Observation¶
Observation of AUX domain event bus signal on GPIO pin. For details, see the resource description .
obsConnectSignalToGpio(#auxio); For details, see the procedure description . |
obsDisconnectSignalFromGpio(#auxio); For details, see the procedure description . |
obsSelectSignal(signal); 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(#pwrModeSupport); 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(); 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 . |
Reference DAC¶
Low-power clocked reference DAC for COMPA and COMPB. For details, see the resource description .
refdacChangeOutputValue(value); For details, see the procedure description . |
refdacDisable(); For details, see the procedure description . |
refdacEnable(#pwrModeSupport, #intRef); For details, see the procedure description . |
refdacStartOutputOnCompaIn(value); For details, see the procedure description . |
refdacStartOutputOnCompaRef(value); For details, see the procedure description . |
refdacStartOutputOnCompbRef(value); For details, see the procedure description . |
refdacStopOutput(); For details, see the procedure description . |
refdacWaitForStableOutput(); For details, see the procedure description . |
TDC¶
Time to digital converter. For details, see the resource description .
fwClearManualEv(); For details, see the procedure description . |
fwPulseManualEv(); For details, see the procedure description . |
fwSetManualEv(); For details, see the procedure 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 . |
timer0GetValue(value); 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 . |
timer1GetValue(value); 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 . |
Timer 2¶
Asynchronous timer with 4 capture/compare channels. For details, see the resource description .
fwClearManualEv(); For details, see the procedure description . |
fwPulseManualEv(); For details, see the procedure description . |
fwSetManualEv(); For details, see the procedure description . |
timer2CfgCcChannel(#chId, #modeAndAction, #bvEvIds); For details, see the procedure description . |
timer2ClearEvent(#evId); For details, see the procedure description . |
timer2ConnectEventToGpio(#evId, auxio); For details, see the procedure description . |
timer2DisconnectEventFromGpio(auxio); For details, see the procedure description . |
timer2GenNarrowPulse(); For details, see the procedure description . |
timer2GetCaptValue(#chId; value); For details, see the procedure description . |
timer2GetCounter(value); For details, see the procedure description . |
timer2GetEvents(bvEvIds); For details, see the procedure description . |
timer2GetPulseMeas(#chId; pulseWidth, pulseInterval); For details, see the procedure description . |
timer2ModifyEvents(bvEvMod); For details, see the procedure description . |
timer2ResetCcChannel(#chId); For details, see the procedure description . |
timer2SetCaptSource(#chId, #source, #edge); For details, see the procedure description . |
timer2SetClockSource(src); For details, see the procedure description . |
timer2SetCounter(value); For details, see the procedure description . |
timer2SetEvent(#evId); For details, see the procedure description . |
timer2SetInitCmpValue(#chId, value); For details, see the procedure description . |
timer2SetInitCounterTarget(value); For details, see the procedure description . |
timer2SetNextCmpValue(#chId, value); For details, see the procedure description . |
timer2SetNextCounterTarget(value); For details, see the procedure description . |
timer2SetPrescaler(value); For details, see the procedure description . |
timer2Start(#mode); For details, see the procedure description . |
timer2StartWithTarget(#mode); For details, see the procedure description . |
timer2Stop(); For details, see the procedure description . |
timer2WaitForClockSource(); For details, see the procedure description . |
timer2WaitOnEvent(#evId, #level); For details, see the procedure description . |
Power Management¶
Dynamic Power Control¶
Change power mode dynamically from task code. For details, see the resource description .
pwrRequestActiveMode(); For details, see the procedure description . |
pwrRequestAndWaitForActiveMode(); For details, see the procedure description . |
pwrRequestAndWaitForLowPowerMode(); For details, see the procedure description . |
pwrRequestLowPowerMode(); For details, see the procedure description . |
pwrWaitForActiveMode(); For details, see the procedure description . |
pwrWaitForLowPowerMode(); 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(#auxio); For details, see the procedure description . |
spiEnd(#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 .
spiCfg(polPha, div); For details, see the procedure description . |
spiClearMosi(); For details, see the procedure description . |
spiRx16bit(rxValue); For details, see the procedure description . |
spiRx8bit(rxValue); For details, see the procedure description . |
spiSetMosi(); For details, see the procedure description . |
spiTx16bit(txValue); For details, see the procedure description . |
spiTx8bit(txValue); For details, see the procedure description . |
spiTxRx16bit(txValue; rxValue); For details, see the procedure description . |
spiTxRx8bit(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¶
COMPA Event Trigger¶
Use COMPA to trigger Event Handler Code. For details, see the resource description .
evhCancelTrigger(#evIndex); For details, see the procedure description . |
evhGetActiveTrigger(bvEvent); For details, see the procedure description . |
evhSetupCompaTrigger(#evIndex, #level, #type); For details, see the procedure description . |
COMPB Event Trigger¶
Use COMPB to trigger Event Handler Code. For details, see the resource description .
evhCancelTrigger(#evIndex); For details, see the procedure description . |
evhGetActiveTrigger(bvEvent); 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 . |
evhGetActiveTrigger(bvEvent); For details, see the procedure description . |
evhSetupGpioTrigger(#evIndex, #auxio, #level, #type); For details, see the procedure description . |
System Event Trigger¶
Use system events to trigger Event Handler Code. For details, see the resource description .
evhCancelTrigger(#evIndex); For details, see the procedure description . |
evhGetActiveTrigger(bvEvent); For details, see the procedure description . |
evhSetupSystemTrigger(#evIndex, aonEvSignal); For details, see the procedure description . |
Timer 0 Event Trigger¶
Use Timer 0 to trigger Event Handler Code. For details, see the resource description .
evhCancelTrigger(#evIndex); For details, see the procedure description . |
evhGetActiveTrigger(bvEvent); For details, see the procedure description . |
evhSetupTimer0CustomTrigger(#evIndex); For details, see the procedure description . |
evhSetupTimer0Trigger(#evIndex, mant, #exp); 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 . |
evhGetActiveTrigger(bvEvent); For details, see the procedure description . |
evhSetupTimer1CustomTrigger(#evIndex); For details, see the procedure description . |
evhSetupTimer1Trigger(#evIndex, mant, #exp); For details, see the procedure description . |
Timer 2 Event Trigger¶
Use Timer 2 to trigger Event Handler Code. For details, see the resource description .
evhCancelTrigger(#evIndex); For details, see the procedure description . |
evhGetActiveTrigger(bvEvent); For details, see the procedure description . |
evhSetupTimer2Trigger(#evIndex, #timer2EvId, #level, #type); 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 .
fwResumeRtcEvents(); For details, see the procedure description . |
fwScheduleTask(delay); For details, see the procedure description . |
fwSuspendRtcEvents(); 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¶
Accumulator-Based Math¶
40-bit accumulator supporting multiplication, addition and shift. For details, see the resource description .
accAdd16s(value); For details, see the procedure description . |
accAdd16u(value); For details, see the procedure description . |
accAdd32s(valueH, valueL); For details, see the procedure description . |
accAdd32u(valueH, valueL); For details, see the procedure description . |
accCountLeadingSignBits(value); For details, see the procedure description . |
accCountLeadingZeroBits(value); For details, see the procedure description . |
accGet16(accIndex; value); For details, see the procedure description . |
accGet32(accIndex; valueH, valueL); For details, see the procedure description . |
accGetAll(valueExt, valueH, valueL); For details, see the procedure description . |
accGetExt(value); For details, see the procedure description . |
accMac16s16s(a, b); For details, see the procedure description . |
accMac16s16u(a, b); For details, see the procedure description . |
accMac16u16s(a, b); For details, see the procedure description . |
accMac16u16u(a, b); For details, see the procedure description . |
accMul16s16s(a, b); For details, see the procedure description . |
accMul16s16u(a, b); For details, see the procedure description . |
accMul16u16s(a, b); For details, see the procedure description . |
accMul16u16u(a, b); For details, see the procedure description . |
accReset(); For details, see the procedure description . |
accSet16s(value); For details, see the procedure description . |
accSet16u(value); For details, see the procedure description . |
accSet32s(valueH, valueL); For details, see the procedure description . |
accSet32u(valueH, valueL); For details, see the procedure description . |
accSetAll(valueExt, valueH, valueL); For details, see the procedure description . |
accSetExt(value); For details, see the procedure description . |
accShiftLeft(shiftCount); For details, see the procedure description . |
accShiftRightArith(shiftCount); For details, see the procedure description . |
accShiftRightLogic(shiftCount); For details, see the procedure description . |
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 . |