Saturday 13 June 2015

microcontroller - Is this a proper way to connect a piezo speaker to MCU?


enter image description here


Is this a proper way to connect a piezo buzzer to microcontroller pin? Is there anything that could be improved in the sense of robustness and power consumption? How do i select D1?



Answer



You can probably stand to increase your pull-down resistor value significantly. (try 100k or 1M) - As far as the 1K resistor goes, as this provides a discharge path for the piezo's capacitance, its value will be determined by the size of the piezo, as well as the frequency range you intend to drive it at. A higher value will be less lossy, but may not provide adequate discharge for the piezo if it is very large or you intend to drive it at a very high frequency (where a quick recovery is necessary) This is easy to estimate if you know the capacitance of the buzzer.


D1 should be a fast diode, any schottky type should do fine.


Depending on how loud you want the buzzer, you can add a resistor in series with the buzzer itself. I would start with low resistance values (10s of ohms) and work up to something you're happy with. Again you're taking a loss, but if you can't adjust your drive voltage, this is an option. A capacitor in series with the buzzer is also an option, to provide a power limitation, as well as change the character of the tone.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...