Files
teste/esp32.h
2025-07-22 09:42:27 -03:00

29 lines
585 B
C

#ifndef ESP32_FLIPFLOP_H
#define ESP32_FLIPFLOP_H
#include <stdbool.h>
// 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