.. note:: Hola, ¡bienvenido a la Comunidad de Entusiastas de SunFounder para Raspberry Pi, Arduino y ESP32 en Facebook! Únete a otros entusiastas para profundizar en el mundo de Raspberry Pi, Arduino y ESP32. **¿Por qué unirte?** - **Soporte experto**: Resuelve problemas postventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo. - **Aprende y comparte**: Intercambia consejos y tutoriales para mejorar tus habilidades. - **Avances exclusivos**: Accede anticipadamente a anuncios de nuevos productos y adelantos. - **Descuentos especiales**: Disfruta de descuentos exclusivos en nuestros productos más recientes. - **Promociones festivas y sorteos**: Participa en sorteos y promociones especiales en días festivos. 👉 ¿Listo para explorar y crear con nosotros? Haz clic en [|link_sf_facebook|] y únete hoy mismo. .. _ar_rotary_encoder: 2.25 Módulo de Codificador Rotativo ====================================== Resumen --------- En esta lección, aprenderás sobre el codificador rotativo. Un codificador rotativo es un interruptor electrónico que emite un conjunto de pulsos regulares en una secuencia de tiempo estrictamente establecida. Cuando se usa con un CI, puede realizar operaciones como incremento, decremento, cambio de página y otras acciones como el desplazamiento del mouse o la selección de menús. Componentes necesarios -------------------------- .. image:: img/Part_two_25.png * :ref:`cpn_mega2560` * :ref:`cpn_wires` * :ref:`cpn_rotary` Circuito Fritzing --------------------- En este ejemplo, conectamos directamente los pines del codificador rotativo a la placa Mega 2560. Conecta el GND del codificador a GND, 「+」 a 5V, SW al pin digital 4, DT al pin digital 3 y CLK al pin digital 2. .. image:: img/image207.png :align: center Diagrama esquemático ----------------------- .. image:: img/image208.png :align: center Código --------- .. note:: * Puedes abrir el archivo ``2.25_rotaryEncoder.ino`` en la ruta ``sunfounder_vincent_kit_for_arduino\code\2.25_rotaryEncoder`` directamente. * O copia este código en el IDE de Arduino. .. raw:: html Podrás ver el desplazamiento angular del codificador rotativo impreso en el Monitor Serial. Al girar el codificador en sentido horario, el desplazamiento angular aumentará; al girarlo en sentido antihorario, el desplazamiento disminuirá. Si presionas el interruptor del codificador, las lecturas volverán a cero. Análisis del código -------------------- Al utilizar el codificador rotativo, se presentan las siguientes situaciones de nivel de pin: 1. Al girar el eje, el dtPin cambiará de nivel alto a nivel bajo. 2. clkPin permanecerá en nivel alto cuando el eje gira en sentido horario; de lo contrario, pasa a nivel bajo. 3. Al presionar el eje, swPin tendrá un nivel bajo. A partir de esto, el flujo del programa se muestra a la derecha. Para un análisis detallado sobre el cambio potencial de estado, consulta :ref:`ar_state_change`. .. image:: img/image209.png :align: center Imagen del fenómeno ---------------------- .. image:: img/image210.jpeg :align: center