From 76d0db4dc32c5b77fa9622a408838ed5b85af68f Mon Sep 17 00:00:00 2001 From: Maƫl Gassmann Date: Sat, 7 Sep 2024 23:59:49 +0200 Subject: [~] Fixed screen configuration mistake --- components/screen/screen.c | 10 ++++++---- main/main.c | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/components/screen/screen.c b/components/screen/screen.c index 99f74b0..8d29265 100644 --- a/components/screen/screen.c +++ b/components/screen/screen.c @@ -77,10 +77,12 @@ void configure_screen(struct Screen* screen) for (uint8_t i = 0; i <= 3; ++i) { - mcp_set_mode(screen->mcp, screen->nixies[i].reg, screen->nixies[i].D, MCP_GPIO_OUTPUT); - mcp_set_mode(screen->mcp, screen->nixies[i].reg, screen->nixies[i].C, MCP_GPIO_OUTPUT); - mcp_set_mode(screen->mcp, screen->nixies[i].reg, screen->nixies[i].B, MCP_GPIO_OUTPUT); - mcp_set_mode(screen->mcp, screen->nixies[i].reg, screen->nixies[i].A, MCP_GPIO_OUTPUT); + uint8_t reg = REG_IODIRA; + if (screen->nixies[i].reg != REG_GPIOA) reg = REG_GPIOB; + mcp_set_mode(screen->mcp, reg, screen->nixies[i].D, MCP_GPIO_OUTPUT); + mcp_set_mode(screen->mcp, reg, screen->nixies[i].C, MCP_GPIO_OUTPUT); + mcp_set_mode(screen->mcp, reg, screen->nixies[i].B, MCP_GPIO_OUTPUT); + mcp_set_mode(screen->mcp, reg, screen->nixies[i].A, MCP_GPIO_OUTPUT); } diff --git a/main/main.c b/main/main.c index 4e73a00..1899256 100644 --- a/main/main.c +++ b/main/main.c @@ -7,5 +7,5 @@ void app_main(void) printf("Starting up...\n"); configure_screen(&screen); printf("Screen Configured!\n"); - display(&screen, "2110"); + test_screen(&screen); } \ No newline at end of file -- cgit v1.2.3