summaryrefslogtreecommitdiff
path: root/macros/Hardware/RasberryPi/RPI_DigitalIn.sci
blob: 781c49c88f638a4cc11ac049b3ce06cc9a104f0b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// This file must be used under the terms of the CeCILL.
// This source file is licensed as described in the file COPYING, which
// you should have received as part of this distribution.  The terms
// are also available at
// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
// Organization: FOSSEE, IIT Bombay
// Email: toolbox@scilab.in

function state = RPI_DigitalIn(pin)
// Function to read current state on digital pins. 
//
// Calling Sequence
//     state = RPI_DigitalIn(pin)
//
// Parameters
//     pin : pin of RPi to be used 
//     state : current state of the pin (0 -> LOW, 1 -> HIGH)
//
// Description
//     This fucntion is used for reading the current state on gpio pins of RPi. 'RPI_DigitalSetup' function must be called before this for setting up pin as input. 'pin' must be specified from list given. 'state' specifies the input state (0 -> Low, 1-> High)  
// Examples
//     RPI_DigitalIn(RPI_GPIO_P1_03) //Reads the state of pin 3 of header P1.
//
// See also
//     RPI_DigitalSetup RPI_DigitalOut
//
//
// Authors
//     Siddhesh Wani
//
// -----------------------------------------------------------------
//Pins of header P1 which can be used as GPIO
supported_pins = [3,5,7,8,10,11,12,13,15,16,18,19,21,22,23,24,26,27,28,29,...
				  31,31,33,35,36,37,38,40];
	
PinIsGPIO = members(pin, supported_pins); //Check if input pin supports GPIO

//If given pin does not support GPIO functionality, raise the error
if(PinIsGPIO == 0)
	error(9999, 'SCI2CERROR: Given pin number doesnot support GPIO functionality.');
end
state = 1;
endfunction