led blink example

* led blink example

* restore tests

* Update FURI_and_examples.md
This commit is contained in:
coreglitch
2020-08-26 07:56:33 +06:00
committed by GitHub
parent 2e023ffcda
commit bee159f435
14 changed files with 211 additions and 101 deletions

View File

@@ -17,7 +17,7 @@ typedef enum {
} GpioMode;
typedef struct {
uint32_t port;
const char* port;
uint32_t pin;
GpioMode mode;
} GpioPin;
@@ -27,9 +27,9 @@ void app_gpio_init(GpioPin gpio, GpioMode mode);
inline void app_gpio_write(GpioPin gpio, bool state) {
if(gpio.pin != 0) {
if(state) {
printf("[GPIO] %d:%d on\n", gpio.port, gpio.pin);
printf("[GPIO] %s%d on\n", gpio.port, gpio.pin);
} else {
printf("[GPIO] %d:%d off\n", gpio.port, gpio.pin);
printf("[GPIO] %s%d off\n", gpio.port, gpio.pin);
}
} else {
printf("[GPIO] no pin\n");
@@ -58,4 +58,27 @@ inline void app_tim_pulse(uint32_t width) {
inline void app_tim_stop() {
printf("[TIM] stop\n");
}
}
#define GPIOA "PA"
#define GPIOB "PB"
#define GPIOC "PC"
#define GPIOD "PD"
#define GPIOE "PE"
#define GPIO_PIN_0 0
#define GPIO_PIN_1 1
#define GPIO_PIN_2 2
#define GPIO_PIN_3 3
#define GPIO_PIN_4 4
#define GPIO_PIN_5 5
#define GPIO_PIN_6 6
#define GPIO_PIN_7 7
#define GPIO_PIN_8 8
#define GPIO_PIN_9 9
#define GPIO_PIN_10 10
#define GPIO_PIN_11 11
#define GPIO_PIN_12 12
#define GPIO_PIN_13 13
#define GPIO_PIN_14 14
#define GPIO_PIN_15 15

View File

@@ -25,6 +25,8 @@ Src/main.c
CPP_SOURCES = ../core/app.cpp
# Core
C_SOURCES += ../core/debug.c
C_SOURCES += ../core/furi.c
C_SOURCES += ../core/furi_ac.c
@@ -32,9 +34,28 @@ C_SOURCES += Src/flipper_hal.c
C_SOURCES += Src/lo_os.c
C_SOURCES += Src/lo_hal.c
# C defines
C_DEFS = \
-DUSE_HAL_DRIVER \
-DSTM32L476xx \
-DBUTON_INVERT=false \
-DDEBUG_UART=huart1
# System applications
ifeq ($(TEST), 1)
C_SOURCES += ../applications/tests/furiac_test.c
C_SOURCES += ../applications/tests/furi_record_test.c
C_SOURCES += ../applications/tests/test_index.c
C_DEFS += -DTEST
endif
# User application
ifeq ($(EXAMPLE_BLINK), 1)
C_SOURCES += ../applications/examples/blink.c
C_DEFS += -DEXAMPLE_BLINK
endif
#######################################
# binaries
@@ -52,12 +73,6 @@ BIN = $(CP) -O binary -S
# CFLAGS
#######################################
# C defines
C_DEFS = \
-DUSE_HAL_DRIVER \
-DSTM32L476xx \
-DBUTON_INVERT=false \
-DDEBUG_UART=huart1
# C includes
C_INCLUDES = \
@@ -90,6 +105,14 @@ LDFLAGS = $(LIBDIR) $(LIBS) -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref -Wl,--gc-
# default action: build all
all: $(BUILD_DIR)/$(TARGET)
example_blink:
EXAMPLE_BLINK=1 make
$(BUILD_DIR)/$(TARGET)
test:
TEST=1 make
$(BUILD_DIR)/$(TARGET)
#######################################
# build the application

View File

@@ -13,15 +13,15 @@ void app_gpio_init(GpioPin gpio, GpioMode mode) {
switch(mode) {
case GpioModeInput:
printf("[GPIO] %d:%d input\n", gpio.port, gpio.pin);
printf("[GPIO] %s%d input\n", gpio.port, gpio.pin);
break;
case GpioModeOutput:
printf("[GPIO] %d:%d push pull\n", gpio.port, gpio.pin);
printf("[GPIO] %s%d push pull\n", gpio.port, gpio.pin);
break;
case GpioModeOpenDrain:
printf("[GPIO] %d:%d open drain\n", gpio.port, gpio.pin);
printf("[GPIO] %s%d open drain\n", gpio.port, gpio.pin);
break;
}

View File

@@ -6,7 +6,7 @@
#include <signal.h>
void osDelay(uint32_t ms) {
printf("[DELAY] %d ms\n", ms);
// printf("[DELAY] %d ms\n", ms);
usleep(ms * 1000);
}