--->>> 예제 PIEZO_buzzer01.c <<<--------------------------------
#include <stdio.h>
#include <wiringPi.h>
#include <softTone.h>
const int pinPiezo = 13;
const int aMelody[8] = {131,147,165,175,196,220,247,262};
int main(void)
{
wiringPiSetupGpio();
softToneCreate(pinPiezo);
while(1)
{
int i;
for(i=0;i<8;i++)
if(aMelody[i]%2==0)
{
softToneWrite(pinPiezo,aMelody[i]);
delay(1000);
}
softToneWrite(pinPiezo,0);
delay(1000);
}
return 0;
}
-------------------------------------------------------------------------------
$ gcc -o PIEZO_buzzer01.c PIEZO_buzzer01.c -lwiringPi
$ sudo ./PIEZO_buzzer01
--->>> 예제 PIEZO_buzzer02.c <<<-------------------------------------
#include <stdio.h>
#include <wiringPi.h>
#include <softTone.h>
const int pinPiezo = 13;
const int pinPir = 24;
const int aMelody[9] = {131, 147, 165, 175, 196, 208, 220, 247, 262};
int main(void)
{
wiringPiSetupGpio();
pinMode(pinPir, INPUT);
softToneCreate(pinPiezo);
while(1)
{
if(!digitalRead(pinPir))
{
softToneWrite(pinPiezo, aMelody[2]);
delay(100);
softToneWrite(pinPiezo, aMelody[0]);
delay(100);
}
else
{
softToneWrite(pinPiezo, 0);
delay(100);
}
}
return 0;
}
-------------------------------------------------------------------------------
$ gcc -o PIEZO_buzzer02.c PIEZO_buzzer02.c -lwiringPi
$ sudo ./PIEZO_buzzer02