Data Structures

struct  KPinDesc
 

Macros

#define K_NUM_PINS   (16 * 5)
 
#define K_LED_GREEN   K_LED_0
 
#define K_LED_0   YOTTA_CFG_HARDWARE_PINS_LED1
 
#define K_LED_ORANGE   K_LED_1
 
#define K_LED_1   YOTTA_CFG_HARDWARE_PINS_LED2
 
#define K_LED_RED   K_LED_2
 
#define K_LED_2   YOTTA_CFG_HARDWARE_PINS_LED3
 
#define K_LED_BLUE   K_LED_3
 
#define K_LED_3   YOTTA_CFG_HARDWARE_PINS_LED4
 
#define K_LED_COUNT   4
 
#define K_BUTTON_0   YOTTA_CFG_HARDWARE_PINS_USER_BUTTON
 
#define STM32F4_PIN_OFFSET(p)   ((p) % 16)
 
#define STM32F4_PIN_MASK(p)   (1 << STM32F4_PIN_OFFSET(p))
 
#define STM32F4_PIN_GPIO(p)   ((GPIO_TypeDef *) (GPIOA_BASE + (((p) / 16) * 0x400)))
 
#define STM32F4_PIN_AHB1ENR_BIT(p)   (1 << ((p) / 16))
 
#define CHECK_BIT(src, bit)   (READ_BIT((src), (bit)) == (bit))
 
#define CHECK_SET_BIT(dest, bit)
 

Enumerations

enum  KPin {
  PA0 = 0, PA1, PA2, PA3,
  PA4, PA5, PA6, PA7,
  PA8, PA9, PA10, PA11,
  PA12, PA13, PA14, PA15,
  PB0, PB1, PB2, PB3,
  PB4, PB5, PB6, PB7,
  PB8, PB9, PB10, PB11,
  PB12, PB13, PB14, PB15,
  PC0, PC1, PC2, PC3,
  PC4, PC5, PC6, PC7,
  PC8, PC9, PC10, PC11,
  PC12, PC13, PC14, PC15,
  PD0, PD1, PD2, PD3,
  PD4, PD5, PD6, PD7,
  PD8, PD9, PD10, PD11,
  PD12, PD13, PD14, PD15,
  PE0, PE1, PE2, PE3,
  PE4, PE5, PE6, PE7,
  PE8, PE9, PE10, PE11,
  PE12, PE13, PE14, PE15
}
 

Functions

void kprv_gpio_alt_config (GPIO_TypeDef *GPIOx, uint16_t GPIO_PinSource, uint8_t GPIO_AF)
 
void k_gpio_init (int pin, KGPIOMode mode, KGPIOPullup pullup)
 
unsigned int k_gpio_read (int pin)
 
void k_gpio_write (int pin, unsigned int val)
 

Macro Definition Documentation

#define CHECK_BIT (   src,
  bit 
)    (READ_BIT((src), (bit)) == (bit))
#define CHECK_SET_BIT (   dest,
  bit 
)
Value:
do { \
uint32_t tmpreg = READ_BIT(dest, bit); \
if (!tmpreg) { \
SET_BIT(dest, bit); \
/* Delay after an RCC peripheral clock enabling */ \
tmpreg = READ_BIT(dest, bit);\
} \
} while(0)
#define K_BUTTON_0   YOTTA_CFG_HARDWARE_PINS_USER_BUTTON
#define K_LED_0   YOTTA_CFG_HARDWARE_PINS_LED1
#define K_LED_1   YOTTA_CFG_HARDWARE_PINS_LED2
#define K_LED_2   YOTTA_CFG_HARDWARE_PINS_LED3
#define K_LED_3   YOTTA_CFG_HARDWARE_PINS_LED4
#define K_LED_BLUE   K_LED_3
#define K_LED_COUNT   4
#define K_LED_GREEN   K_LED_0
#define K_LED_ORANGE   K_LED_1
#define K_LED_RED   K_LED_2
#define K_NUM_PINS   (16 * 5)
#define STM32F4_PIN_AHB1ENR_BIT (   p)    (1 << ((p) / 16))
#define STM32F4_PIN_GPIO (   p)    ((GPIO_TypeDef *) (GPIOA_BASE + (((p) / 16) * 0x400)))
#define STM32F4_PIN_MASK (   p)    (1 << STM32F4_PIN_OFFSET(p))
#define STM32F4_PIN_OFFSET (   p)    ((p) % 16)

Enumeration Type Documentation

enum KPin
Enumerator
PA0 
PA1 
PA2 
PA3 
PA4 
PA5 
PA6 
PA7 
PA8 
PA9 
PA10 
PA11 
PA12 
PA13 
PA14 
PA15 
PB0 
PB1 
PB2 
PB3 
PB4 
PB5 
PB6 
PB7 
PB8 
PB9 
PB10 
PB11 
PB12 
PB13 
PB14 
PB15 
PC0 
PC1 
PC2 
PC3 
PC4 
PC5 
PC6 
PC7 
PC8 
PC9 
PC10 
PC11 
PC12 
PC13 
PC14 
PC15 
PD0 
PD1 
PD2 
PD3 
PD4 
PD5 
PD6 
PD7 
PD8 
PD9 
PD10 
PD11 
PD12 
PD13 
PD14 
PD15 
PE0 
PE1 
PE2 
PE3 
PE4 
PE5 
PE6 
PE7 
PE8 
PE9 
PE10 
PE11 
PE12 
PE13 
PE14 
PE15 

Function Documentation

void k_gpio_init ( int  pin,
KGPIOMode  mode,
KGPIOPullup  pullup 
)
unsigned int k_gpio_read ( int  pin)
void k_gpio_write ( int  pin,
unsigned int  val 
)
void kprv_gpio_alt_config ( GPIO_TypeDef *  GPIOx,
uint16_t  GPIO_PinSource,
uint8_t  GPIO_AF 
)