Autor Tema: Ejemplos proyectos 18f2550, mplabX y XC8  (Leído 5929 veces)

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

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Ejemplos proyectos 18f2550, mplabX y XC8
« en: 11 de Octubre de 2014, 15:58:25 »
Hola a todos, ya hace tiempo que estaba desconectado, pero ahora vuelvo a las andadas, aquí dejo unos ejemplos básicos para el uso del mplabX y xc8, no se si me he equivocado de seccoón o simplemente son demasiado básicos, pero bueno, aquí están...

utilizando 18f2550, en todos ellos se utiliza comunicación rs232, y se adjunto el proyecto en proteus para simular.:

Uso de i2c -> con una libreria personal para enviar datos del tipo entero.
Uso pwm
Uso del lcd

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #1 en: 11 de Octubre de 2014, 15:59:21 »
usando el PWM

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #2 en: 11 de Octubre de 2014, 16:00:07 »
usando el i2c, en modo maestro

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #3 en: 11 de Octubre de 2014, 16:00:35 »
usando el i2c en modo esclavo

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #4 en: 12 de Octubre de 2014, 17:09:06 »
adjunto uno con PWM utilizando el timer 0...

aquí controlo 6 servos utilizando el TIMER0,

la filosofía es calcular los tiempos en alto de cada uno de los servos según su posición, y activar un servo detrás de otro, con lo cual, si cada 20ms se tiene que repetir la trama, y suponiendo que como máximo cada servo se activa 2ms en su peor de los casos, podemos ampliarlo hasta unos 10 servos fácilmente.....

es decir, configuramos timer0 para 20 ms, activamos el primer servo, ponemos a 1 su salida y escribimos en Writetimer0() el tiempo en alto de este servo, cuando desborda, ponemos a 0 su salida, ahora ponemos a 1 la salida del siguiente servo y escribimos en Writetimer0() el tiempo en alto de este servo... y así hasta llegar al final.... la limitación radica en que antes de 20 ms tenemos que haber activado todos los servos para volver a repetir la trama.

también se encentra la simulación en proteus.

debido al tamaño máximo, solo subo el proteus y el archivo principal ".c", dentro de la carpeta "dis" esta el ".hex" para simular en proteus.


espero que os sea de ayuda....

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #5 en: 12 de Octubre de 2014, 17:15:56 »
adjunto uno con PWM utilizando el timer 0...

aquí controlo 6 servos utilizando el TIMER0,


en este caso, la diferencia radica en que aquí inicializo todos los servos a la vez, y voy apagandolos según se cumpla su tiempo en alto,

en este caso tenemos que ordenar los servos según su posición y según el tiempo que estén en alto, de menos a mayor.

de forma que los encendemos todos a la vez, y en el primer instante activamos el timer0 con el valor del servo que menos tiempo esta activo, al cumplirse este tiempo, apagamos este servo, y escribimos en el timer0 el valor del segundo servo menos el tiempo transcurrido en el primero, al cumplirse, apagamos el segundo servo, y escrivimos en timer0 el valor del tercer servo menos activo menos el tiempo transcurrido en los dos anteriores servos... y así hasta el final...

a diferencia que el servo de antes, en este caso podemos añadir tantos servos como nos permita el micro, ya que no tenemos limitación en software, si no limitación por hardware (patillas disponibles en el micro), esto se debe a que todos los servos se activan a la vez y se van apagando según se cumpla su tiempo.

en el código esta bien explicado y es fácil de entender, inicialmente esta para 6 servos, pero no hay problema para adaptarlo a tantos servos como se desee.. esta es una buena opción para un número elevado de servos, sin la necesidad de ir a algún hardware o pic específico pre-programado adrede para esto.


adjunto simulación en proteus y el proyecto en mplabx xc8

Desconectado Miquel_S

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1251
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #6 en: 12 de Octubre de 2014, 19:00:23 »
Gracias illusionista_86 por el aporte, y para los que estamos aprendiendo nunca hay nada básico. Aunque yo lo pondría en:
http://www.todopic.com.ar/foros/index.php?topic=40649.0
Y así lo tendríamos mas ordenado.

Miquel_S
Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #7 en: 12 de Octubre de 2014, 22:14:03 »
gracias Miquel_S, pero no se porque, el antivirus me bloquea esa página, como si hubiera un virus, trataré de ver que pasa.

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #8 en: 17 de Octubre de 2014, 01:29:20 »
Yo no tengo antivirus pero el Chrome ha detectado lo mismo y no me deja entrar:
https://www.dropbox.com/s/5rcpua01d6vnclo/Captura%20de%20pantalla%202014-10-16%2023.27.44.png?dl=0

Por cierto, gracias illusionista_86 por tus aportes  ((:-))

Desconectado Miquel_S

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1251
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #9 en: 17 de Octubre de 2014, 05:45:39 »
Yo estoy usando mozilla firefox en linux y no tengo problemas en abrir el enlace.

Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

Desconectado Miquel_S

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1251
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #10 en: 18 de Octubre de 2014, 14:51:58 »
Hola illusionista_86, serias tan amable subir una imagen con la simulación del uso del Lcd en proteus, solo para ver como tienes conectado dicho Lcd y saber que puerto estas usando.
Es que no se si es que tengo algo mal en mi librería.

Gracias.
Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.

Desconectado illusionista_86

  • PIC10
  • *
  • Mensajes: 23
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #11 en: 20 de Octubre de 2014, 10:52:05 »
okey, esta tarde la subo. pero esta conectado al igual que esta configurada inicialmente la libreria en xc8, al puerto B, de RB0 a RB4 se corresponde con D4 a D7 del LCD, y luego RB5, RB6 y RB7, que si no recuerdo mal son E, RW, RS respectivamente, creo....
si no lo sabes basta con entrar a tu libreria xlcd.h y ver como esta configurado tus pines.

Desconectado Miquel_S

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1251
Re: Ejemplos proyectos 18f2550, mplabX y XC8
« Respuesta #12 en: 20 de Octubre de 2014, 11:48:59 »
Gracias illusionista_86 de ser así no importa que subas la imagen.

Miquel_S
 
Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.