Autor Tema: Switch case y leds  (Leído 263 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Alex111

  • PIC10
  • *
  • Mensajes: 1
Switch case y leds
« en: 23 de Mayo de 2019, 03:46:21 »
Miren esto es muy simple, soy un principiante en programacion y no se como emplear el switch case usando el pic 18f45k50 para prender 4 led y un motor a paso y un servo, podrian ayudarme? estoy perdido

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 7357
Re:Switch case y leds
« Respuesta #1 en: 23 de Mayo de 2019, 07:02:48 »
El switch case no tiene nada que ver con el manejar un puerto, un motor paso a paso y un servo. Por lo tanto deberias buscar de forma separada cada uno..

El switch case funciona asi:

Código: C
  1. switch(numero)
  2. {
  3.   case 0:
  4.        //Instruccion 0
  5.        break;
  6.   case 1:
  7.        // Instruccion 1
  8.   case 2:
  9.        // Instruccion 2
  10.       break;
  11.   default:
  12.        // Instruccion 3
  13.        break;
  14. }

Vos dentro del switch vas a preguntar por alguna variable que tengas, dependiendo del valor de la variable se ejecuta algun case.. observa que algunos tienen un break, ese break hace que apenas termine  salga... Y te lo explico con un ejemplo.
Suponete que tu numero es 0, por lo tanto entra al case 0, Ejecuta la instruccion 0, y sale de todo el switch.
Ahora si tu numero era 1, va a Ejecutar la instruccion 1, pero como no hay un break, sigue y ejecuta la Instruccion 2, y como ahi SI hay un break recien sale.
Si por ejemplo numero tiene un valor mayor a 2 en este ejemplo ( 3,4,5,6,etc..... ) y no hay un case para eso, entonces entra en "default"

Es casi casi como tener multiples if preguntando por la variable numero, donde cada caso es la igualdad a ese numero

Código: C
  1. if(numero == 0)
  2. {
  3.   // Instruccion 0
  4. }
  5. if(numero == 1)
  6. {
  7.   // Instruccion 1
  8. }
  9. if(numero == 2)
  10. {
  11.   // Instruccion 2
  12. }
  13. if(numero > 2)
  14. {
  15.   // default
  16.   // Instruccion 3
  17. }

Respecto al manejo de motores paso a paso, o usas un driver donde seleccionas la direccion y vas dando pulsos, o manejas cada bobina con un driver entre medio. En resumen vas a tener que averiguar como se hace y como funciona el paso a paso.
Y finalmente el servo, tenes que generar un PWM, Vas a tener que averiguar por esto y que señal se debe enviar al servo para que este en una posicion.


 

anything