#ifndef ESP32_FLIPFLOP_H #define ESP32_FLIPFLOP_H #include // Estrutura do Flip-Flop D typedef struct { bool Q; // Saída Q bool Qn; // Saída Q negada } FlipFlopD; // Inicializa o flip-flop void flipflopd_init(FlipFlopD *ff) { ff->Q = false; ff->Qn = true; } // Atualiza o flip-flop na borda de subida do clock void flipflopd_update(FlipFlopD *ff, bool D, bool clk, bool *last_clk) { // Detecta borda de subida if (!(*last_clk) && clk) { ff->Q = D; ff->Qn = !D; } *last_clk = clk; } #endif // ESP32_FLIPFLOP_H