Sensorian  1.0
C API Reference Guide Library
Utilities.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (C) 2015 Sensorian
3  * *
4  * This file is part of Sensorian. *
5  * *
6  * Sensorian is free software: you can redistribute it and/or modify it *
7  * under the terms of the GNU Lesser General Public License as published *
8  * by the Free Software Foundation, either version 3 of the License, or *
9  * (at your option) any later version. *
10  * *
11  * Sensorian is distributed in the hope that it will be useful, *
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14  * GNU Lesser General Public License for more details. *
15  * *
16  * You should have received a copy of the GNU Lesser General Public *
17  * License along with Sensorian. *
18  * If not, see <http://www.gnu.org/licenses/>. *
19  ****************************************************************************/
20 
21 
29 #ifndef __UTILITIES_H__
30 #define __UTILITIES_H__
31 
32 #include <bcm2835.h>
33 #include <stdio.h>
34 #include <stdint.h>
35 
36 #define ALPHA_BOARD
37 
38 typedef uint8_t PIN_t;
39 
40 typedef enum PinLev {LOWLEVEL = 0, HIGHLEVEL} PinLevel_t;
41 
42 
43 #define MPL_PIN RPI_V2_GPIO_P1_15
44 #define LUX_PIN RPI_V2_GPIO_P1_11
45 #define ACLM_PIN RPI_V2_GPIO_P1_07
46 #define ALERT_PIN RPI_V2_GPIO_P1_13
47 #define LED_PIN RPI_V2_GPIO_P1_12
48 #define MFP_PIN RPI_V2_GPIO_P1_18
49 
50 void delay_ms(unsigned int ms);
51 
53 void pinModeOutput(PIN_t pin);
54 void digitalWrite(PIN_t pin, unsigned char level);
55 
62 void EnableDetectLowLevel(PIN_t pin);
66 
67 #endif
void pinModeOutput(PIN_t pin)
Configures the given pin as output.
Definition: Utilities.c:49
void DisableDetectRisingEdge(PIN_t pin)
Disables detection of rising edge.
Definition: Utilities.c:93
void EnableDetectFallingEdge(PIN_t pin)
Enables detection of falling edge.
Definition: Utilities.c:103
void DisableDetectFallinggEdge(PIN_t pin)
Dsiables detection of falling edge.
Definition: Utilities.c:113
void DisableDetectRisingInterrupt(PIN_t pin)
Disables detection of rising edge interrupt.
Definition: Utilities.c:173
void EnableDetectRisingEdge(PIN_t pin)
Enables detection of rising edge.
Definition: Utilities.c:83
PinLevel_t ReadPinStatus(PIN_t pin)
Configures the pins as input and returns the pin status.
Definition: Utilities.c:70
void EnableDetectLowLevel(PIN_t pin)
Enables detection of low level.
Definition: Utilities.c:143
enum PinLev PinLevel_t
void DisableDetectHighLevel(PIN_t pin)
Disables detection of high level.
Definition: Utilities.c:133
uint8_t PIN_t
Definition: Utilities.h:37
void delay_ms(unsigned int ms)
Delay in ms.
Definition: Utilities.c:39
void digitalWrite(PIN_t pin, unsigned char level)
Write a logic level to the pin. The pin should be confgured as output.
Definition: Utilities.c:60
PinLev
Definition: Utilities.h:39
void EnableDetectHighLevel(PIN_t pin)
Enables detection of high level on pin.
Definition: Utilities.c:123
void DisableDetectLowLevel(PIN_t pin)
Disables detection of low level.
Definition: Utilities.c:153
void EnableDetectRisingInterrupt(PIN_t pin)
Enables detection of rising edge interrupt.
Definition: Utilities.c:163