Structure changing
This commit is contained in:
parent
60c580b634
commit
2ac496daf4
@ -25,6 +25,7 @@ add_compile_definitions(HSE_VALUE=8000000)
|
||||
|
||||
include_directories(
|
||||
${PROJECT_SOURCE_DIR}/bsp
|
||||
${PROJECT_SOURCE_DIR}/app
|
||||
${PROJECT_SOURCE_DIR}/lib
|
||||
${PROJECT_SOURCE_DIR}/lib/CMSIS
|
||||
${PROJECT_SOURCE_DIR}/lib/STM32F4xx
|
||||
@ -34,6 +35,7 @@ include_directories(
|
||||
file(GLOB_RECURSE SOURCES
|
||||
"main.c"
|
||||
"bsp/bsp.c"
|
||||
"app/app.c"
|
||||
"system_stm32f4xx.c"
|
||||
"startup_stm32f4xx.S"
|
||||
"lib/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_gpio.c"
|
||||
|
30
app/app.c
30
app/app.c
@ -0,0 +1,30 @@
|
||||
#include "app.h"
|
||||
|
||||
const uint16_t leds = GPIO_Pin_0 | GPIO_Pin_7 | GPIO_Pin_14;
|
||||
const uint16_t leds_arr[4] = {GPIO_Pin_0, GPIO_Pin_7, GPIO_Pin_14};
|
||||
|
||||
void delay(uint32_t ms) {
|
||||
ms *= 3360;
|
||||
while(ms--) {
|
||||
__NOP();
|
||||
}
|
||||
}
|
||||
|
||||
void loop() {
|
||||
static uint32_t counter = 0;
|
||||
|
||||
++counter;
|
||||
|
||||
GPIO_ResetBits(GPIOB, leds);
|
||||
GPIO_SetBits(GPIOB, leds_arr[counter % 3]);
|
||||
|
||||
delay(250);
|
||||
}
|
||||
|
||||
void app() {
|
||||
|
||||
while(1) {
|
||||
loop();
|
||||
};
|
||||
}
|
||||
|
@ -0,0 +1,7 @@
|
||||
#ifndef APP_H
|
||||
#define APP_H
|
||||
#include "bsp.h"
|
||||
|
||||
void app();
|
||||
|
||||
#endif
|
17
bsp/bsp.c
17
bsp/bsp.c
@ -0,0 +1,17 @@
|
||||
#include "bsp.h"
|
||||
|
||||
const uint16_t LEDS = GPIO_Pin_0 | GPIO_Pin_7 | GPIO_Pin_14;
|
||||
const uint16_t LED[4] = {GPIO_Pin_0, GPIO_Pin_7, GPIO_Pin_14};
|
||||
|
||||
void board_init() {
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
|
||||
GPIO_InitTypeDef gpio;
|
||||
GPIO_StructInit(&gpio);
|
||||
gpio.GPIO_Mode = GPIO_Mode_OUT;
|
||||
gpio.GPIO_Pin = LEDS;
|
||||
GPIO_Init(GPIOB, &gpio);
|
||||
|
||||
GPIO_SetBits(GPIOB, LEDS);
|
||||
}
|
||||
|
||||
|
11
bsp/bsp.h
11
bsp/bsp.h
@ -1,12 +1,11 @@
|
||||
#ifndef BSP_H
|
||||
#define BSP_H
|
||||
|
||||
#include "stm32f4xx.h"
|
||||
#include "stm32f4xx_gpio.h"
|
||||
#include "stm32f4xx_rcc.h"
|
||||
#include "stm32f4xx_usart.h"
|
||||
|
||||
const uint16_t LEDS = GPIO_Pin_0 | GPIO_Pin_7 | GPIO_Pin_14;
|
||||
const uint16_t LED[4] = {GPIO_Pin_0, GPIO_Pin_7, GPIO_Pin_14};
|
||||
void board_init();
|
||||
|
||||
void init();
|
||||
void loop();
|
||||
|
||||
void delay();
|
||||
#endif
|
||||
|
33
main.c
33
main.c
@ -1,38 +1,13 @@
|
||||
#include "bsp.h"
|
||||
#include "app.h"
|
||||
|
||||
|
||||
int main() {
|
||||
init();
|
||||
|
||||
do {
|
||||
loop();
|
||||
} while (1);
|
||||
board_init();
|
||||
app();
|
||||
}
|
||||
|
||||
void init() {
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
|
||||
GPIO_InitTypeDef gpio;
|
||||
GPIO_StructInit(&gpio);
|
||||
gpio.GPIO_Mode = GPIO_Mode_OUT;
|
||||
gpio.GPIO_Pin = LEDS;
|
||||
GPIO_Init(GPIOB, &gpio);
|
||||
|
||||
GPIO_SetBits(GPIOB, LEDS);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
static uint32_t counter = 0;
|
||||
|
||||
++counter;
|
||||
|
||||
GPIO_ResetBits(GPIOB, LEDS);
|
||||
GPIO_SetBits(GPIOB, LED[counter % 3]);
|
||||
|
||||
delay(250);
|
||||
}
|
||||
|
||||
void delay(uint32_t ms) {
|
||||
ms *= 3360;
|
||||
while(ms--) {
|
||||
__NOP();
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user