Всем привет!!! Друзья помогите пожалуйста. только купил ардуйно нано и все прибомбасы к ней(блютуз,реле и т.д) Идея такая хочу поставить в машину планшет как мультимедиа + хотелось бы реализовать программу для управления пневмоподвеской машиной.Машина 2114 подвеска самопал . В принципе труда не составит подключится к ней. Нужно помочь сделать скетч щас есть заготовка но он не работает ( В общем хотелось бы при нажатий кнопки и удерживание чтобы подавался сигнал как отпущу сигнал прекращался. Нужно 8 кнопок . Нашел готовую пытался переделать чтото пошло не так
Вы хотите управлять подвеской через USB? И опубликуйте скетч правильно, на текстовым окном есть кнопка слева от кавычек, вставьте код через нее.
Не так код вставили, нужно нажать кнопку СЛЕВА от кавычек (на ней написано "код") и вставить туда. Так читать будет удобнее и не пропадают некоторые символы.
Код (Text): int val; int IN1 = 4; int IN2 = 7; int EN1 = 6; int EN2 = 5; int LED = 13; int LED2 = 11; int LED3 = 12; int IN3 = 13; int IN4 = 14; int IN5 = 15; int IN6 = 16; int IN7 = 18; int IN8 = 17; void setup() { Serial.begin(9600); pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(EN1, OUTPUT); pinMode(EN2, OUTPUT); //используем 13 пин как индикатор включённой ардуины pinMode(LED, OUTPUT); pinMode(LED2, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); pinMode(IN5, OUTPUT); pinMode(IN6, OUTPUT); pinMode(IN7, OUTPUT); pinMode(IN8, OUTPUT); digitalWrite(LED, LOW); } void loop() { if (Serial.available()) { val = Serial.read(); if (val == '5') // При нажатии клавиши "5" {digitalWrite(LED, HIGH);} if (val == '6') // При нажатии клавиши "6" {digitalWrite(LED,HIGH );} if (val == 'Y') // При нажатии клавиши "7" {digitalWrite(LED2,HIGH );} if (val == 'B') // При нажатии клавиши "8" {digitalWrite(LED3,HIGH );} // Задаём движение вперёд if (val == 'W') // При нажатии клавиши "W" { // Выводы конфигурируются согласно раьоте Motor Shield'а // Моторы крутятся вперед digitalWrite(IN7, 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); } if ( val == 'N') // При нажатии клавиши "T" { // Выводы ENABLE притянуты к минусу, моторы не работают digitalWrite(IN4,LOW ); digitalWrite(IN5,LOW ); digitalWrite(IN6,LOW ); digitalWrite(IN7,LOW ); digitalWrite(IN8,LOW ); digitalWrite(LED2,LOW ); digitalWrite(LED3,LOW ); } } }
Насколько я знаю, да. У меня на уне теряться начинает с командами, когда 90 процентов портов подключишь?!
Даже китайская DDcduino с полной занятостью всех портов 0-A5 и с заполнением памяти под 98% ни разу не выдала ни одного сбоя. Она должна и обязана работать даже в таких условиях, жалеть её не нужно.
нифига не в пинах дело. Вчерась был закончен проект, где китайская Uno рулила матрицей 16х32 (6 пинов под данные), двумя моторами с реверсом (4 пина), двумя сервами, 5-ю кнопками, микрофоном, дискретным входом и 6-ю ридерами RFID. Еще одного пина не хватило для зуммера, пришлось вместо него звуки издавать обмотками двигателя Усё работало замечтательно.