Entrenador para PIC 18F2550

Mario Sacco . Vista 85861 veces

Con el entrenador que hoy te traemos comenzamos una pequeña serie de artículos que te permitirán disfrutar un PIC de 8 bits de alto rendimiento: el 18F2550. En esta primera entrega abordaremos los detalles constructivos y particularidades de este entrenador. Con las características elementales e imprescindibles de hoy, esta herramienta de desarrollo nos ayudará a tener una plataforma de trabajo orientada a ensayar los códigos que luego elevaremos hacia aplicaciones más complejas. Conectividad USB, bus I2C, múltiples entradas analógicas con resolución de 10 bits y todas las prestaciones por descubrir que puede ofrecerte el PIC18F2550. Si estabas necesitando un entrenador sencillo, robusto y útil, no busques más; aquí lo has encontrado.


  • Dentro del micromundo de aquellos que nos dedicamos a hacer experimentos con microcontroladores existimos los que trabajamos en forma exclusiva con PIC. Existen otras personas que sólo utilizan Atmel, por ejemplo. Es decir, cuando un diseñador encuentra comodidad en el manejo y versatilidad en las prestaciones, se decanta por una marca de preferencia o, como también se acostumbra a decir, por una familia en particular. Hay quienes prefieren una marca específica para una aplicación en particular y otras marcas para otros destinos, alternando así las opciones que el mercado ofrece según el diseño a realizar. Dentro de toda esa fauna electrónica también convivimos los que “adoptamos” un tipo de microcontrolador y hacemos con él todos los ensayos que intentamos aprender.

    El PIC 18F2550, el pequeño "gigante" con USB El PIC 18F2550, el pequeño "gigante" con USB

    Así como tuvieron su época de esplendor el 16F84A, el 16F628A, el 16F877A, hoy el 18F2550 se presenta como un microcontrolador muy similar al (también antiguo) 16F876A pero con las grandes ventajas que brinda la familia 18F. Se destacan, entre otras cualidades, un mayor tamaño de memoria disponible para almacenar programas, sumado a la posibilidad de realizar aplicaciones con conectividad USB. Ventajas muy atractivas en la actualidad gracias a la proliferación de ordenadores móviles donde el puerto serie ha dejado su reinado en manos de los puertos USB. Luego de armar y desarmar una y otra vez sobre una placa de pruebas o un protoboard un circuito para ensayar, un nuevo termómetro I2C que hemos comprado, un acelerómetro con salidas lineales o un flamante LCD gráfico que nos acaban de regalar, nos damos cuenta que debemos tener un sistema armado y siempre funcional donde podamos realizar las prácticas iniciales de aquellos dispositivos que luego traslademos hacia aplicaciones mayores, más elaboradas y complejas. Sin embargo, siempre utilizamos el mismo protoboard que, sin que podamos evitarlo, con el uso intensivo comienza a tener contactos que no funcionan del todo bien y muchas veces frustran nuestros intentos de hacer un ensayo rápido y exitoso.

    Todos los puertos tienen conexión al exterior Todos los puertos tienen conexión al exterior

    Otras ocasiones más graves son aquellas en las que, por la premura de lograr un trabajo rápido, equivocamos conexiones elementales y dañamos componentes que nos cuestan mucho dinero. Peor aún es el caso de aquellos que no poseen siquiera un protoboard y se encuentran obligados a armar un circuito sobre una placa universal de pruebas. Los enjambres de cables y las soldaduras “gordas o anchas” pueden ser mortales para un microcontrolador y un dolor de cabeza (y bolsillo) muy grande para nosotros. Es por todo esto que decidimos armar este entrenador para PIC 18F2550. No para estudiar el funcionamiento del microcontrolador mencionado sino para utilizar una plataforma sencilla de circuito y adaptarla de acuerdo a los experimentos que vayan surgiendo en el camino y sean dignos de observar, estudiar y analizar.

    ¿Recuerdas la cantidad de montajes que hemos visto armados en un protoboard durante este año y el 2009? Muchos en los que sólo deseábamos ensayar un trozo de código, un dispositivo I2C o una aplicación del ADC de un microcontrolador. A partir de ahora los trabajos pequeños tendrán su soporte en este entrenador. Tampoco será un desarrollo capaz de trabajar con múltiples microcontroladores, ni varias alimentaciones, ni diferentes cristales osciladores. Nada de eso. Será el PIC que utilizamos siempre, con el cristal que colocamos siempre, con posibilidad de instalar rápidamente el display que utilizamos siempre. Por lo tanto, a este entrenador no te lo anunciamos como una gran novedad tecnológica ya que hay miles de aplicaciones similares y superiores en la web. Te invitamos a que lo implementes para tener un trabajo más ordenado, más prolijo y con resultados más rápidos y eficaces.

    Vista del circuito impreso desarrollado Vista del circuito impreso desarrollado

    El circuito impreso es de simple faz y puedes utilizar el material que te resulte más cómodo de trabajar. Teniendo en cuenta que será una aplicación que utilizaremos a menudo, nosotros hemos hecho el prototipo sobre FR3 (fibra de vidrio) pero si lo deseas, puedes hacer tu construcción sobre material más económico (FR2). La distribución de los componentes sobre la placa está realizada de manera que si deseamos montar el display tengamos fácil acceso a las entradas y salidas analógicas/digitales del puerto A y las disponibles del puerto B y C. Recuerda que para el display se utilizan 6 pines del puerto B dejando RB0 y RB1 libres. A su vez, estos pines corresponden a la conexión del bus I2C (SDA y SCL) y disponen, al igual que el display, de un conector exclusivo identificado en la serigrafía del lado del cobre. De todos modos, como algunos saben, existen técnicas de programación que permiten la coexistencia de interruptores (un teclado tipo matriz por ejemplo) en el mismo puerto donde se conecta el display. Es por esta razón que el puerto B en su totalidad está disponible con un conector a pesar de estar el display montado en la placa principal.

    Vista superior de la placa armada Vista superior de la placa armada

    La alimentación del sistema no necesitará de una fuente externa en la mayoría de los casos. La alimentación de 5Volts para el 18F2550 y para (en el caso de utilizarlo) el display pueden provenir sin inconvenientes desde cualquier puerto USB del ordenador portátil o del ordenador de mesa. En la sumatoria de todos los consumos de la placa, no llegaríamos nunca a comprometer la funcionalidad del puerto con consumos de corriente perjudiciales. Por otro lado, si nuestros ensayos se deben realizar fuera del alcance de un ordenador, podemos acceder con energía desde cualquier dispositivo que se pueda conectar a la red domiciliaria, al encendedor del coche o cualquier otro dispensario de energía donde la gente acostumbra a conectar los teléfonos móviles para su carga de baterías. Donde exista un conector USB podremos obtener energía y experimentar con este entrenador que hoy te proponemos.

    Utilizando un cristal de 20Mhz. podemos realizar aplicaciones que sean de fácil acceso a cualquier ordenador mediante la conexión USB de datos. Un claro ejemplo de esta técnica lo encontramos en el voltímetro realizado hace pocas semanas atrás. A partir de la facilidad que nos brinda el entrenador, teniendo todos los elementos indispensables en una sola placa, conectar el 18F2550 al ordenador será, para aquellos que aún no lo hayan hecho nunca, una tarea muy sencilla y una experiencia muy enriquecedora.

    El entrenador con el LCD instalado y corriendo un programa de prueba El entrenador con el LCD instalado y corriendo un programa de prueba

    Las posibilidades de conexión que brinda la placa entrenadora son muy amplias. En el prototipo que hemos preparado, encontramos cuatro entradas analógicas por el puerto A con conectores de tres terminales dispuestos de manera perpendicular a la posición del PIC. En los tres terminales de cada conector disponemos de GND, +5Volts y la entrada que nos lleva a cada pin del puerto A. Este tipo de construcción permite instalar, por ejemplo, un potenciómetro en AN0, una fotocélula (LDR) en AN1, un termómetro tipo LM35 en AN3, etc. Tener acceso a los 5Volts en cada conector permite alimentar cualquier dispositivo activo que entregue información analógica a los ADC del puerto A. Debes recordar que mediante la configuración del registro ADCON1 puedes seleccionar los pines del puerto A que trabajarán como entradas analógicas y los que funcionarán en modo digital. Estos últimos a través de la instrucción TRIS, se configuran como entradas o como salidas. Esto es universal en cualquier lenguaje de programación.

    Circuito propuesto para la placa entrenadora Circuito propuesto para la placa entrenadora

    Otras salidas digitales disponibles son RC0, RC1 y RC2, siendo esta última muy útil cuando trabajamos con PWM. RC6 y RC7 se llevan hacia un conector independiente para posibilitar una salida directa hacia un módulo de conversión TTL – RS232 / RS485 o para utilizarlos como salidas o entradas digitales. Completan el montaje un conector ICSP para programar el PIC (al igual que lo hemos hecho siempre, o sea, sin quitarlo de la placa), un pulsador de RESET y un puente (jumper) para conectar o desconectar la luz del display (backlight). Aplicamos este último recurso para minimizar consumos en aquellos casos en que estemos alimentando desde el puerto USB del ordenador cualquier fuente de datos conectada a alguna de las entradas.

    Para ensayar, para experimentar, para aprender. Todo con el 18F2550 Para ensayar, para experimentar, para aprender. Todo con el 18F2550

    Un entrenador sencillo, simple y que no viene a eclipsar ni a competir con nadie. No se intenta imitar nada con este montaje, sólo tener las conexiones ordenadas en una sola placa siempre lista para usar. Dicho de otro modo: la finalidad aquí es dejar de lado el protoboard para practicar con módulos que se puedan acoplar con facilidad y ensayar códigos para PIC o para interfaces en el ordenador de manera rápida, sencilla y segura. Esperamos que puedas armarlo y aprovechar todas las bondades y virtudes del PIC 18F2550 agregando los módulos que construiremos y estudiaremos de aquí en adelante. No te lo pierdas.

    Circuito Impreso en PDF  Descargar

¿Y tú, qué opinas?

  • #1 <a href="../../foro/member.php?u=23431" target="_self">kevenisac</a>
    kevenisac sábado, 24 de abril de 2010, 18:11

    Estimado Mario,

    Pondrás algún enlace para descargar el plano para fabricar del impreso? Excelente!!!

    Saludos amigo.

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #2 <a href="../../foro/member.php?u=11876" target="_self">franksd</a>
    franksd sábado, 24 de abril de 2010, 18:32

    Sin palabras , otro gran trabajo ! Tengo una duda y una petición : la duda es sobre el precio del micro , y la petición es si puedes revisar el post " Luces de emergencia para el hogar" mas precisamente el ultimo comentario.
    Una vez mas felicitaciones y Gracias!!

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #3 Almejandro
    Almejandro sábado, 24 de abril de 2010, 18:45

    Hola mario, muchas gracias por estos grandes articulos. Quisiera hacerte un par de preguntas:
    1-Se puede usar los pic 18F en pic simulator ide?

    2-Y el PCB?

    3-Que tan dificil es adoptar la programacion tanto en ASM, C o Basic con los PICs 18F, que documentacion me recomiendas?

    Muchas gracias por todo.

    Responder >> Attention Minus Plus Votos: 2 de 2
  • #4 Tekenen
    Tekenen sábado, 24 de abril de 2010, 19:48

    Como siempre genial tu aporte Gracias Mario

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #5 mindmaster
    mindmaster sábado, 24 de abril de 2010, 20:22

    increible gracias por el aporte

    Responder >> Attention Minus Plus Votos: -4 de 6
  • #6 DIEGO
    DIEGO sábado, 24 de abril de 2010, 21:24

    eee,,,, gente de neo teo ,, ,, , a ver si me ayudan a construir n sistema,, cnc,, que ando buscando uno pero no encuentoo .. .:) ,., un tema algo asi como que componentes que se nesesitan e ir armando uno a uno xD ,, , , sueño mucho XD ????

    jajaaj ,, , gracais x el aporte cabal taba perguntandome que se nesesitaba para hacer un puerto usb xD , ,, no sabia que era asi de complicado ,

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #7 gundream
    gundream sábado, 24 de abril de 2010, 21:47

    a mi tambien me gustaría poder armar estas cosas en mi ordenador con un programa simulador, por lo menos, pero los que he encontrado necesitan de mucho tiempo para aprender a usarlos.
    Sería interesante que nos hiciesen un tutorial empezando desde cero con algun programa simulador.

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #8 pepo
    pepo sábado, 24 de abril de 2010, 22:06

    Pues aunque a uno no le gusten mucho los protoboards, tarde o temprano los necesita. Yo siempre hago mis tarjetas "entrenadoras" con una fila de conectores sip (obviamente conectados a todos los pines del pic) por debajo de la tarjeta, de modo que la pueda clavar a cualquier protoboard en el momento en que lo necesite y ahi tengo todo el pic replicado para conectarle lo que sea. A mi tampoco me gusta trabajar con protoborad, pero al final siempre se necesitan.

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #9 <a href="../../foro/member.php?u=26573" target="_self">asellerator</a>
    asellerator domingo, 25 de abril de 2010, 02:21

    Qtal. Podrían poner el PCB así como la lista de materias?

    Me gustaría solo armar.

    Gracias. Excelente.

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #10 comrade k
    comrade k domingo, 25 de abril de 2010, 05:00

    exelente trabajo

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #11 <a href="../../foro/member.php?u=26579" target="_self">sandman</a>
    sandman domingo, 25 de abril de 2010, 08:03

    Dónde lo puedo comprar? quiero practicar con él!!! , o la lista de componentesss? , soy un poco nuevaa en estooo heelp , me latió muchooo !!.. Felicidades.

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #12 Sklsmly
    Sklsmly domingo, 25 de abril de 2010, 12:04

    No esta nada mal... Solo faltaría que también fuera grabador.

    Y qué compilador de C me recomendáis (para PICs, claro :P)? He probado un par, como el GCC, y otro que no recuerdo, pero me dieron algunos problemas (un mismo programa podía funcionar o no según con qué lo compilase)

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #13 german12345
    german12345 domingo, 25 de abril de 2010, 20:57

    Gracias por el trabajo !!

    Es grabador tambien ?

    vale tambien para el PIC18F4550 ?

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #15 <a href="../../foro/member.php?u=19193" target="_self">Maggi</a>
    Maggi lunes, 26 de abril de 2010, 14:09

    Muy linda placa Mario.
    Y buenísimo el tema que proponés del i2c.
    Un abrazo.
    Jukinch

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #16 carlos
    carlos martes, 27 de abril de 2010, 02:49

    Hola Mario por aqui de nuevo pasando a saludarte, y comentarte que sigo pendiente de todos los articulos que expones con esa practicidad que te distingue, y bueno en este proyecto no es la excepcion, asi que hare el esfuerzo por hacer el entrenador que propones y estar al pendiente de las lecciones, mientras tanto recibe un saludo de un amigo desde Mexico¡...

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #17 Newdimention
    Newdimention martes, 27 de abril de 2010, 19:08

    Esta exelente podrian colocar la lista de materiales? me gustaria armalo

    Responder >> Attention Minus Plus Votos: 1 de 1
  • #18 <a href="../../foro/member.php?u=16843" target="_self">kianji</a>
    kianji miércoles, 28 de abril de 2010, 22:14

    Excelente, yo me anoto ^_^

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #19 <a href="../../foro/member.php?u=11876" target="_self">franksd</a>
    franksd jueves, 29 de abril de 2010, 14:34

    #6Saludos Diego ! busca en http://www.instructables.com/ hay mucos sistemas CNC DIY, electronicamente es muy simple construir uno, por ahi se complica el montaje mecanico. Hace mucho encare un proyecto de un CNC propio pero nunca tuve tiempo para terminarlo.
    Espero que tengas mejor suerte
    Saludos y exitos!

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #20 <a href="../../foro/member.php?u=26779" target="_self"></a>
    martes, 04 de mayo de 2010, 03:51

    hola mario antes que nada te mando un saludo y decirte que me encantan los montajes que haces, son geniales!!!, pero tengo una duda, tal vez un poco tonta, lo que pasa esque soy novato en esto de la electronica y lei tu post de "Voltímetro USB NeoTeo" lo que quisiera preguntarte es que compilador usaste para hacer el programa del pic? esque tengo uno que programa en basic tambien pero al momento de compilar tu firmware tan cual esta me marca errores y no se como arreglarlo o si es el compilador correcto, estoy usando el pic simulator no se si sea el correcto o que tenga que hacer para que funcione el programa, gracias de antemano y espero estes muy bien gracias!!!

    Responder >> Attention Minus Plus Votos: 0 de 0
  • #21 stoker
    stoker martes, 04 de mayo de 2010, 21:25

    hola, gracias por el aporte, tengo solo una duda, en el esquematica hay 9 capacitores, y en el impreso hay 10, ademas, la conexion al pin 20(VDD) solo tiene el capacitor de 100n, y en el impreso aparece conetado tambien a VCC, espero que alguien pueda despejar estas dudas gracias

    Responder >> Attention Minus Plus Votos: 1 de 1
  • « «« Anterior123Siguiente »» »
    Cargando...Cargando...

  • nuevo comentario
    Nombre

    Campo obligatorio

    Email

    Escriba una dirección de correo electrónico con el formato sunombre@ejemplo.com.

    Campo obligatorio

 
Ir arriba