Microcontroller drives piezoelectric buzzer at high voltage

Mehmet Efe Ozbek, PhD, Atilim University, Ankara, Turkey


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.

Figure 1.

This cross-coupled configuration enables you to drive a piezoelectric buzzer from a microcontroller’s I/O pins.

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.


You may have to register before you can post comments and get full access to forum.
User Name
Fragments of discussion:Full version of discussion »
  • This solution has long been used in the ULF. Many circuits have bridged output. Often bridge output stages are used in low-voltage supply.