I realized I has been subtracting the wrong way which cause the debounce to not work. I've fixed this now. I also added a debounce to the arming pin.
Updated single pulse mode so that it has an ENABLED, ARMED, and FIRED state. The enabled pin toggles the single fire mode. The armed state toggles whether it's armed or not. The fire pin will only fire if it has been armed.
Added support for an I2C LCD to be used with the project. The LCD can be driven directly by the data lines
Waveform select feature is no longer needed since we've settled on a given waveform.