Files
RP2350_MIDI_Lighter/Firmware/Mode_Manager.h
Chris 128d42c586 - Fixed drawing of round objects (Circles, Rounded Rects) using a lookup table
- Added function to read out the display_buffer via USB-Serial
 - Added basic structure and files for later complete firmware (still in progress)
 - Added Doc folder with schematic in it
 - Added Python script and batch file to read out the display buffer and open the image in gimp
2025-09-07 08:55:39 +02:00

60 lines
1.3 KiB
C

/*
* Mode_Manager.h
*
* Created: Fri Jan 27 2023 22:12:39
* Author Chris
*/
#ifndef MODE_MANAGER_H_
#define MODE_MANAGER_H_
// ============================================================================================
// Includes
#include <stdio.h>
#include <stdint.h>
#include <stdbool.h>
#include "pico/types.h"
// ============================================================================================
// Defines
// ============================================================================================
// Enumeration
enum Mode_e
{
MIDI,
JAM,
CONSTANT,
PREVIEW
};
// ============================================================================================
// Datatypes
typedef enum Mode_e Mode;
// ============================================================================================
// Function Declarations
void Mode_Manager_Init(void);
void Mode_Manager_Tick(void);
void Mode_Manager_Cycle_Mode(void);
void Mode_Manager_Set_Mode(Mode mode);
Mode Mode_Manager_Get_Current_Mode(void);
void Mode_Manager_Set_Default_Color_Notes(void);
uint Mode_Manager_Jam_Get_Current_Angle();
uint Mode_Manager_Jam_Get_Next_Angle();
uint Mode_Manager_Jam_Get_Duration_s();
uint Mode_Manager_Jam_Get_Duration_Tick();
uint Mode_Manager_Jam_Get_Time_Left_s();
uint Mode_Manager_Jam_Get_Time_Left_Tick();
#endif /* MODE_MANAGER_H_ */