Data Structures | Macros | Functions
PINCC26XX.h File Reference

Detailed Description

Device-specific pin & GPIO driver for CC26xx family [def].


Overview

This is the device-specific implementation of the generic PIN driver for the CC26xx family of devices.

Refer to PIN.h for a complete description of APIs & example of use.

#include <stdint.h>
#include <stddef.h>
#include <ti/drivers/dpl/HwiP.h>
#include <ti/drivers/PIN.h>
#include <ti/devices/DeviceFamily.h>
#include <DeviceFamily_constructPath(driverlib/ioc.h)>
#include <DeviceFamily_constructPath(driverlib/gpio.h)>
Include dependency graph for PINCC26XX.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  PINCC26XX_HWAttrs
 PINCC26XX Hardware attributes. More...
 

Macros

#define PIN_CHKEN   1
 
Device-specific PIN_Config flags/fields for CC26xx family

CC26XX-specific I/O configuration fields/flags for use in PIN_Config entries. These fields flags/for the most part map directly to the values used in the IOCFG hardware registers for efficiency. May not be mixed with device-independent I/O options.

#define PINCC26XX_INPUT_EN   (1 << 29)
 Enable input buffer. More...
 
#define PINCC26XX_HYSTERESIS   (1 << 30)
 Enable input buffer hysteresis. More...
 
#define PINCC26XX_NOPULL   (0x3 << 13)
 No pull-up or pull-down resistor. More...
 
#define PINCC26XX_PULLUP   (0x2 << 13)
 ~20k pull-up resistor enabled More...
 
#define PINCC26XX_PULLDOWN   (0x1 << 13)
 ~20k pull-down resistor enabled More...
 
#define PINCC26XX_BM_INPUT_EN   (0x01 << 29)
 Bitmask for input enable option. More...
 
#define PINCC26XX_BM_HYSTERESIS   (0x01 << 30)
 Bitmask for all input mode options. More...
 
#define PINCC26XX_BM_PULLING   (0x03 << 13)
 
#define PINCC26XX_BM_INPUT_MODE
 Bitmask for all input mode options. More...
 
#define PINCC26XX_GPIO_OUTPUT_EN   (1 << 23)
 Enable output buffer when GPIO. More...
 
#define PINCC26XX_GPIO_LOW   (0 << 22)
 Output buffer drives to VSS when GPIO. More...
 
#define PINCC26XX_GPIO_HIGH   (1 << 22)
 Output buffer drives to VDD when GPIO. More...
 
#define PINCC26XX_PUSHPULL   (0x0 << 25)
 Output buffer mode: push/pull. More...
 
#define PINCC26XX_OPENDRAIN   (0x2 << 25)
 Output buffer mode: open drain. More...
 
#define PINCC26XX_OPENSOURCE   (0x3 << 25)
 Output buffer mode: open source. More...
 
#define PINCC26XX_SLEWCTRL   (1 << 12)
 Enable output buffer slew control. More...
 
#define PINCC26XX_DRVSTR_MIN   (0x0 << 8)
 Drive strength is 2/2 mA. More...
 
#define PINCC26XX_DRVSTR_MED   (0x4 << 8)
 Drive strength is 4/4 mA. More...
 
#define PINCC26XX_DRVSTR_MAX   (0x8 << 8)
 Drive strength is 4/8 mA. More...
 
#define PINCC26XX_BM_GPIO_OUTPUT_EN   (1 << 23)
 Bitmask for output enable option. More...
 
#define PINCC26XX_BM_GPIO_OUTPUT_VAL   (1 << 22)
 Bitmask for output value option. More...
 
#define PINCC26XX_BM_OUTPUT_BUF   (3 << 25)
 Bitmask for output buffer options. More...
 
#define PINCC26XX_BM_SLEWCTRL   (1 << 12)
 Bitmask for slew control options. More...
 
#define PINCC26XX_BM_DRVSTR   (0xF << 8)
 
#define PINCC26XX_BM_GPIO_OUTPUT_MODE   (PINCC26XX_BM_GPIO_OUTPUT_EN | PINCC26XX_BM_GPIO_OUTPUT_VAL)
 Bitmask for all GPIO output mode options. More...
 
#define PINCC26XX_BM_OUTPUT_MODE
 Bitmask for all output mode options. More...
 
#define PINCC26XX_INV_INOUT   (1 << 24)
 Logically invert input and output. More...
 
#define PINCC26XX_IRQ_DIS   (0x0 << 16)
 Enable IRQ on pin. More...
 
#define PINCC26XX_IRQ_NEGEDGE   (0x5 << 16)
 IRQ on negative edge. More...
 
#define PINCC26XX_IRQ_POSEDGE   (0x6 << 16)
 IRQ on positive edge. More...
 
#define PINCC26XX_IRQ_BOTHEDGES   (0x7 << 16)
 IRQ on both edges. More...
 
#define PINCC26XX_BM_INV_INOUT   (1 << 24)
 Bitmask for input/output inversion option. More...
 
#define PINCC26XX_BM_IRQ   (0x7 << 16)
 Bitmask for pin interrupt option. More...
 
#define PINCC26XX_NO_WAKEUP   (0 << 27)
 No wakeup from shutdown for this pin. More...
 
#define PINCC26XX_WAKEUP_POSEDGE   (3 << 27)
 Wakeup from shutdown on positive edge. More...
 
#define PINCC26XX_WAKEUP_NEGEDGE   (2 << 27)
 Wakeup from shutdown on negative edge. More...
 
#define PINCC26XX_BM_WAKEUP   (3 << 27)
 Bitmask for pin wakeup from shutdown option. More...
 
#define PINCC26XX_BM_IOCFG
 Bitmask for all pin options in IOCFG register. More...
 
#define PINCC26XX_BM_ALL   (PINCC26XX_BM_IOCFG | PINCC26XX_BM_GPIO_OUTPUT_MODE)
 Bitmask for all pin options. More...
 
PIN names for the CC26xx family

The digital I/O pins in the CC26xx family are named DIOx, where x is from 0 to IO_MAX. Numeric IO indexes for x can be used directly, i.e. 5 or PIN_ID(5). For convenience and readability aliases are defined below for all DIOs.

#define PINCC26XX_DIO0   0
 
#define PINCC26XX_DIO1   1
 
#define PINCC26XX_DIO2   2
 
#define PINCC26XX_DIO3   3
 
#define PINCC26XX_DIO4   4
 
#define PINCC26XX_DIO5   5
 
#define PINCC26XX_DIO6   6
 
#define PINCC26XX_DIO7   7
 
#define PINCC26XX_DIO8   8
 
#define PINCC26XX_DIO9   9
 
#define PINCC26XX_DIO10   10
 
#define PINCC26XX_DIO11   11
 
#define PINCC26XX_DIO12   12
 
#define PINCC26XX_DIO13   13
 
#define PINCC26XX_DIO14   14
 
#define PINCC26XX_DIO15   15
 
#define PINCC26XX_DIO16   16
 
#define PINCC26XX_DIO17   17
 
#define PINCC26XX_DIO18   18
 
#define PINCC26XX_DIO19   19
 
#define PINCC26XX_DIO20   20
 
#define PINCC26XX_DIO21   21
 
#define PINCC26XX_DIO22   22
 
#define PINCC26XX_DIO23   23
 
#define PINCC26XX_DIO24   24
 
#define PINCC26XX_DIO25   25
 
#define PINCC26XX_DIO26   26
 
#define PINCC26XX_DIO27   27
 
#define PINCC26XX_DIO28   28
 
#define PINCC26XX_DIO29   29
 
#define PINCC26XX_DIO30   30
 
#define PINCC26XX_DIO31   31
 
Device-specific pin mux values for CC26xx family

Deprecated:

Use IOC_PORT_* defines from driverlib/ioc.h directly instead

CC26XX-specific mux vakues used in conjunction with PINCC26XX_setMux() to map hardware peripheral ports, GPIO or observation signals to pins.

#define PINCC26XX_MUX_GPIO   IOC_PORT_GPIO
 
#define PINCC26XX_MUX_AON_CLK32K   IOC_PORT_AON_CLK32K
 
#define PINCC26XX_MUX_AUX_IO   IOC_PORT_AUX_IO
 
#define PINCC26XX_MUX_MCU_SSI0_RX   IOC_PORT_MCU_SSI0_RX
 
#define PINCC26XX_MUX_MCU_SSI0_TX   IOC_PORT_MCU_SSI0_TX
 
#define PINCC26XX_MUX_MCU_SSI0_FSS   IOC_PORT_MCU_SSI0_FSS
 
#define PINCC26XX_MUX_MCU_SSI0_CLK   IOC_PORT_MCU_SSI0_CLK
 
#define PINCC26XX_MUX_MCU_I2C_MSSDA   IOC_PORT_MCU_I2C_MSSDA
 
#define PINCC26XX_MUX_MCU_I2C_MSSCL   IOC_PORT_MCU_I2C_MSSCL
 
#define PINCC26XX_MUX_MCU_UART0_RX   IOC_PORT_MCU_UART0_RX
 
#define PINCC26XX_MUX_MCU_UART0_TX   IOC_PORT_MCU_UART0_TX
 
#define PINCC26XX_MUX_MCU_UART0_CTS   IOC_PORT_MCU_UART0_CTS
 
#define PINCC26XX_MUX_MCU_UART0_RTS   IOC_PORT_MCU_UART0_RTS
 
#define PINCC26XX_MUX_MCU_PORT_EV_0   IOC_PORT_MCU_PORT_EVENT0
 
#define PINCC26XX_MUX_MCU_PORT_EV_1   IOC_PORT_MCU_PORT_EVENT1
 
#define PINCC26XX_MUX_MCU_PORT_EV_2   IOC_PORT_MCU_PORT_EVENT2
 
#define PINCC26XX_MUX_MCU_PORT_EV_3   IOC_PORT_MCU_PORT_EVENT3
 
#define PINCC26XX_MUX_MCU_PORT_EV_4   IOC_PORT_MCU_PORT_EVENT4
 
#define PINCC26XX_MUX_MCU_PORT_EV_5   IOC_PORT_MCU_PORT_EVENT5
 
#define PINCC26XX_MUX_MCU_PORT_EV_6   IOC_PORT_MCU_PORT_EVENT6
 
#define PINCC26XX_MUX_MCU_PORT_EV_7   IOC_PORT_MCU_PORT_EVENT7
 
#define PINCC26XX_MUX_SWV   IOC_PORT_MCU_SWV
 
#define PINCC26XX_MUX_MCU_SSI1_RX   IOC_PORT_MCU_SSI1_RX
 
#define PINCC26XX_MUX_MCU_SSI1_TX   IOC_PORT_MCU_SSI1_TX
 
#define PINCC26XX_MUX_MCU_SSI1_FSS   IOC_PORT_MCU_SSI1_FSS
 
#define PINCC26XX_MUX_MCU_SSI1_CLK   IOC_PORT_MCU_SSI1_CLK
 
#define PINCC26XX_MUX_MCU_I2S_AD0   IOC_PORT_MCU_I2S_AD0
 
#define PINCC26XX_MUX_MCU_I2S_AD1   IOC_PORT_MCU_I2S_AD1
 
#define PINCC26XX_MUX_MCU_I2S_WCLK   IOC_PORT_MCU_I2S_WCLK
 
#define PINCC26XX_MUX_MCU_I2S_BCLK   IOC_PORT_MCU_I2S_BCLK
 
#define PINCC26XX_MUX_MCU_I2S_MCLK   IOC_PORT_MCU_I2S_MCLK
 
#define PINCC26XX_MUX_RFC_TRC   IOC_PORT_RFC_TRC
 
#define PINCC26XX_MUX_RFC_GPO0   IOC_PORT_RFC_GPO0
 
#define PINCC26XX_MUX_RFC_GPO1   IOC_PORT_RFC_GPO1
 
#define PINCC26XX_MUX_RFC_GPO2   IOC_PORT_RFC_GPO2
 
#define PINCC26XX_MUX_RFC_GPO3   IOC_PORT_RFC_GPO3
 
#define PINCC26XX_MUX_RFC_GPI0   IOC_PORT_RFC_GPI0
 
#define PINCC26XX_MUX_RFC_GPI1   IOC_PORT_RFC_GPI1
 
#define PINCC26XX_MUX_RFC_SMI_DL_OUT   IOC_PORT_RFC_SMI_DL_OUT
 
#define PINCC26XX_MUX_RFC_SMI_DL_IN   IOC_PORT_RFC_SMI_DL_IN
 
#define PINCC26XX_MUX_RFC_SMI_CL_OUT   IOC_PORT_RFC_SMI_CL_OUT
 
#define PINCC26XX_MUX_RFC_SMI_CL_IN   IOC_PORT_RFC_SMI_CL_IN
 

Functions

__STATIC_INLINE uint32_t PIN_ctz (uint32_t x)
 
__STATIC_INLINE uint32_t PINCC26XX_getInputValue (PIN_Id pinId)
 Fast/efficient version of PIN_getInputValue() More...
 
__STATIC_INLINE void PINCC26XX_setOutputEnable (PIN_Id pinId, bool outputEnable)
 
__STATIC_INLINE void PINCC26XX_setOutputValue (PIN_Id pinId, uint32_t val)
 
__STATIC_INLINE uint32_t PINCC26XX_getOutputValue (PIN_Id pinId)
 Fast/efficient version of PIN_getOutputValue() More...
 
__STATIC_INLINE void PINCC26XX_clrPendInterrupt (PIN_Id pinId)
 
__STATIC_INLINE uint32_t PINCC26XX_getPortInputValue (PIN_Handle handle)
 Fast/efficient version of PIN_getPortInputValue() More...
 
__STATIC_INLINE uint32_t PINCC26XX_getPortOutputValue (PIN_Handle handle)
 Fast/efficient version of PIN_getPortOutputValue() More...
 
__STATIC_INLINE void PINCC26XX_setPortOutputValue (PIN_Handle handle, uint32_t outputValueMask)
 
__STATIC_INLINE void PINCC26XX_setPortOutputEnable (PIN_Handle handle, uint32_t outputEnableMask)
 
PIN_Config PINCC26XX_getConfig (PIN_Id pinId)
 Returns CC26xx device-specific pin configuration. More...
 
PIN_Status PINCC26XX_setWakeup (const PIN_Config aPinCfg[])
 Configure wakeup (from shutdown) on pins. More...
 
int32_t PINCC26XX_getMux (PIN_Id pinId)
 Get device-specific pin mapping to GPIO, HW peripheral or HW signal. More...
 
uint32_t PINCC26XX_getPinCount ()
 Get device-specific count of how many pins are available on this device and package. More...
 
PIN_Status PINCC26XX_setMux (PIN_Handle handle, PIN_Id pinId, int32_t nMux)
 Connect pin to HW peripheral, signal or to GPIO. More...
 

Macro Definition Documentation

§ PIN_CHKEN

#define PIN_CHKEN   1

§ PINCC26XX_INPUT_EN

#define PINCC26XX_INPUT_EN   (1 << 29)

Enable input buffer.

§ PINCC26XX_HYSTERESIS

#define PINCC26XX_HYSTERESIS   (1 << 30)

Enable input buffer hysteresis.

§ PINCC26XX_NOPULL

#define PINCC26XX_NOPULL   (0x3 << 13)

No pull-up or pull-down resistor.

§ PINCC26XX_PULLUP

#define PINCC26XX_PULLUP   (0x2 << 13)

~20k pull-up resistor enabled

§ PINCC26XX_PULLDOWN

#define PINCC26XX_PULLDOWN   (0x1 << 13)

~20k pull-down resistor enabled

§ PINCC26XX_BM_INPUT_EN

#define PINCC26XX_BM_INPUT_EN   (0x01 << 29)

Bitmask for input enable option.

§ PINCC26XX_BM_HYSTERESIS

#define PINCC26XX_BM_HYSTERESIS   (0x01 << 30)

Bitmask for all input mode options.

§ PINCC26XX_BM_PULLING

#define PINCC26XX_BM_PULLING   (0x03 << 13)

Bitmask for pull-up/pull-down options

§ PINCC26XX_BM_INPUT_MODE

#define PINCC26XX_BM_INPUT_MODE
Value:
PINCC26XX_BM_PULLING)
#define PINCC26XX_BM_HYSTERESIS
Bitmask for all input mode options.
Definition: PINCC26XX.h:109
#define PINCC26XX_BM_INPUT_EN
Bitmask for input enable option.
Definition: PINCC26XX.h:108

Bitmask for all input mode options.

§ PINCC26XX_GPIO_OUTPUT_EN

#define PINCC26XX_GPIO_OUTPUT_EN   (1 << 23)

Enable output buffer when GPIO.

§ PINCC26XX_GPIO_LOW

#define PINCC26XX_GPIO_LOW   (0 << 22)

Output buffer drives to VSS when GPIO.

§ PINCC26XX_GPIO_HIGH

#define PINCC26XX_GPIO_HIGH   (1 << 22)

Output buffer drives to VDD when GPIO.

§ PINCC26XX_PUSHPULL

#define PINCC26XX_PUSHPULL   (0x0 << 25)

Output buffer mode: push/pull.

§ PINCC26XX_OPENDRAIN

#define PINCC26XX_OPENDRAIN   (0x2 << 25)

Output buffer mode: open drain.

§ PINCC26XX_OPENSOURCE

#define PINCC26XX_OPENSOURCE   (0x3 << 25)

Output buffer mode: open source.

§ PINCC26XX_SLEWCTRL

#define PINCC26XX_SLEWCTRL   (1 << 12)

Enable output buffer slew control.

§ PINCC26XX_DRVSTR_MIN

#define PINCC26XX_DRVSTR_MIN   (0x0 << 8)

Drive strength is 2/2 mA.

§ PINCC26XX_DRVSTR_MED

#define PINCC26XX_DRVSTR_MED   (0x4 << 8)

Drive strength is 4/4 mA.

§ PINCC26XX_DRVSTR_MAX

#define PINCC26XX_DRVSTR_MAX   (0x8 << 8)

Drive strength is 4/8 mA.

§ PINCC26XX_BM_GPIO_OUTPUT_EN

#define PINCC26XX_BM_GPIO_OUTPUT_EN   (1 << 23)

Bitmask for output enable option.

§ PINCC26XX_BM_GPIO_OUTPUT_VAL

#define PINCC26XX_BM_GPIO_OUTPUT_VAL   (1 << 22)

Bitmask for output value option.

§ PINCC26XX_BM_OUTPUT_BUF

#define PINCC26XX_BM_OUTPUT_BUF   (3 << 25)

Bitmask for output buffer options.

§ PINCC26XX_BM_SLEWCTRL

#define PINCC26XX_BM_SLEWCTRL   (1 << 12)

Bitmask for slew control options.

§ PINCC26XX_BM_DRVSTR

#define PINCC26XX_BM_DRVSTR   (0xF << 8)

Bitmask for drive strength options

§ PINCC26XX_BM_GPIO_OUTPUT_MODE

#define PINCC26XX_BM_GPIO_OUTPUT_MODE   (PINCC26XX_BM_GPIO_OUTPUT_EN | PINCC26XX_BM_GPIO_OUTPUT_VAL)

Bitmask for all GPIO output mode options.

§ PINCC26XX_BM_OUTPUT_MODE

#define PINCC26XX_BM_OUTPUT_MODE
Value:
PINCC26XX_BM_SLEWCTRL | PINCC26XX_BM_DRVSTR)
#define PINCC26XX_BM_OUTPUT_BUF
Bitmask for output buffer options.
Definition: PINCC26XX.h:127
#define PINCC26XX_BM_DRVSTR
Definition: PINCC26XX.h:129
#define PINCC26XX_BM_GPIO_OUTPUT_MODE
Bitmask for all GPIO output mode options.
Definition: PINCC26XX.h:131

Bitmask for all output mode options.

§ PINCC26XX_INV_INOUT

#define PINCC26XX_INV_INOUT   (1 << 24)

Logically invert input and output.

§ PINCC26XX_IRQ_DIS

#define PINCC26XX_IRQ_DIS   (0x0 << 16)

Enable IRQ on pin.

§ PINCC26XX_IRQ_NEGEDGE

#define PINCC26XX_IRQ_NEGEDGE   (0x5 << 16)

IRQ on negative edge.

§ PINCC26XX_IRQ_POSEDGE

#define PINCC26XX_IRQ_POSEDGE   (0x6 << 16)

IRQ on positive edge.

§ PINCC26XX_IRQ_BOTHEDGES

#define PINCC26XX_IRQ_BOTHEDGES   (0x7 << 16)

IRQ on both edges.

§ PINCC26XX_BM_INV_INOUT

#define PINCC26XX_BM_INV_INOUT   (1 << 24)

Bitmask for input/output inversion option.

§ PINCC26XX_BM_IRQ

#define PINCC26XX_BM_IRQ   (0x7 << 16)

Bitmask for pin interrupt option.

§ PINCC26XX_NO_WAKEUP

#define PINCC26XX_NO_WAKEUP   (0 << 27)

No wakeup from shutdown for this pin.

§ PINCC26XX_WAKEUP_POSEDGE

#define PINCC26XX_WAKEUP_POSEDGE   (3 << 27)

Wakeup from shutdown on positive edge.

§ PINCC26XX_WAKEUP_NEGEDGE

#define PINCC26XX_WAKEUP_NEGEDGE   (2 << 27)

Wakeup from shutdown on negative edge.

§ PINCC26XX_BM_WAKEUP

#define PINCC26XX_BM_WAKEUP   (3 << 27)

Bitmask for pin wakeup from shutdown option.

§ PINCC26XX_BM_IOCFG

#define PINCC26XX_BM_IOCFG
Value:
PINCC26XX_BM_SLEWCTRL | PINCC26XX_BM_DRVSTR | \
PINCC26XX_BM_INV_INOUT | PINCC26XX_BM_IRQ | PINCC26XX_BM_WAKEUP)
#define PINCC26XX_BM_INPUT_MODE
Bitmask for all input mode options.
Definition: PINCC26XX.h:112
#define PINCC26XX_BM_OUTPUT_BUF
Bitmask for output buffer options.
Definition: PINCC26XX.h:127
#define PINCC26XX_BM_DRVSTR
Definition: PINCC26XX.h:129
#define PINCC26XX_BM_WAKEUP
Bitmask for pin wakeup from shutdown option.
Definition: PINCC26XX.h:147
#define PINCC26XX_BM_IRQ
Bitmask for pin interrupt option.
Definition: PINCC26XX.h:142

Bitmask for all pin options in IOCFG register.

§ PINCC26XX_BM_ALL

#define PINCC26XX_BM_ALL   (PINCC26XX_BM_IOCFG | PINCC26XX_BM_GPIO_OUTPUT_MODE)

Bitmask for all pin options.

§ PINCC26XX_DIO0

#define PINCC26XX_DIO0   0

§ PINCC26XX_DIO1

#define PINCC26XX_DIO1   1

§ PINCC26XX_DIO2

#define PINCC26XX_DIO2   2

§ PINCC26XX_DIO3

#define PINCC26XX_DIO3   3

§ PINCC26XX_DIO4

#define PINCC26XX_DIO4   4

§ PINCC26XX_DIO5

#define PINCC26XX_DIO5   5

§ PINCC26XX_DIO6

#define PINCC26XX_DIO6   6

§ PINCC26XX_DIO7

#define PINCC26XX_DIO7   7

§ PINCC26XX_DIO8

#define PINCC26XX_DIO8   8

§ PINCC26XX_DIO9

#define PINCC26XX_DIO9   9

§ PINCC26XX_DIO10

#define PINCC26XX_DIO10   10

§ PINCC26XX_DIO11

#define PINCC26XX_DIO11   11

§ PINCC26XX_DIO12

#define PINCC26XX_DIO12   12

§ PINCC26XX_DIO13

#define PINCC26XX_DIO13   13

§ PINCC26XX_DIO14

#define PINCC26XX_DIO14   14

§ PINCC26XX_DIO15

#define PINCC26XX_DIO15   15

§ PINCC26XX_DIO16

#define PINCC26XX_DIO16   16

§ PINCC26XX_DIO17

#define PINCC26XX_DIO17   17

§ PINCC26XX_DIO18

#define PINCC26XX_DIO18   18

§ PINCC26XX_DIO19

#define PINCC26XX_DIO19   19

§ PINCC26XX_DIO20

#define PINCC26XX_DIO20   20

§ PINCC26XX_DIO21

#define PINCC26XX_DIO21   21

§ PINCC26XX_DIO22

#define PINCC26XX_DIO22   22

§ PINCC26XX_DIO23

#define PINCC26XX_DIO23   23

§ PINCC26XX_DIO24

#define PINCC26XX_DIO24   24

§ PINCC26XX_DIO25

#define PINCC26XX_DIO25   25

§ PINCC26XX_DIO26

#define PINCC26XX_DIO26   26

§ PINCC26XX_DIO27

#define PINCC26XX_DIO27   27

§ PINCC26XX_DIO28

#define PINCC26XX_DIO28   28

§ PINCC26XX_DIO29

#define PINCC26XX_DIO29   29

§ PINCC26XX_DIO30

#define PINCC26XX_DIO30   30

§ PINCC26XX_DIO31

#define PINCC26XX_DIO31   31

§ PINCC26XX_MUX_GPIO

#define PINCC26XX_MUX_GPIO   IOC_PORT_GPIO

§ PINCC26XX_MUX_AON_CLK32K

#define PINCC26XX_MUX_AON_CLK32K   IOC_PORT_AON_CLK32K

§ PINCC26XX_MUX_AUX_IO

#define PINCC26XX_MUX_AUX_IO   IOC_PORT_AUX_IO

§ PINCC26XX_MUX_MCU_SSI0_RX

#define PINCC26XX_MUX_MCU_SSI0_RX   IOC_PORT_MCU_SSI0_RX

§ PINCC26XX_MUX_MCU_SSI0_TX

#define PINCC26XX_MUX_MCU_SSI0_TX   IOC_PORT_MCU_SSI0_TX

§ PINCC26XX_MUX_MCU_SSI0_FSS

#define PINCC26XX_MUX_MCU_SSI0_FSS   IOC_PORT_MCU_SSI0_FSS

§ PINCC26XX_MUX_MCU_SSI0_CLK

#define PINCC26XX_MUX_MCU_SSI0_CLK   IOC_PORT_MCU_SSI0_CLK

§ PINCC26XX_MUX_MCU_I2C_MSSDA

#define PINCC26XX_MUX_MCU_I2C_MSSDA   IOC_PORT_MCU_I2C_MSSDA

§ PINCC26XX_MUX_MCU_I2C_MSSCL

#define PINCC26XX_MUX_MCU_I2C_MSSCL   IOC_PORT_MCU_I2C_MSSCL

§ PINCC26XX_MUX_MCU_UART0_RX

#define PINCC26XX_MUX_MCU_UART0_RX   IOC_PORT_MCU_UART0_RX

§ PINCC26XX_MUX_MCU_UART0_TX

#define PINCC26XX_MUX_MCU_UART0_TX   IOC_PORT_MCU_UART0_TX

§ PINCC26XX_MUX_MCU_UART0_CTS

#define PINCC26XX_MUX_MCU_UART0_CTS   IOC_PORT_MCU_UART0_CTS

§ PINCC26XX_MUX_MCU_UART0_RTS

#define PINCC26XX_MUX_MCU_UART0_RTS   IOC_PORT_MCU_UART0_RTS

§ PINCC26XX_MUX_MCU_PORT_EV_0

#define PINCC26XX_MUX_MCU_PORT_EV_0   IOC_PORT_MCU_PORT_EVENT0

§ PINCC26XX_MUX_MCU_PORT_EV_1

#define PINCC26XX_MUX_MCU_PORT_EV_1   IOC_PORT_MCU_PORT_EVENT1

§ PINCC26XX_MUX_MCU_PORT_EV_2

#define PINCC26XX_MUX_MCU_PORT_EV_2   IOC_PORT_MCU_PORT_EVENT2

§ PINCC26XX_MUX_MCU_PORT_EV_3

#define PINCC26XX_MUX_MCU_PORT_EV_3   IOC_PORT_MCU_PORT_EVENT3

§ PINCC26XX_MUX_MCU_PORT_EV_4

#define PINCC26XX_MUX_MCU_PORT_EV_4   IOC_PORT_MCU_PORT_EVENT4

§ PINCC26XX_MUX_MCU_PORT_EV_5

#define PINCC26XX_MUX_MCU_PORT_EV_5   IOC_PORT_MCU_PORT_EVENT5

§ PINCC26XX_MUX_MCU_PORT_EV_6

#define PINCC26XX_MUX_MCU_PORT_EV_6   IOC_PORT_MCU_PORT_EVENT6

§ PINCC26XX_MUX_MCU_PORT_EV_7

#define PINCC26XX_MUX_MCU_PORT_EV_7   IOC_PORT_MCU_PORT_EVENT7

§ PINCC26XX_MUX_SWV

#define PINCC26XX_MUX_SWV   IOC_PORT_MCU_SWV

§ PINCC26XX_MUX_MCU_SSI1_RX

#define PINCC26XX_MUX_MCU_SSI1_RX   IOC_PORT_MCU_SSI1_RX

§ PINCC26XX_MUX_MCU_SSI1_TX

#define PINCC26XX_MUX_MCU_SSI1_TX   IOC_PORT_MCU_SSI1_TX

§ PINCC26XX_MUX_MCU_SSI1_FSS

#define PINCC26XX_MUX_MCU_SSI1_FSS   IOC_PORT_MCU_SSI1_FSS

§ PINCC26XX_MUX_MCU_SSI1_CLK

#define PINCC26XX_MUX_MCU_SSI1_CLK   IOC_PORT_MCU_SSI1_CLK

§ PINCC26XX_MUX_MCU_I2S_AD0

#define PINCC26XX_MUX_MCU_I2S_AD0   IOC_PORT_MCU_I2S_AD0

§ PINCC26XX_MUX_MCU_I2S_AD1

#define PINCC26XX_MUX_MCU_I2S_AD1   IOC_PORT_MCU_I2S_AD1

§ PINCC26XX_MUX_MCU_I2S_WCLK

#define PINCC26XX_MUX_MCU_I2S_WCLK   IOC_PORT_MCU_I2S_WCLK

§ PINCC26XX_MUX_MCU_I2S_BCLK

#define PINCC26XX_MUX_MCU_I2S_BCLK   IOC_PORT_MCU_I2S_BCLK

§ PINCC26XX_MUX_MCU_I2S_MCLK

#define PINCC26XX_MUX_MCU_I2S_MCLK   IOC_PORT_MCU_I2S_MCLK

§ PINCC26XX_MUX_RFC_TRC

#define PINCC26XX_MUX_RFC_TRC   IOC_PORT_RFC_TRC

§ PINCC26XX_MUX_RFC_GPO0

#define PINCC26XX_MUX_RFC_GPO0   IOC_PORT_RFC_GPO0

§ PINCC26XX_MUX_RFC_GPO1

#define PINCC26XX_MUX_RFC_GPO1   IOC_PORT_RFC_GPO1

§ PINCC26XX_MUX_RFC_GPO2

#define PINCC26XX_MUX_RFC_GPO2   IOC_PORT_RFC_GPO2

§ PINCC26XX_MUX_RFC_GPO3

#define PINCC26XX_MUX_RFC_GPO3   IOC_PORT_RFC_GPO3

§ PINCC26XX_MUX_RFC_GPI0

#define PINCC26XX_MUX_RFC_GPI0   IOC_PORT_RFC_GPI0

§ PINCC26XX_MUX_RFC_GPI1

#define PINCC26XX_MUX_RFC_GPI1   IOC_PORT_RFC_GPI1

§ PINCC26XX_MUX_RFC_SMI_DL_OUT

#define PINCC26XX_MUX_RFC_SMI_DL_OUT   IOC_PORT_RFC_SMI_DL_OUT

§ PINCC26XX_MUX_RFC_SMI_DL_IN

#define PINCC26XX_MUX_RFC_SMI_DL_IN   IOC_PORT_RFC_SMI_DL_IN

§ PINCC26XX_MUX_RFC_SMI_CL_OUT

#define PINCC26XX_MUX_RFC_SMI_CL_OUT   IOC_PORT_RFC_SMI_CL_OUT

§ PINCC26XX_MUX_RFC_SMI_CL_IN

#define PINCC26XX_MUX_RFC_SMI_CL_IN   IOC_PORT_RFC_SMI_CL_IN

Function Documentation

§ PIN_ctz()

__STATIC_INLINE uint32_t PIN_ctz ( uint32_t  x)

§ PINCC26XX_getInputValue()

__STATIC_INLINE uint32_t PINCC26XX_getInputValue ( PIN_Id  pinId)

Fast/efficient version of PIN_getInputValue()

§ PINCC26XX_setOutputEnable()

__STATIC_INLINE void PINCC26XX_setOutputEnable ( PIN_Id  pinId,
bool  outputEnable 
)

§ PINCC26XX_setOutputValue()

__STATIC_INLINE void PINCC26XX_setOutputValue ( PIN_Id  pinId,
uint32_t  val 
)

§ PINCC26XX_getOutputValue()

__STATIC_INLINE uint32_t PINCC26XX_getOutputValue ( PIN_Id  pinId)

Fast/efficient version of PIN_getOutputValue()

§ PINCC26XX_clrPendInterrupt()

__STATIC_INLINE void PINCC26XX_clrPendInterrupt ( PIN_Id  pinId)

§ PINCC26XX_getPortInputValue()

__STATIC_INLINE uint32_t PINCC26XX_getPortInputValue ( PIN_Handle  handle)

Fast/efficient version of PIN_getPortInputValue()

§ PINCC26XX_getPortOutputValue()

__STATIC_INLINE uint32_t PINCC26XX_getPortOutputValue ( PIN_Handle  handle)

Fast/efficient version of PIN_getPortOutputValue()

§ PINCC26XX_setPortOutputValue()

__STATIC_INLINE void PINCC26XX_setPortOutputValue ( PIN_Handle  handle,
uint32_t  outputValueMask 
)

References PIN_State_s::portMask.

§ PINCC26XX_setPortOutputEnable()

__STATIC_INLINE void PINCC26XX_setPortOutputEnable ( PIN_Handle  handle,
uint32_t  outputEnableMask 
)

§ PINCC26XX_getConfig()

PIN_Config PINCC26XX_getConfig ( PIN_Id  pinId)

Returns CC26xx device-specific pin configuration.

Parameters
pinIdPin ID
Returns
Current pin configuration as a PIN_Config value
Note
The pin ID is embedded in return value.
Return value uses CC26xx specific I/O options

Referenced by PINCC26XX_setPortOutputEnable().

§ PINCC26XX_setWakeup()

PIN_Status PINCC26XX_setWakeup ( const PIN_Config  aPinCfg[])

Configure wakeup (from shutdown) on pins.

Parameters
aPinCfgPIN_Config list identifying pin ID and relevant pin configuration as one of:
Returns
PIN_SUCCESS if successful, else error code
Usage
PIN_setWakeup(NULL, PIN_ID(9)|PIN_WAKEUP_NEGEDGE);
Note
A wake-up event to wake up from shutdown is not detected until the device reaches shutdown. Wake-up events happening after a shutdown is initiated but before actual shutdown are not captured and thus will not cause the device to wake up.

Referenced by PINCC26XX_setPortOutputEnable().

§ PINCC26XX_getMux()

int32_t PINCC26XX_getMux ( PIN_Id  pinId)

Get device-specific pin mapping to GPIO, HW peripheral or HW signal.

Parameters
pinIdPin ID
Returns
Device-specific pin mapping index for connection to hardware peripheral or hardware signal, -1 if pin is used for GPIO
Note
Mostly used by driver code
Usage
if (PINCC26XX_getMux(PIN_ID(16)) < 0) {
// Pin is GPIO
}

Referenced by PINCC26XX_setPortOutputEnable().

§ PINCC26XX_getPinCount()

uint32_t PINCC26XX_getPinCount ( )

Get device-specific count of how many pins are available on this device and package.

Returns
Device and package specific pin count
Note
Mostly used by driver code

Referenced by PINCC26XX_setPortOutputEnable().

§ PINCC26XX_setMux()

PIN_Status PINCC26XX_setMux ( PIN_Handle  handle,
PIN_Id  pinId,
int32_t  nMux 
)

Connect pin to HW peripheral, signal or to GPIO.

Parameters
handleHandle provided by previous call to PIN_open()
pinIdPin ID
nMuxDevice-specific index of peripheral port or hardware signal. A value of -1 reverts the pin to GPIO mapping
Returns
PIN_SUCCESS if successful, else error code
Note
Mostly used by driver code or for diagnostics
Usage
PIN_setMux(hPins, PIN_ID(16), PINCC26XX_UART_TX);

Referenced by PINCC26XX_setPortOutputEnable().

© Copyright 1995-2019, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale