Setup libraries and drivers correctly for CMake

pull/1/head
Jonathan Williamson 2021-01-16 15:02:18 +00:00
rodzic 3e043bd39a
commit 9f31765c98
7 zmienionych plików z 24 dodań i 16 usunięć

Wyświetl plik

@ -10,5 +10,8 @@ set(CMAKE_CXX_STANDARD 17)
# Initialize the SDK
pico_sdk_init()
# Example projects
add_subdirectory(drivers)
add_subdirectory(libraries)
# Example Pico Pack projects
add_subdirectory(pack)

Wyświetl plik

@ -0,0 +1 @@
add_subdirectory(st7789)

Wyświetl plik

@ -0,0 +1,4 @@
add_library(st7789 st7789.cpp)
# Pull in pico libraries that we need
target_link_libraries(st7789 pico_stdlib hardware_spi hardware_pwm hardware_dma)

Wyświetl plik

@ -0,0 +1 @@
add_subdirectory(pico_graphics)

Wyświetl plik

@ -0,0 +1 @@
add_library(pico_graphics pico_graphics.cpp)

Wyświetl plik

@ -3,12 +3,10 @@ add_executable(
demo.cpp
image_data.cpp
pico_display.cpp
../../../drivers/st7789/st7789.cpp
../../../libraries/pico_graphics/pico_graphics.cpp
)
# Pull in pico libraries that we need
target_link_libraries(display pico_stdlib hardware_spi hardware_pwm hardware_dma)
target_link_libraries(display pico_stdlib hardware_spi hardware_pwm hardware_dma st7789 pico_graphics)
# create map/bin/hex file etc.
pico_add_extra_outputs(display)

Wyświetl plik

@ -30,17 +30,17 @@
uint32_t dma_channel;
static inline void unicorn_jetpack_program_init(PIO pio, uint sm, uint offset) {
pio_gpio_select(pio, LED_DATA);
pio_gpio_select(pio, LED_CLOCK);
pio_gpio_select(pio, LED_LATCH);
pio_gpio_select(pio, LED_BLANK);
pio_gpio_select(pio, ROW_0);
pio_gpio_select(pio, ROW_1);
pio_gpio_select(pio, ROW_2);
pio_gpio_select(pio, ROW_3);
pio_gpio_select(pio, ROW_4);
pio_gpio_select(pio, ROW_5);
pio_gpio_select(pio, ROW_6);
pio_gpio_init(pio, LED_DATA);
pio_gpio_init(pio, LED_CLOCK);
pio_gpio_init(pio, LED_LATCH);
pio_gpio_init(pio, LED_BLANK);
pio_gpio_init(pio, ROW_0);
pio_gpio_init(pio, ROW_1);
pio_gpio_init(pio, ROW_2);
pio_gpio_init(pio, ROW_3);
pio_gpio_init(pio, ROW_4);
pio_gpio_init(pio, ROW_5);
pio_gpio_init(pio, ROW_6);
pio_sm_set_consecutive_pindirs(pio, sm, LED_DATA, 4, true);
pio_sm_set_consecutive_pindirs(pio, sm, ROW_6, 7, true);
@ -62,7 +62,7 @@ static inline void unicorn_jetpack_program_init(PIO pio, uint sm, uint offset) {
//sm_config_set_clkdiv(&c, 4);
pio_sm_init(pio, sm, offset, &c);
pio_sm_enable(pio, sm, true);
pio_sm_set_enabled(pio, sm, true);
}
// pixel data is stored as a stream of bits delivered in the