Générateur d’horloge MIDI (24 PPQN) basé sur GPT3. Plus de détails...
#include "ch.h"
#include "hal.h"
#include "brick_config.h"
#include "midi_clock.h"
#include "midi.h"
Macros | |
#define | MIDI_GPT_DRIVER GPTD3 |
#define | MIDI_GPT_BASE_HZ 1000000U |
Fonctions | |
void | midi_clock_register_tick_callback (midi_tick_cb_t cb) |
Enregistre un callback appelé à chaque tick MIDI (24 PPQN). | |
void | midi_clock_init (void) |
Initialise le générateur MIDI Clock (thread + GPT3). | |
void | midi_clock_start (void) |
Démarre la génération de MIDI Clock. | |
void | midi_clock_stop (void) |
Arrête la génération de MIDI Clock. | |
void | midi_clock_set_bpm (float bpm) |
Modifie le tempo du générateur. | |
float | midi_clock_get_bpm (void) |
Retourne le tempo actuel (BPM). | |
bool | midi_clock_is_running (void) |
Indique si la clock MIDI est active. | |
Générateur d’horloge MIDI (24 PPQN) basé sur GPT3.
Ce module implémente la génération précise des ticks MIDI Clock (F8) :
0xF8
à intervalles réguliers selon le BPM courant.#define MIDI_GPT_BASE_HZ 1000000U |
#define MIDI_GPT_DRIVER GPTD3 |
float midi_clock_get_bpm | ( | void | ) |
Retourne le tempo actuel (BPM).
void midi_clock_init | ( | void | ) |
Initialise le générateur MIDI Clock (thread + GPT3).
Initialise le générateur d’horloge MIDI.
bool midi_clock_is_running | ( | void | ) |
Indique si la clock MIDI est active.
Indique si l’horloge MIDI est actuellement en cours d’exécution.
void midi_clock_register_tick_callback | ( | midi_tick_cb_t | cb | ) |
Enregistre un callback appelé à chaque tick MIDI (24 PPQN).
Enregistre un callback appelé à chaque tick (24 PPQN).
void midi_clock_set_bpm | ( | float | bpm | ) |
Modifie le tempo du générateur.
Définit le BPM et recalcule l’intervalle du timer.
bpm | Nouveau tempo en BPM. |
void midi_clock_start | ( | void | ) |
Démarre la génération de MIDI Clock.
Lance le GPT en mode continu selon le BPM courant.
void midi_clock_stop | ( | void | ) |
Arrête la génération de MIDI Clock.
Stoppe la génération de MIDI Clock.