viernes, 23 de marzo de 2012

Análisis USB-PIC'School 2010 – Tercera Impresión


Bienvenido a la tercera impresión del USB-PIC’School 2010. Sigo probando algunos ejemplos del manual. He comprobado la mayoría de los ejemplos del manual y algunos del libro y funcionan a la primera. Por lo que estoy viendo, este entrenador es más fácil, cómodo y rápido más de lo que pensaba.

Abajo presento vídeos de algunos ejemplos del laboratorio.

Ejemplo 8: Juego de luces arriba.

Ejemplo17: El TMR0 como contador de pulsos externos.

Ejemplo 41: El módulo convertidor ADC, multiplexando entradas analógicas.

He estado horas probando códigos por el aire a una velocidad increíble. No hay comparación con una protoboard siempre estando con cables para arriba y cables para abajo. La próxima entrenador la haré yo mismo con otros módulos que desee y uso frecuentemente. Este laboratorio me está sorprendiendo cada vez más. Por ahora, todos los ejemplos que he hecho es bajo el PIC16F886.

He probado el programa Flowcode 4 Demo. Se que ya está la versión Flowcode 5, aún  así me centraré donde vino con el laboratorio USB-PIC’School. He comprobado que como es una demo, sólo admite algunos PIC, precisamente no admite el PIC16F886, si el 16F88 y el 16F887, me centraré el posible sustituto del famoso y popular PIC16F84A que es el PIC16F88 cada vez más reconocida y aceptada para los principiantes y no tan principiantes.



He puesto 8 salidas digitales y 8 entradas digitales con el PIC16F88, pinchando en cada componente, he seleccionado de forma muy rápida las configuraciones.
Antes que nada, primero se hace el diagrama de flujo, luego introducir los componentes al panel para configurarlos. El código ejemplo que hice es simplemente leer las entradas digitales del puerto A, luego de forma muy rápida, el contenido del puerto A se pasa al puerto B donde tiene los Led, conocido como salidas digitales.

Lo he hecho en un momento y sin introducir ningún código en ASM ni en C. El Flowcode por primera vez me ha llamado la atención, dedicaré mi tiempo por un tiempo para hacer muchas más pruebas y hasta tutoriales cuando ya tenga algo de soltura. Dejar claro, prefiero aunque sea más engorroso, aprender el ASM y C porque te abre muchas puertas, el Flowcode es más bien para empezar fácil a programar PIC nada más empezar encerrado a usar sólo ese programa. Está bien para empezar y hacer las cosas muy rápidas. A partir de aquí, es cuestión de gustos e intereses del aprendiz y profesional.




Descargué el Flowcode 5 Demo y me ocurre lo mismo. Esta vez usando el PIC16F887 que me lo permite la demo. He comprobado por el aire del Flowcode 5 y ha mejorado muchas cosas, sobre todo las variables por fin de más variedad. Si me funciona si le pongo el código que hice desde MPLAB.

                                                                                                  
    LIST     p=16f887    ; Procesador.
    #INCLUDE             ; Directivas del procesador. 
 
    __CONFIG    _CONFIG1, _LVP_OFF & _FCMEN_ON & _IESO_OFF & 
_BOR_OFF & _CPD_OFF & _CP_OFF & _MCLRE_ON & _PWRTE_ON & 
_WDT_OFF & _XT_OSC
    __CONFIG    _CONFIG2, _WRT_OFF & _BOR21V
 
;**********************************************************************
    ORG     0x000
Inicio
    clrf    PORTA
    clrf    PORTB
    clrf    PORTC
    clrf    PORTD
    clrf    PORTE                     
    bsf     STATUS,RP0
    bsf     STATUS,RP1
    clrf    ANSEL
    clrf    ANSELH
    bcf     STATUS,RP1
    clrf    TRISA
    clrf    TRISB
    movlw   b'11111111'
    movwf   TRISC
    clrf    TRISD
    clrf    TRISE
    bcf     STATUS,RP0
 
Principal
    movf    PORTC,W    ; Lee las entradas del puerto C.
    movwf    PORTB     ; Las mismas entradas se pasan en la salida del puerto B.
    goto    Principal
 
    END

Más adelante emplearé mi tiempo con ella y haré tutoriales. Por ahora me basta aprender C y mejorar con soltura el ASM.

Microcontroladores PIC: Teoría y Práctica:


El libro como complemento del USB-PIC’School 2010 que sigo leyendo y practicando con él es de mucha ayuda. Entre teoría y prácticas con los ejemplos estoy en la página 3-35 en estos momentos.

Está muy interesante desde el principio, ya que explica la arquitectura del PIC16F886 y está centrado en él. Se centra en la arquitectura paso a paso, las puertas digitales, analógicas, como funcionan las instrucciones, temporizadores, contadores, comunicación puerto serie y muchas cosas más que puedes ver en el índice general.

Anima al lector hacer tus propias pruebas, no sólo con elegir los ejemplos y te quedas ahí, modifícalos para coger más soltura, así como se aprende, investigando.

Viendo por el aire temas más adelante del libro, falta para mi gusto un ejemplo con la memoria bajo I2C como una 24LC256 por poner un ejemplo, lo mismo para una SPI, aunque le SPI tiene un buen capítulo sobre teoría de la comunicación, que es mucho más rápida que la I2C, las dos son estandar. Otra cosa que se agradece en un libro que hay muy poquito, es ejemplos del USB, en esta obra no lo tiene porque se trata del PIC16F886, no un PIC18F4550 que si está preparado para ello. Si en un futuro hacen nuevas revisiones  o ediciones, sería de agradecer.

Si es un libro nuevo sea la editorial que sea, es muy difícil encontrar un buen libro en castellano como este sobre USB que tanta demanda hay y pocos se atreven hacer libros con USB real, digo real porque los que he visto, te ponen portada con USB y al final es comunicación convertidor por puerto serie-USB y no interesa a estas alturas de la vida y no todos son fiables.

En el manual del USB-PIC’School 2010 usa un sensor de temperatura DS1820 digital, lo bueno de este libro, que los ejemplos no todos son los mismos, se trata en temas de señales analógicos para usar el famoso y popular LM35 que tanta gente le gusta usar como sensor de temperatura.

En el libro, te explica los pasos necesarios para acceder los contenidos de los ejemplos en ASM, C  y Flowcode. Este último con un buen tutorial al castellano y ejemplos con USB-PIC’School 2010 muy bien hecho y de fácil compresión, algo de agradecer.

Es el segundo libro de microcontroladores de PIC de Microchip que compro. Libros en español sobre AVR de Atmel para aprender otras experiencias aún no he visto ninguno, y los que están en Inglés son buenísimos.

Contraportada del libro.

Aquí tienes el foro de MSE oficial para cualquier consulta sobre USB-PIC'School, PIC y variedad de temas.

Probando el puerto serie con el entrañable, famoso y popular PIC16F84A en la protoboard bajo el HyperTerminal de Windows y una interfaz sobre el control que hice y sigo haciendo bajo Visual C# que puedes ver y probar aquí.


Cuando esté más avanzado en el laboratorio y libro sobre los PIC, mostraré más ejemplos, imágenes, vídeos incluyendo proyectos de prueba para luego montarlos en placas.

Muchas gracias por tu tiempo de leer hasta aquí.

Partes:
Análisis  USB-PIC'School 2010 - Primera impresión
Análisis  USB-PIC'School 2010 - Segunda impresión
Análisis  USB-PIC'School 2010 - Tercera impresión

Autor del análisis: Ángel Acaymo M.G.

42 comentarios:

Jocker dijo...

hola amigo estoy pensando en adquirir el juguete eejjejej.
en la version deluxe del producto te viene el libro rojo de regalo? he visto que vale 25 €.
un saludo y sigue dandole caña al tema.

Meta dijo...

Hola:

El libro es a parte, en mi caso costó 24.04€. Aunque ponga 25€.

Si optas por el laboratorio y haces un análisis, estoy encantado de leerlo. Si lo deseeas, lo publico en este Blog.

Ánimos y adelante.

Jocker dijo...

gracias por responder rapido :D
tendre en cuenta el detalle de añadir un analisis del producto, puede estar interesante.
un saludo

Meta dijo...

De nada. Ya nos contarás al menos si lo adquieres pronto o no.

Suerte...

Jocker dijo...

creo que no estan puestas las dimenciones de la placa.
que mide la placa?
un saludo

Meta dijo...

Buenas:

La placa mide 17.1 cm x 25.6 cm.

Un saludo.

Jocker dijo...

hola de nuevo oye conoces tiendas de electronica donde comprar protoboard online? tire la mia. una larga historia ajajaj
por cierto juan de haro del facebook voy yo. te agrete hace unos dias
un saludo

Meta dijo...

Hola:

Iba a comprar en su día este: http://www.mikroe.com/eng/products/view/757/easypic-v7-development-system/

es otra de las mejores, claro que debes usar los pines por obligación tal como te dicen, son de código cerrado, no te viene caja, solo la placa. USB-PIC'School 2010 te permite configurar todo y sin usas puertos predefinidos. Placas hay muchos, incluido pequeños para empezar si obtienes el PicKit 3 con PCB.

Es cuestión de ver que hay en el mercado o hacerla tu mismo. EasyPIC v7 y USB-PIC'School 2010 son de gama alta.

Usted eliges.

Jocker dijo...

si conozco la web, prefiero mil veces el que tienes tu. ejejejje
yo me referia a las placas protoboards de conexion rapida para practicas sin soldaduras. no encuantro donde comprar alguna. gracias

Meta dijo...

Buenas:

Las protoboards las consigo en locales de electrónica. Hay varios modelos y tamaños. La más que suelo usar es la wish board 104.

http://www.youtube.com/watch?v=eZyYVbdOK_U

Un cordial saludo.

Jocker dijo...

buenas.
he pedido el laboratorio al final, ya te contare ajajajaja
un saludo

Jocker dijo...

USB-PIC'School 2010

Meta dijo...

¡¡¡Felicidades!!!

Ya verás que fácil y cómo que es. Eso si, la primera vez me quedé pescando, luego leí el documento y se entiende todo.

Espero que hagas un buen análisis y lo haces saber por aquí, otros ya lo han hecho y cada enlace que vea, lo pondré al final, al menos en el 4º análisis que me falta hacer. Por ahora estoy jugando al USB-PIC'School 2010 y leyendo el libro.

Cada análisis que vea, lo haré anunciar en mi blog. Sólo he encontrado este por ahora.

http://www.limoncellodigital.com/2010/02/laboratorio-usb-picschool-para-pics.html

Esperando con ansias de que te llegue el laboratorio.

A jugar...

Jocker dijo...

gracias. soy novato poco a poco.
por cierto tengo windows 7 64 bits y linux ubuntu 11.10 en particiones.
abra problemas con drivers? tu que SO usas.
no tengo web propia, quiza ponga el analisis del producto en un apartado de mi facebook.
un saludo.

Meta dijo...

Buenas campeón:

Uso el Windows XP en estos momentos porque el que usaba Windows 7 de 64 bits se me fastidió la fuente conmutada por apagones en la luz, para estas cosas mejor comprar un SAI o UPS. Las dos funcionan.

El MPLAB X funciona para Windows 7, Linux y Mac OS.

El MPLAB 8 funciona solo para Windows, este es elque viene en el libro. Tanto uno como el otro funciona de maravilla. El MPLAB X aún faltan funciones que se están añadiendo poco a poco.

No tendrás problemas de Driver, es lo bueno que puedo decirte, si fuera así, lo publicaría en el análisis.

Puedes hacer tu buen análisis en el Word o facebook. Lo envías cuando creas que está completo, lo reviso y si lo deseas, lo publico aquí con fotos y vídeos incluidos.

Que te diviertas.

Jocker dijo...

saludos de nuevo ya me vino la placa. pero he estado ocupado con temas de programacion del android ejejejje.
la placa esta genial. aunque tube problemas con el diodo rectificador que hay en la parte de la pequeña fuente estabilizadora.
pero ya ta arreglao. he probao solo dos programas los dos primeros ejejjeje.
tengo las fotos para hacer el analisis. un saludo

Meta dijo...

Buenas:

Por fin te ha llegado. A lo mejor en el futuro hará relación los PIC con Android, ya que está muy de moda y cada vez más. Me refiero conectar Android con los móviles y PIC.

Si te refieres al diodo principal de la fuente de almentación, en mi caso es el 1N4148 y se fundió, me costó encontrar el fallo, y eso que me dijo MSE que es la primera vez que falla estas cosas, se lo haré saber. Lo bueno es poner que aguante 1A como mínimo, no 0.5A.

En el 4º análisis pondré cosas que aún no he puesto como, el diodo me falló y MSE me deja cambiarlo sin perder la garantía, y eso que me lo iban a enviar por correos y les dije que no ya que tengo unos cuantos, el display de 7 segmentos en vez de venir azul me vino en verde, y más detalles, pros y contras.

Esperando tu el análisis, ten paciencia y no tengas prisa en presentarlo pronto, revisa todo y harás un análisis de calidad.

Muchos ánimos y a jugar con la placa.

Jocker dijo...

oye una pregunta como se te fundio el diodo a ti? a mi se me fundio el primer dia ajajajaj. no veas el cabreo.
estaba colocando algunos componentes en la protoboard blaca que tiene.
un saludo.

Meta dijo...

Conectando muchas cosas al mismo tiempo, se recalentaba mucho y terminó de quemarse, encima me dicen MSE que es la primera vez que ve este caso. Mejor ponerle un 1N4007 pero no lo hagas, porque pierdes la garantía. Hazle saber que MSE por correo que se te quemó ese diodo y si lo cambias nuevo no pierdes la garantía, al menos le haces saber que también falla. A lo mejor te dice lo mismo que a mi.

Jocker dijo...

yo los llame enseguida. y les comente lo que me paso, que se fundio rapidamente sin haber disfrutado de nada, y que estaba muy desilusionado con el tema. pero recorde que tengo un amigo ingeniero de hardware y lo arreglo todo gratis. mi garantia esta perdia, pero con ese amigo me da igual. eeejeje sabe mas que ellos :p.
oye amigo tienes facebook?

Meta dijo...

Vaya, no sabía que perdías la garantía. A mi todavía lo conserva por avisarle por escrito el fallo.

Si falla algún componente, solo es sustituirlo, me pegué un día entero en buscar el fallo tonto como ese.

El facebook que uso es el que está en el blog de electrónica.

Anónimo dijo...

Hola maestro mis mas sinceros respetos tengo el usb-pic school y tengo el libro Pic teoria y practica voy por la pagina 3-29, el primer ejemplo donde puedo depurar y programar el pic, el primer ejemplo lo hice bien el cual es mostrar el estado de las entradas en las salida, muy facil, cuando comence ha hacer el ejemplo de la funcion Not. y al depurar y darle el boton program the target device me sale este error: PK2Error0027: Failed verify (Address = 0x1800 - Expected Value 0x3400 - Value Read 0x3FFF)
y la verdad no se que hacer he pullado de mil maneras y el primer ejemplo no corre ni se graba por el mismo error. Te agradezco la ayuda de antemano

Anónimo dijo...

El libro pIc teoria y practica es excelente lo compre por amazon pero no he podido vanzar por este error:
PK2Error0027: Failed verify (Address = 0x1800 - Expected Value 0x3400 - Value Read 0x3FFF)
estoy usando el mismo mplab que usa el libro la version 8.50
tengo el usb pic school normal con la caja negra de plastico, utilizo una pequeña fuente que yo mismo arme con un regulador 7812. pero no se pork este error y no es la fuente mi tira 12 voltios bien. la verdad no se k hacer seguire investigando, cualquier ayuda la apreciaria bastante pues soy profesor y tengo k dar esta materia a mis estudiantes y estoy trancado con este problema

Anónimo dijo...

que tipo de fuente usas para el usb pic school, uso una simple fuentecita con un 7812.

Meta dijo...

Hola:

¿El microcontrolador esta alimentado correctamente o tiene el nivel de tensión adecuado? Mayor de 4V.

A veces los pines no los tiene bien conectado, verífícalo.

Asegúrate que usas en el programa el PIC16F886 que te vino en vez de otro PIC parecido y no te hayas dado cuenta.

Un saludo.

Meta dijo...

Hola de nuevo.

La fuente que uso es la que viene en la versión De Luxe (completa) que es esta en el enalce de abajo que puedes adquirir a parte.

Si haz hecho una tu mismo, si está bien hecha, no debes tener problemas.

http://www.msebilbao.com/tienda/product_info.php?products_id=580

Un saludo.

Meta dijo...

Para qeu no te vuelvas loco si el problema insiste. Cierra el programa del PicKit2, vuelve abrirlo, escoge el PIC16F886 como siempre y graba el ejemplo. Eso si, con el USB-PIC encendido.

Anónimo dijo...

Ya encontre el problema es la fuente viejita que uso, los cables no son apropiados y se aterriza a veces hace corto pero estoy avanzando ya, enconre el probleme voy a reparar la fuente mucho mas para que sea mas segura y con mejores cables y terminales.

Meta dijo...

Felicidades, espero que sigas con los ejemplos.

Anónimo dijo...

que version del mplab usas, estoy usando la que usa el libro mplab v.8.50, cual usas mi problema el programar y grabar ha vuelto no se si es la fuente ,no me deje programar seguire investigando.

Anónimo dijo...

amigo cuando me dices que los pines no los tiene bien conectado a cuales pines te refieres, compre un plug y se lo adapte a la fuente y prendio el entrenador universal muy bien.
a cuales pines te refieres.
cuando le doy al boton cnectividad me dice que esta alimentado a 4.98 voltios, pero cuando voy a debugger, settings, me sale la ventana de pickit 2 y me dice que vdd esta por default 5 voltios, a mi me dice 4.98 si lo bajo a 4.98 vere si asi me quita el error

Anónimo dijo...

que version del pickit2 tienes mi maplab v8.50 tiene una version pickit2 0.0.3.63 cuando entro a pickit 2 setting me dice una advertencia que hay una nueva version esto puede ser un problema.qu usted cree my friend ?

Meta dijo...

Hola:

El tema de los 4.98V no lo toques, uso el clone de PicKit 2 que es el que viene en el USB-PIC'School 2010.

Los pines me refieros los cables al conectar, no me expresé bien, de esos qu epones en la protoboard.

Un saludo.

Anónimo dijo...

ok, mi problema mi hermano lo resolvi a la mala aunk a veces da el error insisto y repito la prueba y insisto hasta que sale bien, ahora tengo otro problema cuando corro el problema que describes arriba me sale muy bien, pero cuando lo corro en lenguaje C me sale un error cuando compilo, incluso el programa es un ejemplo que viene hecho por el fabricante en lenguaje C,cuando lo corro en mplab me sale que no reconoce este directorio #include <16f886.h> y me da este error en lenguaje c, cuando lo compilo(presiono f10) ...Error [141] D:\Documents and Settings\edgar\Mis documentos\mplab edga\programas en C\inputout.c; 21.19 can't open include file "16f886.h": No such file or directory
La verdad que no entiendo que pasa estoy siguiendo las instrucciones del libro pero me da este error. De antemano muchisimas gracias por ayudarnos pues soy profesor de 18 estudiantes los cuales estamos muy agradecidos por tu ayuda.

Anónimo dijo...

me puse a investigar por internet y la version mplab v8.50 trae hIGH TECH ANSI C Compiler, pero me parece que es una version de prueba que no te permite progragramar los pics, me parece que solo se puede programas en ensamblador y si se quiere usar C hay que pagar el que trae mplab v8.50 solo es un demo es cierto mi investigacion mi amigo que crees ?

Meta dijo...

Hola:

El error por lo que cuentas es que no encuentra dicho archivo, en las opciones que no recuerdo donde está, debes buscarlo y señalizarlo.

El Hitech de C es de pago con un tiempo de prueba. Normalmente se usa el C18, Hitech es de otro fabricante pero funciona y es válido. El ASM es gratuito.

Usar el MPLAB v8.50 o el MPLAB 8.87 que es el que uso actualmente es lo mismo, solo que acepata más PIC para programar, a parte de corregir más cosas en el programa para que sea estable.

Un cordial saludo.

Meta dijo...

Buenas de nuevo:

Aquí enlaces de los productos en C.

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en534868&redirects=compilers

Cualquier versión del MPLAB v8.xx lo puedes descargar aquí.

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002

Un saludo.

Lorenzo M. Oliver dijo...

Hola.
Tan sólo quería avisar de que hay un curso online disponible para los usuarios del PIC'School. Comienza el 26 ENE 2015 y dura 9 semanas.
El enlace de la página informativa es este: http://plataforma-educativa.es/curso_microcontroladores_pic.htm

Meta dijo...

Gracias por la información.

Lorenzo M. Oliver dijo...

A ti, por este estupendo e instructivo blog. No tiene desperdicio alguno...

AMANECER ESPIRITA dijo...

Hola.
A fecha de hoy de enero de 2018 debo decir que el picschool sigue vigente es una maravilla para aprender a programar tanto en asm como en c, el pic que trae es el 16f886 pero puedes comprar otros e insertarlos, actualmente estoy probando los dspic, funcionan perfecto, eso es lo que me gusta que todo lo que pruebas funciona a la primera y sin fallos, ni dolores de cabeza.

Meta dijo...

Hola Manuel Saavedra:

Exacto, lo mismo digo y sigo usándolo, hasta el módulo me vale con Arduino.

Saludos.