Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "SoftwareSerial.h"
- #define LED1 10
- #define LED2 9
- #define LED3 8
- #define IN3 7
- #define IN4 6
- #define ENB 5 //~PWM
- #define btTX 11
- #define btRX 12
- SoftwareSerial ss(btTX, btRX);
- void setup() {
- ss.begin(9600);
- Serial.begin(9600);
- pinMode(LED1, OUTPUT);
- pinMode(LED2, OUTPUT);
- pinMode(LED3, OUTPUT);
- pinMode(IN3, OUTPUT);
- pinMode(IN4, OUTPUT);
- pinMode(ENB, OUTPUT);
- Stop();
- Serial.println("System Started >.<");
- }
- void loop() {
- while (ss.available() > 0) {
- char c = ss.read();
- Serial.println(c);
- switch (c) {
- case '0': // your hand is nowhere near the sensor
- Serial.println("STOP !");
- Stop();
- break;
- case '1': // your hand is close to the sensor
- Serial.println("Case [ 1 ]");
- M_Speed_1();
- break;
- case '2': // your hand is a few inches from the sensor
- Serial.println("Case [ 2 ]");
- M_Speed_2();
- break;
- case '3': // your hand is nowhere near the sensor
- Serial.println("Case [ 3 ]");
- M_Speed_3();
- break;
- }
- delay(1); // delay in between reads for stability
- }
- }//end of LOOP
- void Stop() {
- digitalWrite(LED1, LOW);
- digitalWrite(LED2, LOW);
- digitalWrite(LED3, LOW);
- digitalWrite(IN3, LOW);
- digitalWrite(IN4, LOW);
- analogWrite(ENB, 0);
- }
- void M_Speed_1() {
- digitalWrite(LED1, HIGH);
- digitalWrite(LED2, LOW);
- digitalWrite(LED3, LOW);
- digitalWrite(IN3, HIGH);
- digitalWrite(IN4, LOW);
- analogWrite(ENB, 100);
- }
- void M_Speed_2() {
- digitalWrite(LED1, HIGH);
- digitalWrite(LED2, HIGH);
- digitalWrite(LED3, LOW);
- digitalWrite(IN3, HIGH);
- digitalWrite(IN4, LOW);
- analogWrite(ENB, 180);
- }
- void M_Speed_3() {
- digitalWrite(LED1, HIGH);
- digitalWrite(LED2, HIGH);
- digitalWrite(LED3, HIGH);
- digitalWrite(IN3, HIGH);
- digitalWrite(IN4, LOW);
- analogWrite(ENB, 255);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement