Модуль энкодера KY-040
53,29 ₴
Очікується
* Фактичний вид товару може відрізнятись від приведеного на зображеннях. Будь-ласка, уточнюйте необхідні деталі у менеджера.
Опис
Модуль энкодера
Пример скетча для Arduino:
// ----------------------------------------------------------------------------- // constants const int PinCLK = 2; // CLK энкодера const int PinDT = 9; // DT энкодера const int PinSW = 8; // кнопка энкодера (SW) // глобальные переменные volatile float frequency = 99.0; // Процедура, происходящая при прерывании void isr () { static unsigned long lastInterruptTime = 0; unsigned long interruptTime = millis(); // Если повторное прерывание произошло менее чем 5 мс назад, не учитываем его if (interruptTime - lastInterruptTime > 15) { if (!digitalRead(PinDT)) frequency = (frequency - 0.05); else frequency = (frequency + 0.05); } lastInterruptTime = interruptTime; } // ISR void setup() { Serial.begin(9600); pinMode(PinCLK,INPUT); pinMode(PinDT, INPUT); pinMode(PinSW, INPUT); attachInterrupt(0, isr, FALLING); // прерывание 0 - на пине №2 платы Arduino UNO Serial.println("Start"); } // setup void loop() { float lastCount = 0; while (true) { if (frequency != lastCount) { lastCount = frequency; Serial.print("frequency: "); Serial.println(frequency); } } // while } //loop
Тільки покупці, які увійшли на сайт і вже купили цей товар, можуть залишати відгуки.
Відгуки
Відгуків немає, поки що.