initial commit
This commit is contained in:
13
source/firmware/arch/stm32f4xx/board/board.h
Executable file
13
source/firmware/arch/stm32f4xx/board/board.h
Executable file
@@ -0,0 +1,13 @@
|
||||
/*! \file board.h
|
||||
* \author tkl
|
||||
* \date Feb 13, 2012
|
||||
* \brief Header file of the board distributor.
|
||||
*/
|
||||
#ifndef BOARD_H_
|
||||
#define BOARD_H_
|
||||
|
||||
#ifdef BOARD_STM32F4_DISCOVERY
|
||||
#include "bsp_stm32f4-discovery.h"
|
||||
#endif
|
||||
|
||||
#endif /* BOARD_H_ */
|
6
source/firmware/arch/stm32f4xx/board/board.mk
Executable file
6
source/firmware/arch/stm32f4xx/board/board.mk
Executable file
@@ -0,0 +1,6 @@
|
||||
INCLUDES += firmware/arch/stm32f4xx/board
|
||||
DOC_SRC += firmware/arch/stm32f4xx/board
|
||||
|
||||
ifeq ($(BOARD), stm32f4-discovery)
|
||||
include firmware/arch/stm32f4xx/board/stm32f4-discovery/stm32f4-discovery.mk
|
||||
endif
|
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* bsp_stm32f4-discovery.c
|
||||
*
|
||||
* Created on: May 7, 2012
|
||||
* Author: tkl
|
||||
*/
|
||||
|
||||
#include "bsp_stm32f4-discovery.h"
|
||||
#include "usbd_cdc_vcp.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
volatile int32_t ITM_RxBuffer;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
void board_init(void) {
|
||||
SystemInit();
|
||||
NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0);
|
||||
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);
|
||||
SysTick_CLKSourceConfig(RCC_SYSCLKSource_PLLCLK);
|
||||
|
||||
USBD_Init(&USB_OTG_dev, USB_OTG_FS_CORE_ID, &USR_desc, &USBD_CDC_cb, &USR_cb);
|
||||
}
|
187
source/firmware/arch/stm32f4xx/board/stm32f4-discovery/bsp_stm32f4-discovery.h
Executable file
187
source/firmware/arch/stm32f4xx/board/stm32f4-discovery/bsp_stm32f4-discovery.h
Executable file
@@ -0,0 +1,187 @@
|
||||
/*! \file bsp_stm32f4-discovery.h
|
||||
* \author tkl
|
||||
* \date Mai 7, 2012
|
||||
* \brief Header file of the board definition for the STM32F4-Discovery board.
|
||||
*/
|
||||
#ifndef BSP_STM32F4_DISCOVERY_H_
|
||||
#define BSP_STM32F4_DISCOVERY_H_
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include "gpio.h"
|
||||
#include "uart.h"
|
||||
#include "ringbuffer.h"
|
||||
#include "stm32f4xx.h"
|
||||
#include "stm32f4_gpio.h"
|
||||
#include "stm32_sys_tick.h"
|
||||
|
||||
#include "usb_vport.h"
|
||||
|
||||
// SYSTEM TICK
|
||||
static const enum stm32_sys_tick_time_base stm23_sys_tick_time_base =
|
||||
STM32_SYS_TICK_TIME_BASE_MS;
|
||||
static const struct stm32_sys_tick stm32_sys_tick = {
|
||||
&stm23_sys_tick_time_base,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static const struct loki_timer timer_1 = {
|
||||
(void*)&stm32_sys_tick,
|
||||
&timer_fp
|
||||
};
|
||||
|
||||
// USB
|
||||
static char console_linear_buffer[80];
|
||||
static struct ringbuffer console_buffer = {
|
||||
console_linear_buffer,
|
||||
console_linear_buffer,
|
||||
console_linear_buffer,
|
||||
sizeof(console_linear_buffer),
|
||||
0
|
||||
};
|
||||
static const stm32_usb_vport_t stm32_usb_vport;
|
||||
static const struct uart uart_0 = {
|
||||
&stm32_usb_vport,
|
||||
&usb_vport_fp,
|
||||
&console_buffer
|
||||
};
|
||||
|
||||
// STATUS LED
|
||||
//! \brief Status Led is forwarded to led 4.
|
||||
#define led_1 led_4
|
||||
|
||||
// LED 3
|
||||
static const GPIO_InitTypeDef stm32_f4_discovery_led_3_gpio = {
|
||||
GPIO_Pin_12,
|
||||
GPIO_Mode_OUT,
|
||||
GPIO_Speed_100MHz,
|
||||
GPIO_OType_PP,
|
||||
GPIO_PuPd_NOPULL
|
||||
};
|
||||
|
||||
static const struct stm32f4_gpio stm32_f4_discovery_led_3 = {
|
||||
GPIOD,
|
||||
&stm32_f4_discovery_led_3_gpio,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static const struct gpio led_3 = {
|
||||
(void*)&stm32_f4_discovery_led_3,
|
||||
&gpio_fp
|
||||
};
|
||||
|
||||
// LED 4
|
||||
static const GPIO_InitTypeDef stm32_f4_discovery_led_4_gpio = {
|
||||
GPIO_Pin_13,
|
||||
GPIO_Mode_OUT,
|
||||
GPIO_Speed_100MHz,
|
||||
GPIO_OType_PP,
|
||||
GPIO_PuPd_NOPULL
|
||||
};
|
||||
|
||||
static const struct stm32f4_gpio stm32_f4_discovery_led_4 = {
|
||||
GPIOD,
|
||||
&stm32_f4_discovery_led_4_gpio,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static const struct gpio led_4 = {
|
||||
(void*)&stm32_f4_discovery_led_4,
|
||||
&gpio_fp
|
||||
};
|
||||
|
||||
// LED 5
|
||||
static const GPIO_InitTypeDef stm32_f4_discovery_led_5_gpio = {
|
||||
GPIO_Pin_14,
|
||||
GPIO_Mode_OUT,
|
||||
GPIO_Speed_100MHz,
|
||||
GPIO_OType_PP,
|
||||
GPIO_PuPd_NOPULL
|
||||
};
|
||||
|
||||
static const struct stm32f4_gpio stm32_f4_discovery_led_5 = {
|
||||
GPIOD,
|
||||
&stm32_f4_discovery_led_5_gpio,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static const struct gpio led_5 = {
|
||||
(void*)&stm32_f4_discovery_led_5,
|
||||
&gpio_fp
|
||||
};
|
||||
|
||||
// LED 6
|
||||
static const GPIO_InitTypeDef stm32_f4_discovery_led_6_gpio = {
|
||||
GPIO_Pin_15,
|
||||
GPIO_Mode_OUT,
|
||||
GPIO_Speed_100MHz,
|
||||
GPIO_OType_PP,
|
||||
GPIO_PuPd_NOPULL
|
||||
};
|
||||
|
||||
static const struct stm32f4_gpio stm32_f4_discovery_led_6 = {
|
||||
GPIOD,
|
||||
&stm32_f4_discovery_led_6_gpio,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static const struct gpio led_6 = {
|
||||
(void*)&stm32_f4_discovery_led_6,
|
||||
&gpio_fp
|
||||
};
|
||||
|
||||
// BUTTON
|
||||
static const GPIO_InitTypeDef stm32_f4_discovery_user_button_gpio = {
|
||||
GPIO_Pin_0,
|
||||
GPIO_Mode_IN,
|
||||
GPIO_Speed_100MHz,
|
||||
GPIO_OType_PP,
|
||||
GPIO_PuPd_NOPULL
|
||||
};
|
||||
|
||||
static const EXTI_InitTypeDef stm32_f4_discovery_user_button_exti = {
|
||||
EXTI_Line0,
|
||||
EXTI_Mode_Interrupt,
|
||||
EXTI_Trigger_Rising_Falling,
|
||||
ENABLE
|
||||
};
|
||||
|
||||
static const NVIC_InitTypeDef stm32_f4_discovery_user_button_nvic = {
|
||||
EXTI0_IRQn,
|
||||
0x0F,
|
||||
0x0F,
|
||||
ENABLE
|
||||
};
|
||||
|
||||
static const struct stm32f4_gpio stm32_f4_discovery_user_button = {
|
||||
GPIOA,
|
||||
&stm32_f4_discovery_user_button_gpio,
|
||||
&stm32_f4_discovery_user_button_exti,
|
||||
&stm32_f4_discovery_user_button_nvic,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
static const struct gpio user_button = {
|
||||
(void*)&stm32_f4_discovery_user_button,
|
||||
&gpio_fp
|
||||
};
|
||||
|
||||
//! \brief Setup the hardware of the stm32f4-discovery board.
|
||||
void board_init(void);
|
||||
|
||||
#endif /* BSP_STM32F4_DISCOVERY_H_ */
|
@@ -0,0 +1,3 @@
|
||||
SUB_FOLDER += firmware/arch/stm32f4xx/board/stm32f4-discovery
|
||||
INCLUDES += firmware/arch/stm32f4xx/board/stm32f4-discovery
|
||||
DOC_SRC += firmware/arch/stm32f4xx/board/stm32f4-discovery
|
Reference in New Issue
Block a user