Microcontroller drives piezoelectric buzzer at high voltage
Mehmet Efe Ozbek, PhD, Atilim University, Ankara, Turkey -March 01, 2012
|Click here to download a PDF|
Piezoelectric buzzers find wide use in embedded systems for audible-signal generation. You can drive a piezoelectric element directly from a microcontroller’s I/O pins, but the maximum voltage rating and loudness of a piezoelectric buzzer are typically several times larger than the voltage an I/O pin supplies. Using four enhancement-mode MOSFETs that connect in an H-bridge configuration, the microcontroller can drive the buzzer at a high alternating voltage. The gate terminals of the N-channel transistors in the lower arms of the bridge can connect directly to the microcontroller’s I/O pins. The voltage level on the I/O pins is insufficient for switching the P-channel transistors, however.
The circuit in Figure 1 solves the problem using a cross-coupled configuration. The operation is as follows: The microcontroller turns Q2 on and Q4 off by applying high- and low-logic-level voltages to I/O Pin 1 and I/O Pin 2, respectively. The voltage on Node A goes low, turning on Q3. Node B is now 15V, which is sufficient to keep Q1 off. The voltage on the piezoelectric buzzer is 15V. The microcontroller then toggles I/O Pin 1 and I/O Pin 2, resulting in a piezoelectric voltage of −15V for an effective 30V p-p. These cycles are repeated to generate an alternating voltage with the desired frequency. By using MOSFETs with proper voltage ratings, you can use higher supply voltages that the piezoelectric element can tolerate.