blob: 0e8a47d85a842eb090270ba64d3876401de4f23a [file] [log] [blame]
Gordon Hendersone8f62582013-01-28 13:00:47 +00001/*
2 * tone.c:
3 * Test of the softTone module in wiringPi
4 * Plays a scale out on pin 3 - connect pizeo disc to pin 3 & 0v
5 *
6 * Copyright (c) 2012-2013 Gordon Henderson. <projects@drogon.net>
7 ***********************************************************************
8 * This file is part of wiringPi:
9 * https://projects.drogon.net/raspberry-pi/wiringpi/
10 *
11 * wiringPi is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License as published by
13 * the Free Software Foundation, either version 3 of the License, or
14 * (at your option) any later version.
15 *
16 * wiringPi is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * along with wiringPi. If not, see <http://www.gnu.org/licenses/>.
23 ***********************************************************************
24 */
Gordon Henderson25e4ec52012-12-06 21:49:41 +000025
26#include <stdio.h>
27#include <errno.h>
28#include <string.h>
29
30#include <wiringPi.h>
31#include <softTone.h>
32
Gordon Hendersone8f62582013-01-28 13:00:47 +000033#define PIN 3
Gordon Henderson25e4ec52012-12-06 21:49:41 +000034
35int scale [8] = { 262, 294, 330, 349, 392, 440, 494, 525 } ;
36
37int main ()
38{
Gordon Hendersone8f62582013-01-28 13:00:47 +000039 int i ;
Gordon Henderson25e4ec52012-12-06 21:49:41 +000040
41 if (wiringPiSetup () == -1)
42 {
43 fprintf (stdout, "oops: %s\n", strerror (errno)) ;
44 return 1 ;
45 }
46
Gordon Hendersone8f62582013-01-28 13:00:47 +000047 softToneCreate (PIN) ;
Gordon Henderson25e4ec52012-12-06 21:49:41 +000048
49 for (;;)
50 {
51 for (i = 0 ; i < 8 ; ++i)
52 {
53 printf ("%3d\n", i) ;
Gordon Hendersone8f62582013-01-28 13:00:47 +000054 softToneWrite (PIN, scale [i]) ;
Gordon Henderson25e4ec52012-12-06 21:49:41 +000055 delay (500) ;
56 }
57 }
58
59}