Как обьединить 3 скеча?

Тема в разделе "Arduino & Shields", создана пользователем Nikita, 8 май 2013.

  1. Nikita

    Nikita Гик

    вот они
    void loop()
    {
    // set the cursor to column 0, line 1
    // (note: line 1 is the second row, since counting begins with 0):
    lcd.setCursor(0,0);
    lcd.print("");
    lcd.setCursor(0, 1);
    // print the number of seconds since reset:

    lcd.print("");


    lcd.print(" ");
    lcd.print(millis()/3600000);

    lcd.print(":");

    lcd.print(millis()/60000);
    lcd.print(":");
    sekunda_new = millis()/1000; // новое значение секунд от запуска
    if (sekunda_star != sekunda_new) // если это значение секунд изменилось, то выполняем...
    {
    sekunda_star = sekunda_new; // обновляем старое значение секунд
    sekunda++; // увеличиваем значение секунд на 1
    if(sekunda >= 60) {sekunda=0;} // если секунды переполнились - обнуляем
    if(sekunda <=9) // если секунд менее 10, то есть занимают 1 символ, то...
    {

    lcd.print("0"); // печатаем ноль на месте десятков секунд

    lcd.print(sekunda); // выводим значение единиц секунд
    }
    else // иначе, то есть если секунд более 9 - они занимают два знака
    {

    lcd.print(sekunda); // печатаем секунды с десятками и единицами - два знака
    }


    lcd.print(":");
    sekunda_new = millis()/10; // новое значение секунд от запуска
    if (sekunda_star != sekunda_new) // если это значение секунд изменилось, то выполняем...
    {
    sekunda_star = sekunda_new; // обновляем старое значение секунд
    sekunda++; // увеличиваем значение секунд на 1
    if(sekunda >= 60) {sekunda=0;} // если секунды переполнились - обнуляем
    if(sekunda <=9) // если секунд менее 10, то есть занимают 1 символ, то...
    {

    lcd.print("0"); // печатаем ноль на месте десятков секунд

    lcd.print(sekunda); // выводим значение единиц секунд
    }
    else // иначе, то есть если секунд более 9 - они занимают два знака
    {

    lcd.print(sekunda); // печатаем секунды с десятками и единицами - два знака
    }
    sekunda_new = millis()/1000; // новое значение секунд от запуска
    if (sekunda_star != sekunda_new) // если это значение секунд изменилось, то выполняем...
    {
    sekunda_star = sekunda_new; // обновляем старое значение секунд
    sekunda++; // увеличиваем значение секунд на 1
    if(sekunda >= 60) {sekunda=0;} // если секунды переполнились - обнуляем
    if(sekunda <=9) // если секунд менее 10, то есть занимают 1 символ, то...
    {

    lcd.print("0"); // печатаем ноль на месте десятков секунд

    lcd.print(sekunda); // выводим значение единиц секунд
    }
    else // иначе, то есть если секунд более 9 - они занимают два знака
    {

    lcd.print(sekunda); // печатаем секунды с десятками и единицами - два знака
    }
     
  2. Megakoteyka

    Megakoteyka Оракул Модератор

    Увидел только одну функцию loop. А где еще 2 скетча? И Вы бы, что ли, код форматировали, читать же невозможно. Есть замечательный тэг CODE, воспользуйтесь им.
     
  3. Nikita

    Nikita Гик

    они там же :)
     
  4. Nikita

    Nikita Гик

    void loop()
    {
    sekunda_new = millis()/1000; // новое значение секунд от запуска
    if (sekunda_star != sekunda_new) // если это значение секунд изменилось, то выполняем...
    {
    sekunda_star = sekunda_new; // обновляем старое значение секунд
    sekunda++; // увеличиваем значение секунд на 1
    if(sekunda >= 60) {sekunda=0;} // если секунды переполнились - обнуляем
    if(sekunda <=9) // если секунд менее 10, то есть занимают 1 символ, то...
    {
    lcd.setCursor(0, 1); // курсор ставим в первый знак второй строки
    lcd.print("0"); // печатаем ноль на месте десятков секунд
    lcd.setCursor(1, 1); // курсор ставим во второй знак второй строки
    lcd.print(sekunda); // выводим значение единиц секунд
    }
    else // иначе, то есть если секунд более 9 - они занимают два знака
    {
    lcd.setCursor(0, 1); // ставим курсор в первый знак второй строки
    lcd.print(sekunda); // печатаем секунды с десятками и единицами - два знака
    }

    }
    и вот таких длжно быть ещё 2
     
  5. Megakoteyka

    Megakoteyka Оракул Модератор

    3 одинаковых куска кода подряд? :eek:
     
  6. Unixon

    Unixon Оракул Модератор

    Что ТС понимает под словом "объединить"? Записать текстуально подряд? Обернуть в цикл?
     
  7. Nikita

    Nikita Гик

    да