diff --git a/rpi_pico/epaper_example/CMakeLists.txt b/rpi_pico/epaper_example/CMakeLists.txt index 21668a5..aaf5ead 100644 --- a/rpi_pico/epaper_example/CMakeLists.txt +++ b/rpi_pico/epaper_example/CMakeLists.txt @@ -1,3 +1,31 @@ +# == DO NEVER EDIT THE NEXT LINES for Raspberry Pi Pico VS Code Extension to work == +if(WIN32) + set(USERHOME $ENV{USERPROFILE}) +else() + set(USERHOME $ENV{HOME}) +endif() +set(sdkVersion 2.0.0) +set(toolchainVersion 13_2_Rel1) +set(picotoolVersion 2.0.0) +set(picoVscode ${USERHOME}/.pico-sdk/cmake/pico-vscode.cmake) +if (EXISTS ${picoVscode}) + include(${picoVscode}) +endif() +# ==================================================================================== +# == DO NEVER EDIT THE NEXT LINES for Raspberry Pi Pico VS Code Extension to work == +if(WIN32) + set(USERHOME $ENV{USERPROFILE}) +else() + set(USERHOME $ENV{HOME}) +endif() +set(sdkVersion 2.0.0) +set(toolchainVersion 13_2_Rel1) +set(picotoolVersion 2.0.0) +set(picoVscode ${USERHOME}/.pico-sdk/cmake/pico-vscode.cmake) +if (EXISTS ${picoVscode}) + include(${picoVscode}) +endif() +# ==================================================================================== # Generated Cmake Pico project file cmake_minimum_required(VERSION 3.13) diff --git a/rpi_pico/epaper_example/epaper_example.c b/rpi_pico/epaper_example/epaper_example.c index b25375a..9f96035 100644 --- a/rpi_pico/epaper_example/epaper_example.c +++ b/rpi_pico/epaper_example/epaper_example.c @@ -11,6 +11,9 @@ #define PIN_CS 17 #define PIN_SCK 18 #define PIN_MOSI 19 +#define PIN_BUSY 22 +#define PIN_DC 21 +#define PIN_RST 20 // I2C defines // This example will use I2C0 on GPIO8 (SDA) and GPIO9 (SCL) running at 400KHz. @@ -29,31 +32,11 @@ BBEPDISP bbep; // the main display structure int main() { - stdio_init_all(); - - // SPI initialisation. This example will use SPI at 1MHz. - spi_init(SPI_PORT, 1000*1000); - gpio_set_function(PIN_MISO, GPIO_FUNC_SPI); - gpio_set_function(PIN_CS, GPIO_FUNC_SIO); - gpio_set_function(PIN_SCK, GPIO_FUNC_SPI); - gpio_set_function(PIN_MOSI, GPIO_FUNC_SPI); - - // Chip select is active-low, so we'll initialise it to a driven-high state - gpio_set_dir(PIN_CS, GPIO_OUT); - gpio_put(PIN_CS, 1); - // For more examples of SPI use see https://github.com/raspberrypi/pico-examples/tree/master/spi - - // I2C Initialisation. Using it at 400Khz. - i2c_init(I2C_PORT, 400*1000); - - gpio_set_function(I2C_SDA, GPIO_FUNC_I2C); - gpio_set_function(I2C_SCL, GPIO_FUNC_I2C); - gpio_pull_up(I2C_SDA); - gpio_pull_up(I2C_SCL); - // For more examples of I2C use see https://github.com/raspberrypi/pico-examples/tree/master/i2c - - while (true) { - printf("Hello, world!\n"); - sleep_ms(1000); - } -} + bbepSetPanelType(&bbep, EPD295_128x296); // must set this first + bbepInitIO(&bbep, PIN_DC, PIN_RST, PIN_BUSY, PIN_CS, PIN_MOSI, PIN_SCK, 8000000); + bbepFill(&bbep, BBEP_WHITE, 0); + bbepWriteString(&bbep, 0, 0, "RPI Pico2!", FONT_12x16, BBEP_BLACK); + bbepRefresh(&bbep, REFRESH_FULL); + bbepWaitBusy(&bbep); + bbepSleep(&bbep, DEEP_SLEEP); +} /* main() */