97 typedef struct NSS_GPIO_S {
99 uint32_t RESERVED1[4096];
108 uint32_t RESERVED2[8184];
112 #define NSS_GPIOn_PINMASK(x) (1<<(x)) 115 typedef enum GPIO_INT_MODE {
144 pGPIO[port].
DATA[1 << pin] = (uint32_t)setting << pin;
156 return (pGPIO[port].DATA[1 << pin]) != 0;
167 pGPIO[port].
DIR |= (1UL << pin);
178 pGPIO[port].
DIR &= ~(1UL << pin);
199 return (
bool)((pGPIO[port].
DIR >> pin) & 1);
212 pGPIO[port].
DIR |= pinMask;
225 pGPIO[port].
DIR &= ~pinMask;
249 return pGPIO[port].
DIR;
260 pGPIO[port].
DATA[0xFFF] = value;
271 return pGPIO[port].
DATA[0xFFF];
284 pGPIO[port].
DATA[pinMask] = 0xFFF;
296 pGPIO[port].
DATA[1 << pin] = (1u << pin);
309 pGPIO[port].
DATA[pinMask] = 0;
321 pGPIO[port].
DATA[1 << pin] = 0;
334 pGPIO[port].
DATA[pinMask] ^= 0xFFF;
346 pGPIO[port].
DATA[1 << pin] ^= (1u << pin);
357 pGPIO[port].
IS &= ~pinmask;
368 pGPIO[port].
IS |= pinmask;
382 return pGPIO[port].
IS;
393 pGPIO[port].
IBE |= pinmask;
404 pGPIO[port].
IBE &= ~pinmask;
419 return pGPIO[port].
IBE;
432 pGPIO[port].
IEV |= pinmask;
445 pGPIO[port].
IEV &= ~pinmask;
459 return pGPIO[port].
IEV;
470 pGPIO[port].
IE |= pinmask;
481 pGPIO[port].
IE &= ~pinmask;
492 return pGPIO[port].
IE;
503 return pGPIO[port].
RIS;
514 return pGPIO[port].
MIS;
525 pGPIO[port].
IC = pinmask;
static void Chip_GPIO_SetPinDIRInput(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin)
Definition: gpio_nss.h:176
static uint32_t Chip_GPIO_GetEnabledInts(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:490
Definition: gpio_nss.h:119
static void Chip_GPIO_SetPortOutHigh(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinMask)
Definition: gpio_nss.h:282
Definition: gpio_nss.h:118
static void Chip_GPIO_SetPortToggle(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinMask)
Definition: gpio_nss.h:332
void Chip_GPIO_SetPortDIR(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinMask, bool outSet)
static void Chip_GPIO_SetPinDIROutput(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin)
Definition: gpio_nss.h:165
static uint32_t Chip_GPIO_GetPortDIR(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:247
__I uint32_t RIS
Definition: gpio_nss.h:105
static uint32_t Chip_GPIO_GetModeHighLow(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:457
__IO uint32_t IBE
Definition: gpio_nss.h:102
static void Chip_GPIO_SetPortDIROutput(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinMask)
Definition: gpio_nss.h:210
#define __IO
Definition: core_cm0plus.h:167
static void Chip_GPIO_SetPortValue(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t value)
Definition: gpio_nss.h:258
#define __I
Definition: core_cm0plus.h:164
static void Chip_GPIO_SetPinOutHigh(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin)
Definition: gpio_nss.h:294
static void Chip_GPIO_DisableInt(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:479
__I uint32_t MIS
Definition: gpio_nss.h:106
static void Chip_GPIO_SetModeHigh(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:430
static void Chip_GPIO_SetPinToggle(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin)
Definition: gpio_nss.h:344
static void Chip_GPIO_SetPinModeLevel(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:366
static void Chip_GPIO_SetModeLow(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:443
static bool Chip_GPIO_GetPinDIR(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin)
Definition: gpio_nss.h:197
static bool Chip_GPIO_GetPinState(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin)
Definition: gpio_nss.h:154
__IO uint32_t IS
Definition: gpio_nss.h:101
static uint32_t Chip_GPIO_GetPortValue(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:269
void Chip_GPIO_SetPinDIR(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin, bool output)
static void Chip_GPIO_ClearInts(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:523
Definition: gpio_nss.h:116
__O uint32_t IC
Definition: gpio_nss.h:107
GPIO_INT_MODE_T
Definition: gpio_nss.h:115
void Chip_GPIO_SetupPinInt(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin, GPIO_INT_MODE_T mode)
static void Chip_GPIO_SetPinState(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin, bool setting)
Definition: gpio_nss.h:142
__IO uint32_t IEV
Definition: gpio_nss.h:103
Definition: gpio_nss.h:117
#define __O
Definition: core_cm0plus.h:166
__IO uint32_t DATA[4096]
Definition: gpio_nss.h:98
Definition: gpio_nss.h:97
static uint32_t Chip_GPIO_GetEdgeModeDir(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:417
static void Chip_GPIO_EnableInt(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:468
static uint32_t Chip_GPIO_GetRawInts(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:501
void Chip_GPIO_DeInit(NSS_GPIO_T *pGPIO)
static void Chip_GPIO_SetPinOutLow(NSS_GPIO_T *pGPIO, uint8_t port, uint8_t pin)
Definition: gpio_nss.h:319
static uint32_t Chip_GPIO_GetMaskedInts(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:512
Definition: gpio_nss.h:120
__IO uint32_t DIR
Definition: gpio_nss.h:100
void Chip_GPIO_Init(NSS_GPIO_T *pGPIO)
static uint32_t Chip_GPIO_IsLevelEnabled(NSS_GPIO_T *pGPIO, uint8_t port)
Definition: gpio_nss.h:380
static void Chip_GPIO_SetEdgeModeSingle(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:402
static void Chip_GPIO_SetPortDIRInput(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinMask)
Definition: gpio_nss.h:223
static void Chip_GPIO_SetEdgeModeBoth(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:391
static void Chip_GPIO_SetPortOutLow(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinMask)
Definition: gpio_nss.h:307
__IO uint32_t IE
Definition: gpio_nss.h:104
static void Chip_GPIO_SetPinModeEdge(NSS_GPIO_T *pGPIO, uint8_t port, uint32_t pinmask)
Definition: gpio_nss.h:355