Matrix - Sound Sensor

From FriendlyELEC WiKi
Revision as of 10:58, 4 August 2015 by Yftan (Talk | contribs)

Jump to: navigation, search

查看中文

1 Introduction

Sound Sensor

By default this module's output level is high. When it detects sound signals its output level will turn low. When sound signals are not detected its output will turn high again without time delay. There is a variable resistor which you can use to control the threshold value of a sound volume. Only when a sound volume's value is greater than this threshold value the module can detect it. Turning clockwise increases this threshold value. Turning anticlockwise decreases this value.

2 Features

  • Variable threshold value
  • 2.54mm spacing pin interface

3 How To

3.1 Connection

  • Connect Tiny4412 SDK (1506)
G: Ground
V: 5V
S: GPIO PIN1

3.2 Code Sample in C Under Linux

#include <stdio.h>
#include "libfahw.h"
 
static struct sensor sound[] = {
        {
                TINY4412_GPIO_PIN1,
                IRQ_TYPE_EDGE_BOTH,
        }
};
 
int main(void)
{
    int i;
    int retSize = -1;
    char value[ARRAY_SIZE(sound)];
    int devFD = -1;
    if ((devFD =sensorInit(sound, ARRAY_SIZE(sound))) == -1) {
        printf("Fail to init sensor\n");
        return -1;
    }
 
    if (( retSize = sensorRead(devFD, value, ARRAY_SIZE(sound)) ) == -1) {
        printf("Fail to read sensors\n");
    }
    if (retSize > 0) {
        i = 0;
        for(i=0; i<retSize; i++)
        {
            printf("sound[%d]:%d\n", i, value[i]);
        }
        printf("\n");
    }
    sensorDeinit(devFD);
    return 0;
}

3.3 Compile and Run

git clone http://github.com/friendlyarm/fa-hardware.git
cd fa-hardware
cd demo
cd matrix-sound_sensor
make

Copy your compiled bin to your board and you are ready to go.

4 Resources