Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Temporizador de cuenta regresiva ajustable

Componentes y suministros

Arduino Mega 2560
Cualquier arduino debería funcionar
× 1
Pantalla de 4 dígitos y 7 segmentos
× 1
Pulsador
× 4
Buzzer
× 1
Cables de puente (genéricos)
× 21
Protoboard sin soldadura de tamaño completo
× 1

Acerca de este proyecto

El temporizador de cuenta regresiva es probablemente el proyecto más natural para la pantalla de 7 segmentos de 4 dígitos. Mientras exploraba lo que está disponible en línea, encontré varios proyectos, pero no encontré el que tenía en mente, a saber, un temporizador de cuenta regresiva ajustable independiente que puede ajustar convenientemente con los botones (y no cargando un código modificado). Así que decidí hacer uno.

Dediqué algo de tiempo a escribir un código que facilitará el uso y ajustará el temporizador para que pueda usarse en la práctica.

El código incluido también se puede utilizar en otros proyectos con pantalla de 7 segmentos de 4 dígitos. En particular, tiene la función que muestra un número dado (0-9999) para un intervalo de tiempo determinado. Quizás esta funcionalidad esté en algunas de las bibliotecas, pero una búsqueda rápida no la reveló. Dado que programar esta pantalla es un poco complicado (ya que solo puede mostrar un dígito a la vez), esta función es realmente útil.

Código

  • Temporizador de cuenta regresiva con pantalla de 4 dígitos y 7 segmentos
Temporizador de cuenta atrás con pantalla de 4 dígitos y 7 segmentos C / C ++
El código contiene la función de temporizador de cuenta regresiva que inicia la cuenta regresiva que se muestra en la pantalla de 7 segmentos de 4 dígitos. También tiene una función útil PrintNumber que muestra un número dado de 4 dígitos en la pantalla durante un período de tiempo determinado. Se puede utilizar en otros proyectos.
 #include  int digit_pin [] ={6, 9, 10, 11}; // PWM Muestra los pines de dígitos de izquierda a derecha en speakerPin =15; #define DIGIT_ON LOW # define DIGIT_OFF HIGHint segA =2; int segB =3; int segC =4; int segD =5; int segE =A0; // el pin 6 se usa en el display 1 para su función pwmint segF =7; int segG =8; // int segPD =; int button1 =13; int button2 =12; int button3 =16; int button4 =17; int countdown_time =60; struct struct_digits {int digit [4]; }; configuración vacía () {pinMode (segA, SALIDA); pinMode (segB, SALIDA); pinMode (segC, SALIDA); pinMode (segD, SALIDA); pinMode (segE, SALIDA); pinMode (segF, SALIDA); pinMode (segG, SALIDA); para (int i =0; i <4; i ++) {pinMode (digit_pin [i], SALIDA); } pinMode (altavozPin, SALIDA); pinMode (botón1, INPUT_PULLUP); pinMode (botón2, INPUT_PULLUP); pinMode (botón3, INPUT_PULLUP); pinMode (button4, INPUT_PULLUP);} void playTone (int tone, int duration) {for (long k =0; k  0; q -) {PrintNumber (q, del); if (digitalRead (button2) ==LOW) {devuelve falso; }} PrintNumber (0,0); playTone (1519,1000); return true;} void reset () {int m, ceros, d, presionado3 =0, presionado4 =0; m =countdown_time; struct struct_digits dig; dig =IntToDigits (countdown_time); while (digitalRead (button1) ==HIGH) {for (int j =0; j <4; j ++) {SwitchDigit (j); lightNumber (dig.digit [j]); retraso (5); } if (digitalRead (button3) ==LOW) {if (presionado3 ==0 || presionado3> 30) {if (countdown_time> 0) {countdown_time - =1; } dig =IntToDigits (countdown_time); } presionado3 + =1; } else if (digitalRead (button4) ==LOW) {if (presionado4 ==0 || presionado4> 30) {if (countdown_time <9999) {countdown_time + =1; } dig =IntToDigits (countdown_time); } presionado4 + =1; } if (digitalRead (button3) ==HIGH) {presionado3 =0; } if (digitalRead (button4) ==HIGH) {presionado4 =0; }}} bucle vacío () {restablecer (); while (! Countdown (countdown_time, 962)) {reset (); } while (digitalRead (button2) ==1) {};} 

Esquemas


Proceso de manufactura

  1. Pantalla de cristal líquido (LCD)
  2. Sobrecarga del método C#
  3. Exposición:La pantalla principal
  4. Kuman TFT 3.5 RetroPie 2018
  5. Tarea Verilog
  6. Juego Arduino Pong - Pantalla OLED
  7. ¿Qué es el temporizador de vigilancia?
  8. Máquina tragamonedas temática ATmega Alien
  9. Jugando con Nextion Display
  10. Temporizador de cuenta atrás de Arduino
  11. Un vistazo a los amortiguadores ajustables