Correo: [email protected] - Teléfono: +56979962128

El buzzer se encuentra conectado al pin 4 del puerto B, PB4. La forma de hacer sonar el buzzer es aplicando una frecuencia en ese pin.

El siguiente código hace sonar el led por un periodo de tiempo para luego descansar por 2 segundos (y repetir el proceso).

#include<avr/io.h>

#defineF_CPU10000000UL

#include<util/delay.h>

int main(void)
{
    unsigned char i;
        
        DDRB |= 1 << DDD4;

        for(;;) 
        {       
                //mandarunafrecuencia
                //enelpinPB4
                for(i = 1; i != 0; ++i)
                {
                        PORTB ^= 1 << PB4;
                        _delay_ms(1);
                }
                for(i = 0; i < 200; ++i)
                        _delay_ms(10);
        }
}

El código completo de este ejemplo se encuentra en el archivo Buzzer.c.

Preguntas frecuentes

¿A qué pin está conectado el buzzer en la placa AVR-MT?

Al pin 4 del puerto B, identificado como PB4. Es el pin que hay que configurar como salida antes de poder hacerlo sonar.

¿Cómo se hace sonar un buzzer en AVR?

Aplicando una frecuencia en el pin al que está conectado. No basta con ponerlo en alto: hay que alternar el estado del pin a cierta velocidad para generar el tono.

¿Qué hace el código de ejemplo del buzzer?

Hace sonar el buzzer durante un periodo de tiempo y luego descansa dos segundos, repitiendo el ciclo de forma indefinida.

¿Qué librerías usa el ejemplo?

Las dos habituales en AVR: avr/io.h para el acceso a los puertos y util/delay.h para las esperas, además de definir la frecuencia del reloj con F_CPU.

Aprende esto en un curso

Si prefieres verlo en vivo y con alguien que resuelva tus dudas, estos cursos presenciales de MCI Educación cubren el tema de este tutorial: