-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathvars.php
91 lines (77 loc) · 1.64 KB
/
vars.php
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?php
global $m1_1,$m1_2,$m2_1,$m2_2;
$m1_1 = 8; //motor 1
$m1_2 = 11; //motor 1
$m2_1 = 14; //motor 2
$m2_2 = 15; //motor 2
//pwm pins are 20 & 21 (seperately handled in python).
//Rpi's Hardware PWM interferes with audio port.
function gpio_initialise(){
//echo"init<br>";
global $m1_1,$m1_2,$m2_1,$m2_2;
//====motors=================
set_gpio($m1_1,'output');
set_gpio($m1_2,'output');
set_gpio($m2_1,'output');
set_gpio($m2_2,'output');
set_gpio($m1_1,'0');
set_gpio($m1_2,'0');
set_gpio($m2_1,'0');
set_gpio($m2_2,'0');
}
function move($dir){
switch ($dir) {
case 'f': forward(); break;
case 'b': back(); break;
case 'r': right(); break;
case 'l': left(); break;
case 's': stop(); break;
}
}
function right(){
global $m1_1,$m1_2,$m2_1,$m2_2;
set_gpio($m1_1,'1');
set_gpio($m1_2,'0');
set_gpio($m2_1,'1');
set_gpio($m2_2,'0');
}
function left(){
global $m1_1,$m1_2,$m2_1,$m2_2;
set_gpio($m1_1,'0');
set_gpio($m1_2,'1');
set_gpio($m2_1,'0');
set_gpio($m2_2,'1');
}
function forward(){
global $m1_1,$m1_2,$m2_1,$m2_2;
set_gpio($m1_1,'1');
set_gpio($m1_2,'0');
set_gpio($m2_1,'0');
set_gpio($m2_2,'1');
//echo"fwd<br>";
}
function back(){
global $m1_1,$m1_2,$m2_1,$m2_2;
set_gpio($m1_1,'0');
set_gpio($m1_2,'1');
set_gpio($m2_1,'1');
set_gpio($m2_2,'0');
}
function stop(){
global $m1_1,$m1_2,$m2_1,$m2_2;
set_gpio($m1_1,'0');
set_gpio($m1_2,'0');
set_gpio($m2_1,'0');
set_gpio($m2_2,'0');
}
function set_gpio($pin,$x){
switch($x){
case '1': $z='dh';break;
case '0': $z='dl';break;
case 'output': $z='op';break;
}
$cmd="sudo raspi-gpio set $pin $z";
system($cmd);
//echo"$x: $cmd <br>";
}
?>