Нужна помощ начинающему!

Partyzan
Partyzan аватар
Offline
Зарегистрирован: 15.07.2013

День добрый!

Подскажите пожалуйста как сделать на основе ардуино уно чтото на подобие такого!

http://www.youtube.com/watch?v=FWb-hRHbbSU

 Хочу сделать на 14 диодов! тоесть чем больше сопротивление тем больше загорается диодов и наоборот!

подскажите как подсоединить всё и как написать код!

Если где то есть пример т тыкните пожалуйста носом!

Заранее благодарен!

Клапауций
Offline
Зарегистрирован: 10.02.2013

Если сопротивление, то смотрите здесь http://arduino.ru/Reference/AnalogRead

Если энкодер, то http://www.pjrc.com/teensy/td_libs_Encoder.html

 

Partyzan
Partyzan аватар
Offline
Зарегистрирован: 15.07.2013

это сопротивление как вывести значения на экран я знаю а вот как привязать изменение значения к загоранию диодов незнаю!

Спасибо за помощ

 

Клапауций
Offline
Зарегистрирован: 10.02.2013

Partyzan пишет:

это сопротивление

На видео - энкодер.

Partyzan пишет:
как вывести значения на экран я знаю а вот как привязать изменение значения к загоранию диодов незнаю!

Читаете analogRead(pin), по условию достижения требуемого значения переводите пин, к которому подключен светодиод в противоположное значение.

http://arduino.ru/Reference/If

http://arduino.ru/Reference/DigitalWrite

Partyzan
Partyzan аватар
Offline
Зарегистрирован: 15.07.2013

Спасибо! Все понял!!!! и еще вопрос пины 0 и 1(tx и rx) тоже можно использовать????

Клапауций
Offline
Зарегистрирован: 10.02.2013

Partyzan пишет:

Спасибо! Все понял!!!! и еще вопрос пины 0 и 1(tx и rx) тоже можно использовать????

Мне можно - у меня скетчи не по юарту льются, т.е. к rx, tx ничего лишнего не подключено.

Как у вас - нужно смотреть, будет ли конфликтовать аппаратно подключенный сериал на вашей дуино и то, что вы подключите.

А, так rx, tx можно программировать как и все остальные цифровые пины.

Partyzan
Partyzan аватар
Offline
Зарегистрирован: 15.07.2013

Большое Вам спасибо!!!!

резистор
Offline
Зарегистрирован: 29.08.2013

пожалуста помогите у меня выходит такая ошибка:       avrdude: verification error, first mismatch at bute 0x0000 0x0c != 0x62 avrdude: verification error; content mismatch                  пожалуйста ответьте

 

резистор
Offline
Зарегистрирован: 29.08.2013

пожалуста помогите у меня выходит такая ошибка:       avrdude: verification error, first mismatch at bute 0x0000 0x0c != 0x62 avrdude: verification error; content mismatch                  пожалуйста ответьте

 

MaksMS
Offline
Зарегистрирован: 11.03.2013

резистор пишет:

пожалуста помогите у меня выходит такая ошибка:       avrdude: verification error, first mismatch at bute 0x0000 0x0c != 0x62 avrdude: verification error; content mismatch                  пожалуйста ответьте

 

Для начала надо знать чего шьете и через что...Телепаты в отпуске..

резистор
Offline
Зарегистрирован: 29.08.2013

шью код на ардуино уно через юэзби кабель

 

 

 

 

 

MaksMS
Offline
Зарегистрирован: 11.03.2013

На ножке RESET,и выводы 0 и 1 ничего не висит ? нигде их не коротит?

Работала ли ардуинка вообще ? или после чего это началось ?

Возможно слетел загрузчик ,тогда его необходимо прошить через другую ардуинку или программатор..

резистор
Offline
Зарегистрирован: 29.08.2013

ардуинка работала  все началось когда я хотел закчать код что бы светодиод менял яркость  ничего не свисает    и я не

понял последнее предложение       пожалуйста ответьте

toc
Offline
Зарегистрирован: 09.02.2013

MaksMS пишет:

Возможно слетел загрузчик ,тогда его необходимо прошить через другую ардуинку или программатор..

Почему-то мне всё чаще кажется, что "слетающий загрузчик" это сказка или байка. У кого-нибудь когда-нибудь загрузчик исчезал случайно?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

toc пишет:

Почему-то мне всё чаще кажется, что "слетающий загрузчик" это сказка или байка. У кого-нибудь когда-нибудь загрузчик исчезал случайно?

 

да что там загрузчик, СЛУЧАЙНО пролил чай на стол и исчезла вся дуинка целиком :) ее просто накрыло волной :)

я тоже с трудом верю в случайное стирание загрузчика...

MaksMS
Offline
Зарегистрирован: 11.03.2013

Ну может изначально плата без загрузчика была,мало ли что :)

 

Мне тоже не попадались ардуино с слетевшим загрузчиком ..

oztima
Offline
Зарегистрирован: 01.09.2013

Всем привет! Вчера взялся за ардуино, до этого момента не программировал и практически ничего об этом не знал. Уже полгода лежало куча датчиков и всяких прибамбасов)  Т.к. изучать программирование лишь по теории скучно и лениво, решил влоб - на практике.  Достал из кучи девайсов на шару arduino uno и блютув-модуль, решил проверить все хозяйство стырив готовый скетч 

http://cxem.net/arduino/arduino63.php , далее по анологии повыключал пару СД





char incomingByte;  // входящие данные
int  RED = 12;      // красный подключен к 12 пину
int Green = 13;    //зеленый к 13 пину 
void setup() {
  Serial.begin(9600); // инициализация порта
  pinMode(RED, OUTPUT);
  pinMode(Green, OUTPUT);
  Serial.println("Press 1 to red ON or 2 to red OFF or press 3 to green ON or 4 to green OFF..");
}
 
void loop() {
  if (Serial.available() > 0) {  //если пришли данные
    incomingByte = Serial.read(); // считываем байт
    if(incomingByte == '2') {
       digitalWrite(RED, LOW);  // если 1, то выключаем LED
       Serial.println("RED OFF. Press 1 to RED ON!");  // и выводим обратно сообщение
    }
    if(incomingByte == '1') {
       digitalWrite(RED, HIGH); // если 0, то включаем LED
       Serial.println("RED ON. Press 0 to RED OFF!");
    }
    if(incomingByte == '4'){
      digitalWrite(Green, LOW);
      Serial.println("GREEN OFF. Press 4 to GREEN ON!");
    }
    if(incomingByte == '3'){
      digitalWrite(Green, HIGH);
      Serial.println("Green ON. Press 3 to Green OFF!");
    }
  }
}

ну все  работает примитивная программмулька.

Далее решил подойти поближе к делу(т.к. лежит платформа для машинки) покрутить дпт регулируя скорость все теми же кнопками 1,2...5, ну и конечно пошли трудности  вся ночь без сна, а толку ноль..



int M1 = 3;

char incomingByte;  // входящие данные
void setup() {
  Serial.begin(9600); // инициализация порта
  pinMode(M1, OUTPUT);
  Serial.println("press 1-5 for motor control...");
}
   void loop(){
     if(Serial.available()>0){
       incomingByte = Serial.read();
       if (incomingByte == '1') {
          analogWrite(M1, 0);
         Serial.println("press 2");
               }       
       if (incomingByte == '2'){
         digitalWrite(M1, 50);
         Serial.println("press 3"); 
       }   
    if (incomingByte == '3'){
         digitalWrite(M1, 100);
         Serial.println("press 4");     
       }
       if (incomingByte == '4'){
         digitalWrite(M1, 150);
         Serial.println("press 5");
       }
         if (incomingByte == '5'){
         digitalWrite(M1, 250);
         Serial.println("Vse");
     }
     }
   }
   

В итоге, при нажатие "2" двигатель крутит на полную, на "1" останавливается, далее жмем 3,4,5 опять на полную. Смутило то, что если на 1 поставить скажем 20% до двигатель будет крутиться медленнее ...

ответ: ошибка в программе или в самой реализации подойдет.

 
vvadim
Offline
Зарегистрирован: 23.05.2012

Partyzan, внимательнее смотрите ютуб  http://mayhewlabs.com/products/rotary-encoder-led-ring

Резистор 1
Offline
Зарегистрирован: 04.09.2013

А как исправить ошибку если слетел загрузчик? Пожалуйста помогите!!!!!:(

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Резистор 1 пишет:

А как исправить ошибку если слетел загрузчик? Пожалуйста помогите!!!!!:(

летающие грузчики О.о

куда он у вас слетел?