GadgetSeed  0.9.6
stm32f4xx_nucleo_led.c ファイル

STM32F4XX-Nucleo LEDドライバ [詳解]

#include "device.h"
stm32f4xx_nucleo_led.c の依存先関係図:

[ソースコード]

マクロ定義

#define RCC_AHB1ENR   (*(volatile unsigned long *)0x40023830)
 
#define RCC_AHB1LPENR   (*(volatile unsigned long *)0x40023850)
 
#define RCC_AHB1_BIT_GPIOD   (1<<3)
 
#define GPIOA_BASE   (0x40020000 + 0x000)
 
#define GPIOA   ((st_reg_gpio *)GPIOA_BASE)
 
#define GPIO_MODE_BIT_IN   0x00
 
#define GPIO_MODE_BIT_OUT   0x01
 
#define GPIO_MODE_BIT_AF   0x02
 
#define GPIO_MODE_BIT_AN   0x03
 
#define GPIO_MODE_BIT_ALL   0x03
 
#define GPIO_OTYPE_BIT_PP   0x00
 
#define GPIO_OTYPE_BIT_OD   0x01
 
#define GPIO_OSPEED_BIT_ALL   0x03
 
#define GPIO_OSPEED_BIT_50MHz   0x02
 
#define GPIO_OSPEED_BIT_100MHz   0x03
 
#define GPIO_PUPDR_BIT_NOPULL   0x00
 
#define GPIO_PUPDR_BIT_PUP   0x01
 
#define GPIO_PUPDR_BIT_PDOWN   0x02
 
#define GPIO_PUPDR_BIT_ALL   0x03
 
#define GPIO_AFR_BIT_I2C123   0x04
 
#define GPIO_AFR_BIT_USART123   0x07
 
#define GPIO_AFR_BIT_ALL   0x0F
 
#define POS_LD2   5
 
#define BIT_LD2   (1 << POS_LD2)
 

型定義

typedef struct st_reg_gpio st_reg_gpio
 

関数

static void init_pin (st_reg_gpio *gpio, int pin)
 
static int led_register (struct st_device *dev, char *param)
 
static int led_getc (struct st_device *dev, unsigned char *rd)
 
static int led_putc (struct st_device *dev, unsigned char ch)
 
static int led_suspend (struct st_device *dev)
 
static int led_resume (struct st_device *dev)
 

変数

static unsigned long flg_led_on
 
const struct st_device led_device
 LEDドライバ [詳解]
 

詳解

STM32F4XX-Nucleo LEDドライバ

日付
2015.08.02
著者
Takashi SHUDO

stm32f4xx_nucleo_led.c に定義があります。

変数詳解

◆ led_device

const struct st_device led_device
初期値:
= {
.name = DEF_DEV_NAME_LED,
.explan = "STM32F401RE-Nucleo LED",
.register_dev = led_register,
.getc = led_getc,
.putc = led_putc,
.suspend = led_suspend,
.resume = led_resume,
}

LEDドライバ

stm32f4xx_nucleo_led.c124 行目に定義があります。