Показано с 1 по 10 из 1174

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11
    Пользователь
    Регистрация
    04.11.2009
    Сообщений
    30
    Вес репутации
    201

    По умолчанию Re: Панель приборов.

    Вот так будет оптимальней (без циклов и прерываний) определяет импульс от120мкс
    Код HTML:
    unsigned long time, tpl ,temp_tpl; 
    boolean act = false;
    void setup()   
    {   
      Serial.begin (115200);  
    }   
    void loop()  
    {
                       
           if (analogRead(1) > 600)  { // проверка на высокий уровень
            if (!act){                //проверка было ли начало импульса
              tpl = micros(); 
              act = true;            // установить метку высокого уровня
            }
           }else{
             if (act){              // при низком уровне зафиксировать длительность импульса
              time = micros()-tpl;
              act = false;          // установить метку низкого уровня
             }
           };       
            if (micros() - temp_tpl > 500000){ // задержка на вывод результата
              Serial.println( time , DEC); // отправить значение компьютеру         
              temp_tpl = micros();      // начало задержки
            }
    }
    Последний раз редактировалось Rush; 04.12.2009 в 19:46.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 8 (пользователей: 0 , гостей: 8)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •