Управление танком пультом от телевизора
- Войдите на сайт для отправки комментариев
Ср, 20/05/2015 - 20:14
Есть код для подключения управления через Bluetooth. Помогите переделать по IR-порт, чтобы можно было управлять пультом ДУ.
Код:
int val; int IN1 = 4; int IN2 = 2; int EN1 = 3; int EN2 = 5; int LED = 13; void setup() { Serial.begin(9600); pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(EN1, OUTPUT); pinMode(EN2, OUTPUT); //используем 13 пин как индикатор включённой ардуины pinMode(LED, OUTPUT); digitalWrite(LED, HIGH); } void loop() { if (Serial.available()) { val = Serial.read(); // Задаём движение вперёд if (val == 'W') // При нажатии клавиши "W" { // Выводы конфигурируются согласно раьоте Motor Shield'а // Моторы крутятся вперед digitalWrite(EN1, HIGH); digitalWrite(EN2, HIGH); digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); } // Задаём движение назад if ( val == 'S') { digitalWrite(EN1, HIGH); digitalWrite(EN2, HIGH); digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); } // Задаём движение вправо if ( val == 'D') { digitalWrite(EN1, HIGH); digitalWrite(EN2, HIGH); digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); } // Задаём движение влево if ( val == 'A') { digitalWrite(EN1, HIGH); digitalWrite(EN2, HIGH); digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); } // Стоп режим // При отпускании клавиш в программе в порт шлется "T" if ( val == 'T') // При нажатии клавиши "T" { // Выводы ENABLE притянуты к минусу, моторы не работают digitalWrite(EN1, LOW); digitalWrite(EN2, LOW); } } }