Проход по ссылкам навигацииГлавная : Статьи :

Arduino UNO урок 6 (Энкодер)

Arduino UNO урок 6 (Энкодер)



Я перевостоновити віндовс хр на віндовс хр?


В Телефон этом уроке Я перевостоновити віндовс хр на віндовс хр? мы рассмотрим работу Драйвер для led своими руками Arduino с Программирование stm32 на ассемблере энкодером (который Я перевостоновити віндовс хр на віндовс хр? служит для Программирование плк для начинающих преобразования угла поТелефон ворота в эл. сигнал). С Я перевостоновити віндовс хр на віндовс хр? энкодера мы получаем 2 Драйвер для led своими руками сигнала (А и Я перевостоновити віндовс хр на віндовс хр? В), Программирование stm32 на ассемблере которые противоположны по фазе. В Я перевостоновити віндовс хр на віндовс хр? данном Я перевостоновити віндовс хр на віндовс хр? уроке мы Программирование плк для начинающих будем использовать энкодер фирмы Телефон SparkFun COM-09117, Я перевостоновити віндовс хр на віндовс хр? который имеет 12 Драйвер для led своими руками положений на Программирование stm32 на ассемблере один оборот Я перевостоновити віндовс хр на віндовс хр? (каждое положение Программирование плк для начинающих 30°). На приведенной Телефон ниже диаграмме вы можете Я перевостоновити віндовс хр на віндовс хр? видеть, как зависят выход Драйвер для led своими руками А и В Я перевостоновити віндовс хр на віндовс хр? друг Программирование stm32 на ассемблере от друга при вращении энкодера Я перевостоновити віндовс хр на віндовс хр? по Я перевостоновити віндовс хр на віндовс хр? часовой или Программирование плк для начинающих против часовой стрелки.

Я перевостоновити віндовс хр на віндовс хр?


Каждый Телефон раз, когда Я перевостоновити віндовс хр на віндовс хр? сигнал А переходит Драйвер для led своими руками от положительного Программирование stm32 на ассемблере уровня к Я перевостоновити віндовс хр на віндовс хр? нулю, мы Программирование плк для начинающих считываем значение Телефон выхода В. Если В в Я перевостоновити віндовс хр на віндовс хр? этот момент находится в Драйвер для led своими руками положительном состоянии, значит Я перевостоновити віндовс хр на віндовс хр? энкодер Программирование stm32 на ассемблере вращается по часовой стрелке, если Я перевостоновити віндовс хр на віндовс хр? В Я перевостоновити віндовс хр на віндовс хр? нуль, то Программирование плк для начинающих энкодер вращается против часовой Телефон стрелки. Считывая Я перевостоновити віндовс хр на віндовс хр? оба выхода, мы Драйвер для led своими руками при помощи Программирование stm32 на ассемблере МК можем Я перевостоновити віндовс хр на віндовс хр? определить направление Программирование плк для начинающих вращения, и при Телефон помощи подсчета импульсов с Я перевостоновити віндовс хр на віндовс хр? А выхода - угол Драйвер для led своими руками поворота. Конечно можно Я перевостоновити віндовс хр на віндовс хр? пойти Программирование stm32 на ассемблере еще дальше и при помощи Я перевостоновити віндовс хр на віндовс хр? вычисления Я перевостоновити віндовс хр на віндовс хр? частоты, можно Программирование плк для начинающих определить насколько быстро происходит Телефон вращение энкодера. Я перевостоновити віндовс хр на віндовс хр? Как вы видите, Драйвер для led своими руками энкодер имеет Программирование stm32 на ассемблере много преимуществ Я перевостоновити віндовс хр на віндовс хр? по Программирование плк для начинающих сравнению с обычным потенциометром.

Телефон Используя энкодер мы будем Я перевостоновити віндовс хр на віндовс хр? управлять яркостью LED светодиода Драйвер для led своими руками при помощи ШИМ Я перевостоновити віндовс хр на віндовс хр? выхода. Программирование stm32 на ассемблере Для считывания данных энкодера мы Я перевостоновити віндовс хр на віндовс хр? будем Я перевостоновити віндовс хр на віндовс хр? использовать простейший Программирование плк для начинающих метод, основанный на программных Телефон таймерах, которые Я перевостоновити віндовс хр на віндовс хр? мы изучали в Драйвер для led своими руками третьем уроке.

Программирование stm32 на ассемблере Как было Я перевостоновити віндовс хр на віндовс хр? сказано выше, Программирование плк для начинающих мы будем использовать Телефон энкодер sparkfun. Первое, что Я перевостоновити віндовс хр на віндовс хр? необходимо сделать, это определить Драйвер для led своими руками как часто нам Я перевостоновити віндовс хр на віндовс хр? нужно Программирование stm32 на ассемблере обращаться к выходам энкодера для Я перевостоновити віндовс хр на віндовс хр? считывания Я перевостоновити віндовс хр на віндовс хр? значений. Итак, Программирование плк для начинающих представим себе, что в Телефон лучшем случае, Я перевостоновити віндовс хр на віндовс хр? мы можем повернуть Драйвер для led своими руками ручку энкодера Программирование stm32 на ассемблере на 180° Я перевостоновити віндовс хр на віндовс хр? за 1/10 Программирование плк для начинающих сек, т.е. Телефон это будет 6 импульсов Я перевостоновити віндовс хр на віндовс хр? за 1/10 сек или Драйвер для led своими руками 60 импульсов в Я перевостоновити віндовс хр на віндовс хр? секунду. Программирование stm32 на ассемблере В реальности быстрее вращать не Я перевостоновити віндовс хр на віндовс хр? сможеЯ перевостоновити віндовс хр на віндовс хр? те. Т.к. Программирование плк для начинающих нам необходимо отслеживать все Телефон полупериоды, то Я перевостоновити віндовс хр на віндовс хр? частота должна быть Драйвер для led своими руками минимум 120 Программирование stm32 на ассемблере Герц. Для Я перевостоновити віндовс хр на віндовс хр? полной уверенности, Программирование плк для начинающих давайте примем 200 Телефон Гц. (Примечание: т.к. Я перевостоновити віндовс хр на віндовс хр? у нас механический энкодер, Драйвер для led своими руками то возможен дребезг Я перевостоновити віндовс хр на віндовс хр? контПрограммирование stm32 на ассемблере актов, а низкая частота позволяет отфильтровывать Я перевостоновити віндовс хр на віндовс хр? дребезг).

Я перевостоновити віндовс хр на віндовс хр?


Я перевостоновити віндовс хр на віндовс хр? По сигналам Программирование плк для начинающих программного таймера нам необходимо Телефон постоянно сравнивать Я перевостоновити віндовс хр на віндовс хр? текущее значение выходДрайвер для led своими руками а А энкодера Программирование stm32 на ассемблере с предыдущим Я перевостоновити віндовс хр на віндовс хр? значением. Если Программирование плк для начинающих состояние изменилось от Телефон положительного к нулю, то Я перевостоновити віндовс хр на віндовс хр? мы проверяем значение Драйвер для led своими руками выхода В и смотрим Я перевостоновити віндовс хр на віндовс хр? положительное Программирование stm32 на ассемблере оно или нет. В зависимости Я перевостоновити віндовс хр на віндовс хр? от Я перевостоновити віндовс хр на віндовс хр? полученного результата Программирование плк для начинающих мы увеличиваем или уменьшаем Телефон счетчик значения Я перевостоновити віндовс хр на віндовс хр? яркости светодиода.

Я перевостоновити віндовс хр на віндовс хр?


Программа Драйвер для led своими руками для данного Программирование stm32 на ассемблере урока приведена Я перевостоновити віндовс хр на віндовс хр? ниже. Она Программирование плк для начинающих построена на базе Телефон предыдущего урока Fade, где Я перевостоновити віндовс хр на віндовс хр? использовалась функция millis() для Драйвер для led своими руками задания временных интервалов. Я перевостоновити віндовс хр на віндовс хр? Временной Программирование stm32 на ассемблере интервал у нас будет 5 Я перевостоновити віндовс хр на віндовс хр? мс Я перевостоновити віндовс хр на віндовс хр? (200 Гц)

Программирование плк для начинающих /*
** Энкодер
** Телефон Для управлением Я перевостоновити віндовс хр на віндовс хр? яркостью LED используется Драйвер для led своими руками энкодер Sparkfun
Программирование stm32 на ассемблере */
 
int Я перевостоновити віндовс хр на віндовс хр? brightness = Программирование плк для начинающих 120;       // яркость Телефон LED, начинаем с половины
Я перевостоновити віндовс хр на віндовс хр? int fadeAmount = 10;        Драйвер для led своими руками // шаг изменения Я перевостоновити віндовс хр на віндовс хр? яркости Программирование stm32 на ассемблере LED
unsigned long currentTime;
unsigned Я перевостоновити віндовс хр на віндовс хр? long Я перевостоновити віндовс хр на віндовс хр? loopTime;
const Программирование плк для начинающих int pin_A = 12;       Телефон // pin Я перевостоновити віндовс хр на віндовс хр? 12
const int Драйвер для led своими руками pin_B = Программирование stm32 на ассемблере 11;       // Я перевостоновити віндовс хр на віндовс хр? pin 11
Программирование плк для начинающих unsigned char encoder_A;
Телефон unsigned char encoder_B;
unsigned Я перевостоновити віндовс хр на віндовс хр? char encoder_A_prev=0;
 
void setup()  Драйвер для led своими руками {
  // declare Я перевостоновити віндовс хр на віндовс хр? pin Программирование stm32 на ассемблере 9 to be an output:
  Я перевостоновити віндовс хр на віндовс хр? pinMode(9, Я перевостоновити віндовс хр на віндовс хр? OUTPUT);         // Программирование плк для начинающих устанавливаем pin 9 как Телефон выход
  pinMode(pin_A, Я перевостоновити віндовс хр на віндовс хр? INPUT);
  pinMode(pin_B, INPUT);
  Драйвер для led своими руками currentTime = Программирование stm32 на ассемблере millis();
  loopTime Я перевостоновити віндовс хр на віндовс хр? = currentTime;
Программирование плк для начинающих }
 
void loop()  Телефон {
  currentTime = millis();
  Я перевостоновити віндовс хр на віндовс хр? if(currentTime >= (loopTime + Драйвер для led своими руками 5)){ // проверяем Я перевостоновити віндовс хр на віндовс хр? каждые Программирование stm32 на ассемблере 5мс (200 Гц)
    encoder_A = Я перевостоновити віндовс хр на віндовс хр? digitalRead(pin_A);     Я перевостоновити віндовс хр на віндовс хр? // считываем Программирование плк для начинающих состояние выхода А энкодера
    Телефон encoder_B = Я перевостоновити віндовс хр на віндовс хр? digitalRead(pin_B);     // считываем Драйвер для led своими руками состояние выходПрограммирование stm32 на ассемблере а А энкодера   
    Я перевостоновити віндовс хр на віндовс хр? if((!encoder_A) && (encoder_A_prev)){    // Телефон если состояние изменилось с Я перевостоновити віндовс хр на віндовс хр? положительного к нулю
      if(encoder_B) Драйвер для led своими руками {
        // Я перевостоновити віндовс хр на віндовс хр? Программирование stm32 на ассемблере выход В в полож. сост., значит вращение Я перевостоновити віндовс хр на віндовс хр? по Я перевостоновити віндовс хр на віндовс хр? часовой стрелке
        Программирование плк для начинающих // увеличиваем яркость, не Телефон более чем Я перевостоновити віндовс хр на віндовс хр? до 255
        if(brightness Драйвер для led своими руками + fadeAmount <= 255) Я перевостоновити віндовс хр на віндовс хр? brightness += Программирование плк для начинающих fadeAmount;              
      }  
      else Телефон {
        // Я перевостоновити віндовс хр на віндовс хр? выход В в 0 сост., значит Драйвер для led своими руками вращение против часовой Я перевостоновити віндовс хр на віндовс хр? стрелки    
        Программирование stm32 на ассемблере // уменьшаем яркость, но не Я перевостоновити віндовс хр на віндовс хр? ниже Я перевостоновити віндовс хр на віндовс хр? 0
        if(brightness Программирование плк для начинающих - fadeAmount >= 0) Телефон brightness -= Я перевостоновити віндовс хр на віндовс хр? fadeAmount;              
      }  
 
    }  
    Драйвер для led своими руками encoder_A_prev = Программирование stm32 на ассемблере encoder_A;     // Я перевостоновити віндовс хр на віндовс хр? сохраняем знПрограммирование плк для начинающих ачение А для следующего Телефон цикла
     
    analogWrite(9, brightness);   // Я перевостоновити віндовс хр на віндовс хр? устанавливаем яркость на 9 Драйвер для led своими руками ножку
    
    loopTime = Я перевостоновити віндовс хр на віндовс хр? currentTime;
  Программирование stm32 на ассемблере }                      
}