Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <boarddefs.h>
- #include <IRremote.h>
- #include <IRremoteInt.h>
- #include <ir_Lego_PF_BitStreamEncoder.h>
- const int RECV_PIN = 6;
- IRrecv irrecv(RECV_PIN);
- decode_results results;
- const int m11 = 2;
- const int m12 = 3;
- const int m21 = 4;
- const int m22 = 5;
- void setup() {
- Serial.begin(9600);
- irrecv.enableIRIn();
- irrecv.blink13(true);
- pinMode(m11, OUTPUT);
- pinMode(m12, OUTPUT);
- pinMode(m21, OUTPUT);
- pinMode(m22, OUTPUT);
- }
- void loop() {
- if (irrecv.decode(&results)) {
- Serial.println(results.value, HEX);
- irrecv.resume();
- if (results.value != 0xFFFFFF) {
- if (results.value == 0xFF629D) {
- forward();
- } else if (results.value == 0xFFA857) {
- backward();
- } else if (results.value == 0xFF22DD) {
- left();
- } else if (results.value == 0xFFC23D) {
- right();
- } else if (results.value == 0xFF02FD) {
- stop();
- }
- }
- delay(10);
- }
- }
- void stop() {
- digitalWrite(m11, LOW);
- digitalWrite(m12, LOW);
- digitalWrite(m21, LOW);
- digitalWrite(m22, LOW);
- }
- void forward() {
- digitalWrite(m11, HIGH);
- digitalWrite(m12, LOW);
- digitalWrite(m21, HIGH);
- digitalWrite(m22, LOW);
- }
- void backward() {
- digitalWrite(m11, LOW);
- digitalWrite(m12, HIGH);
- digitalWrite(m21, LOW);
- digitalWrite(m22, HIGH);
- }
- void left() {
- digitalWrite(m11, LOW);
- digitalWrite(m12, HIGH);
- digitalWrite(m21, HIGH);
- digitalWrite(m22, LOW);
- }
- void right() {
- digitalWrite(m11, HIGH);
- digitalWrite(m12, LOW);
- digitalWrite(m21, LOW);
- digitalWrite(m22, HIGH);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement