Почему может пропускаться if вообще полностью? Который if ((temp < 5), ни в одно ветвление не заходит uint8_t check_state(uint8_t row, uint8_t *button_count) { uint8_t temp ...
Аналогичный чат для новичков по чистым Сям есть?
Что за дисплей? По какой шине его подключать? Я бы начал с того, что открыл бы даташит или гитхаб Я в коде ничего про дисплей не увидел
Почему люди так не хотят, чтобы новички дебагер использовали и автодополнение? Потом же им и объяснять, что дебажить можно не только принтами
А VS Code IDE разве?