# Tutorial para programar pic en minutos usando PARSIC



## DANDY (Nov 11, 2011)

Hola a todos creo este tema para compartirles un tutorial creado por mí sobre la programación de microcontroladores pic en lenguaje de bloques, en esta ocasión el primer capitulo trata sobre la instalación del mismo, es un lenguaje facil de aprender ya que contiene internamente compuertas, temporizadores, contadores,ADC salida LCD, salida PWM etc. 

http://www.eplimin.com/tutorial-parsic/


----------



## lubeck (Nov 11, 2011)

Muy bueno el tutorial Dandy....

a mi ya me llama mucho la atencion del porque ya muchos los ponen en un blog??

es mas facil?? no es mas dificil preparar todo una pagina para eso??...


----------



## DANDY (Nov 11, 2011)

Si, es mas facil usar un blog, las plantillas vienen ya diseñadas solo algunas modificaciones y listo, el proximo capitulo tratará sobre las herramientas que contiene el PARSIC, aclaro que es para principiantes siempre y cuando ya sepas algo de electronica digital basica.


----------



## lubeck (Nov 11, 2011)

oki con lo de los blogs... entiendo...
gracias....

estare pendiente del proximo capitulo... no habia visto ese lenguaje...


----------



## DANDY (Nov 11, 2011)

Ya está listo la segunda parte donde explico las herramientas básicas del Parsic, en este caso las compuertas logicas y el flip flop RS

http://eplimin.blogspot.com/2011/11/tutorial-programacion-en-parsic.html


----------



## BKAR (Nov 18, 2011)

como no me entere de este Tema..
bueno dejo mi granito de arena para apoyar a quienes también empiecen con parsic
...algunos ejemplos que separe...

yo también quiero promover el uso de parsic...
saludos DANDY...


----------



## DANDY (Nov 18, 2011)

Hola BKAR, dime ya lograste programar los pic en la realidad o solamente los tienes en simulación?, eh notado que *no* todos los circuitos hechos en parsic los simula bien el proteus, sin embargo cuando los montas en la realidad funcionan perfectamente.


----------



## BKAR (Nov 19, 2011)

hasta ahora el parsis no me ha mentido...
lo que he enviado...son como dije TIPS algunos ejmplos que separe, nisiquiera están puestos los RA.X o RB.X si te daras cuenta...

por supuesto si he programado...el 16f84 16f628 16f877, esos son los unicos que tengo a la mano


----------



## alejandrozama (Nov 19, 2011)

hola que ta, saludos a todos.

bueno yo comienzo en la programacion de pic, tengo algunas dudas si entiendo bien con este programa armas un esquematico con compuertas logicas y el programa te crea el archivo HEX para la pic????

hay algun otro programa que haga esto????
cuando agregaras mas al tutorial de tu blog???? ya que se ve muy bien


----------



## BKAR (Nov 19, 2011)

con compuertas logicas, contadores, astables, monostables, modulos LCD uart ADC PWM ....

algo parecido al lenguje ladder, y no conosco otro programa que trabaje asi para pics
ahy para FPGAs


----------



## DANDY (Nov 20, 2011)

Ya está listo la tercera parte del tutorial, en el explico los distintos tipos de temporizadores que tiene el parsic
http://eplimin.blogspot.com/2011/11/tutorial-programacion-en-parsic.html

PD: tengo un colega que está programando otros pic que el parsic no tiene, prometio compartir el metodo.


----------



## BKAR (Nov 20, 2011)

otros pics que el parsic no soporta? y aun asi los programa en parsic?


----------



## DANDY (Nov 20, 2011)

Sí, a eso me referia el lo hizo con un pic16f887, yo quiero programarlo para los de 8 pin ejemplo pic12f675 o el pic12f509. 
por ahora los pic que yo programo son el pic16f84a,pic16f628a,pic16f876a,pic16f877a ya que estos ya vienen con el parsic.


----------



## BKAR (Nov 20, 2011)

si hay el 16fF877A y el 16F877


----------



## imabest (Nov 20, 2011)

para que no parezca forochat, pero si tal como lo dijo dandy he conseguido con exito programar en Parsic pic, que el software no soporta (el pic16f887), y voy a hacer un tutorial sobre como hacerlo, no es nada del otro mundo pero si hay que tener muy poco de conocimiento sobre el ensamblador, pero si  del pic que quieran utilizar, espero terminarlo pronto.

ahora les comento que el ejemplo que programe era bastante sencillo, estoy probando otros modulos mas complejos como los timer, pwm, LCD. y esto podria complicar un poco masel procedimiento de compatibilidad.


----------



## DANDY (Nov 20, 2011)

Genial *imabest*, justo me referia a tu persona,* BKAR* por eso te digo los pic que yo programo con el parsic son pic16f84a,pic16f628a,pic16f876a,pic16f877a ya que el parsic los tiene disponibles, pero *imabest* logró programar el *pic16f887* aún sin estar en la lista del parsic.


----------



## juanted (Nov 20, 2011)

Es una idea estupenda intentar dar a conocer este programa, esperemos que lo actualicen pronto que ya le toca.


----------



## BKAR (Nov 20, 2011)

esta atascado desde el 2006, el parsic 

ahhh lei mal entonces con eso del 16f887
me late que modificas algo manualmente en el código?
manejar LCDs en el Parsic es cosa de niños
lo que no me cuadra es como hacer un simple registro...!!


----------



## alejandrozama (Nov 21, 2011)

hola que tal, pues no pude esperar mas por el resto del tutorial y comen a realizar pruebas con el programa, realize el reversible de un motor.

probe el HEX en el proteus y funcionaba bien, asi que grabe la pic con el programa y la probe, en la pic el programa no realizo lo que deveria (no enclava). 

no se que este haciendo mal, subo los archivos aver si le pueden echar un ojo decirme en que estoy mal.



la pic es la 16f84a

1.- esta bien el programa???
2.- porque simulado funcina y en fisico no????



gracias por tomarse el tiempo y estare pendiente de sus respuestas


----------



## DANDY (Nov 22, 2011)

eso suena a hardware pero por si las dudas prueba con este que acabo de hacer y comenta los resultados


----------



## DANDY (Nov 22, 2011)

Hola a todos, ya esta listo la cuarta parte del tutorial este trata acerca de como hacer correctamente las conexiones en Parsic http://eplimin.blogspot.com/2011/11/tutorial-programacion-en-parsic.html eh notado que muchos me contactan por el gmail o por el facebook, les comento que ese correo de gmail es exclusivo para trabajo asi que porfavor los comentarios que necesiten haganlos en el foro con gusto seran respondidos.


----------



## BKAR (Nov 22, 2011)

alejandrozama dijo:


> hola que tal, pues no pude esperar mas por el resto del tutorial y comen a realizar pruebas con el programa...



bien, esa es la actitud!!
cuéntanos como te fue

y DANDY de lujo el 4to Tutorial
...nose si sea exclusivo o si ya algunos saben 
con con la tecla shift, para asi poder copiar y/o mover
y no se preocupen con las conecciones el parsic le asigna nombres diferentes a cada copia


----------



## DANDY (Nov 22, 2011)

Exactamente, con la tecla shift se puede seleccionar y mover bloques individuales o grupos, parsic genera automaticamente lo de los bits y bytes pero suele suceder que uno por confusion une un bit con un byte ejemplo en una etiqueta viene por defecto como byte y si uno le aplica a la salida de una compuerta entonces se estaría uniendo un bit con un byte, mejor dicho para programas chicos quiza no tengan problemas pero para avanzados donde se usa etiquetas es importante.


----------



## imabest (Nov 27, 2011)

Bien ya tengo el tutorial sobre como usar pic que no estan disponibles, cualquier duda me dejan mensaje.


----------



## Sebastian1989 (Nov 27, 2011)

¿Cual es la ultima versión disponible de parsic?


----------



## BKAR (Nov 27, 2011)

la 3.56, no encuentro mas recientes ,espero que sigan mejorando el programa


----------



## DANDY (Nov 27, 2011)

Muy bueno tu aporte* imabest*,me tomare un tiempo para subirlo a mi blog claro dandote los creditos por tu grandioso aporte .
PD:*imabest* si deseas ver los archivos creados por parsic, antes de usar build debes poner (save as) y escoge el lugar donde deseas, ejemplo yo uso la particion D, así al presionar build los archivos .pic .hex .asm apareceran en el mismo directorio donde guardaste tu archivo.


----------



## DANDY (Nov 29, 2011)

Hola a todos es probable que el parsic esté en una version mas avanzada que el 3.56 , pero los dueños lo venden exclusivamente, para descargar una demo pueden visitar la siguiente pagina oficial de parsic http://www.parsicitalia.com/compilatore_parsic.html


----------



## Daniel.more (Nov 29, 2011)

hola,solo queria que sepan que pienso que estan haciendo un aporte fenomenal,y que aunque no veo que la gente se buelque agradecimientos,cosa que veo no os hace falta lo mas minimo, seguro que hay muchos como yo,que admiran buestro trabajo,y lo siguen en silencio,mas que nada porque no tenemos conocimientos en el parsic para poder ayudar....(aunque si en otros temas de electronica)saludos y suerte.


----------



## DANDY (Nov 29, 2011)

gracias por los halagos Daniel, hasta ahora somos 3 los que estamos intercambiando información *imabest bkar* y *yo*, si alguien se quisiera unir y desarrollar mas cosas sobre este software bienvenido sea.


----------



## imabest (Nov 29, 2011)

Daniel.more dijo:


> hola,solo queria que sepan que pienso que estan haciendo un aporte fenomenal,y que aunque no veo que la gente se buelque agradecimientos,cosa que veo no os hace falta lo mas minimo, seguro que hay muchos como yo,que admiran buestro trabajo,y lo siguen en silencio,mas que nada porque no tenemos conocimientos en el parsic para poder ayudar....(aunque si en otros temas de electronica)saludos y suerte.



Hola daniel, sabes en que forma nos ayudan mucho(bastante diría yo), avisandonos de defectos o errores. así nosotros que estamos un poco mas avanzados podemos proponer nuevas soluciones para que todos aprendan.

además somos personas como cualquiera, tambien empezamos desde abajo.


----------



## BKAR (Dic 7, 2011)

bueno para no malograrme la vida buscando valores RC para el 555 y mandarlo a un contador para temporizar ya sea minutos o horas como sugiere el profesor
hice mi versión de temporizacion en parsic, recién hoy en la noche empece y al parecer ya esta todo...pero no se alteren lo hize apresurado...
por lo visto funciona en el proteus...le agregare mas cosas cuando tenga tiempo
haber si alguien se me adelanta


----------



## imabest (Dic 13, 2011)

voy a hacer una prueba ahora con los pic mas avanzados como el 18f4550, voy a intentar primero usar el método que utilice primero, si funciona les iré poniendo como pueden hacerlo, no habia podido hacer pruebas porque estuve muy ocupado pero ya voy a continuar


----------



## alejandrozama (Ene 5, 2012)

Este es un EXCELENTE programa para los electromecanicos ya que solo se tiene que pasar el diagrama escalera a un diagrama con compuertas logicas. acabo de realizar el control para un elevador de 3 pisos con este programa y fue facilisimo. estoy en espera de las demas partes del tutorial a lo mejor DANDY esta ocupado y por eso no a podido subir mas. voy atratar de relizar algo con temporizadores ya que ahora es lo que me interesa.

GRACIAS DANDY por darnos a conocer este programa y por el tutorial


----------



## DANDY (Ene 7, 2012)

En estos dias me desocupo y subo dos partes mas, aveces da la impresión que a nadie le interesa el programa por que nadie comenta


----------



## fabry351 (Ene 8, 2012)

hola amigos de foro de electronica. esta es la primera ves que comento en este sitio. dandy elegí tu tutorial para empezar a aprender de programacion. sinceramente me interesa mucho esta rama de la electrónica. Luego comentare mis avances o dudas sobre el tema. desde ya muchas gracias por este gran aporte.

gracias. y con que pic me recomendarian comenzar a trabajar??


----------



## BKAR (Ene 15, 2012)

hola fabry351...
has como todos creo..
16f84..pero mejor defrente comprate el 16f628 (segun el parsic dice que no tiene entradas ADC!!??)
y si quieres uno mejor el 16f876 o el 16f877


----------



## tigre107 (Ene 27, 2012)

Hola colegas, hace tiempo que estoy con la electrónica, pero nunca he entrado en el tema de los PIC.
Ahora necesito conocimientos sobre PIC, y he de entrar a estudiar los componentes y su forma de programarlos, espero que no sea dificil.
A ver si alguien me puede decir de donde bajar el PARSIC.
Un saludo desde España.


----------



## alejandrozama (Ene 27, 2012)

parsic no es programa para comenzar con la programacion de pic, parsic es un programa para realizar esquematicos de compuertas logicas y timers y parsic te crea el archivo hex para la pic, date una vuelta en el foro y veras muchos tutoriales para comenzar con los pic´s


----------



## tigre107 (Ene 27, 2012)

Muchas Gracias alejandrozama.
A ver, necesito programar una PIC16F870, como puedes ver estoy un poco verde en la programación, qué programador y software me recomendais.
Un saludo y repito, muchas gracias.


----------



## tigre107 (Ene 27, 2012)

Muchas gracias alejandrozama, voy a seguir tus recomendaciones.
Un cordial saludo desde España-Finestrat.


----------



## BKAR (Ene 27, 2012)

alejandrozama dijo:


> ... parsic te *crea el archivo hex para la pic*, date una vuelta en el foro y veras muchos tutoriales para comenzar con los pic´s



PARSIC no genera el hex, lo que genera es un .asm
si entiendes el lenguaje puedes abrir y explorar el archivo y ver como funciona
... el parsic llama al compilador que tu hayas cargado, en mi caso MPASM del MPLAB..
pero desde el entorno basta con presionar F10 y ya tienes tu .hex

parsic.. no enseña programación por decirlo asi, ni "lenguajes" que estamos acostumbrados a ver, es una herramienta muy util, y facil
presenta un entorno muy amigable, programación en bloques FUP...como jugando armas un diseño y el parsic lo complida todo dentro de un archivo calientito para quemar al pic!!!

saludos tigre107


----------



## tigre107 (Ene 28, 2012)

Muchísimas gracias a tod@s, voy a intentar aprender, aunque de entrada he tenido problemas en la instalación de las aplicaciones que me dijisteis. Creo que lo he conseguido, en breve os contaré como me va.
Un saludo.


----------



## 6031575 (Feb 3, 2012)

Hola Srs, llevo ya un tiempo trabajando con el parsic y hay dos cosas que no he podido hacer, multiplexar un teclado 4x4, hice un proyecto en la empresa en donde trabajo, que consiste en un panel que tiene una pantalla lcd de 4x40, el cual controla otras dos tarjetas que estan conectadas a esta, en red, con protocolo 485; todo esto bien pero en le manejo del teclado se me dificulto y tuve que utilizar otro micro exclusivamente para el este, que me entregara los bit listos y parsic hiciera el resto. la consulta es, alguien de uds lo ha podido hacer?.



Lo otro en que he venido trabanjando y no te podido hacer es manejar un puente tiristor el NTE5700 para controlar la velocidad de un motor de cc que se alimenta a 110vac, lo que que no he podido hacer es, sincronizar es el disparo de este, cuando se detecta el cruce por cero utilizando el PWM o por control de angulo.La idea es variar la velocidad utilizando las entradas a analogas, hasta el momento las puebas las he hecho con un bombillos, la salida del micro maneja un opto MOC3011 el cual no tiene detector de cruce por cero, y este dispara un scr C106, y este la modulo NTE 5700, con el TCA785 trabaja de maravilla, la idea es remplazar a este ultimo y poder hacer otros controlos al motor, me gustaria mucho recibir aportes.



Les cuento que yo no utilizo el proteus para simular los programas que he hecho en parsic, me diseñe un entrenador para trabajar con este, que tiene practicamente todo lo necesario para simular. el ADC,LCD,Entradas y salidas, comunicacion rs232, 485; para programar el micro en caliente, utilizando el pikit 2 aunque no lo utilizo ya que a los micros le monte el bootlader, hablamos del 873,876 y 877. Tiene varios adaptadores para conectarlo al protoboard cuando sea necesario.  El proteus no simula bien, cuando el programa es bastante complejo. Con el proteus se puede simular fisicamente conectandose a la exterior bien sea rs232 o por usb y se cuelga. y no hace nada.


----------



## DANDY (Feb 3, 2012)

Hola 6031575 lo primero que dices sobre el teclado 4x4 Bkar ya lo hizo e incluso por ahi dejo el zip donde esta como hacerlo y si quieres algo externo solo usa el 74C922 o por ultimo una entrada analogica con juego de resistencias y comparas internamente con el parsic,lo del control de fase directamente por pic no lo eh probado aun, pero si quieres controlar un TCA785 con el pic puedes usar la salida PWM del parsic y con un juego RC le inyectas al TCA.


----------



## 6031575 (Feb 3, 2012)

No la idea es eliminar el TCA785 Y que el pic haga todo



y asi, poder hacer una tarjeta reducida y eficiente, y me interesa como hiciste lo del teclado, gracias


----------



## BKAR (Feb 3, 2012)

como dice dandy el 74c922 es un driver para un teclado matricial 4x4...yo lo veo algo caro por aca
...
lo bonito de parsic es que virtualmente cualquier circuitos con TTL puedes mandarlo al PIC!!
en al uni me hice un _teclado matricial 4*4 con TTL _
luego el mismo funcionamiento diseñado pero en el parsic
adjunte "ejemplo aparte" mmm bueno mi forma de ingresar por ejemplo un numero de varios dígitos mediante teclado


----------



## 6031575 (Feb 5, 2012)

Hola BKAR, probe tu programa en el entrenador y funciona bien, te doy las gracias por tu aporte.


----------



## BKAR (Feb 5, 2012)

el ejemplo estaba en el mensaje #6 del tema...solo hice la simulacion en papa proteus


----------



## 6031575 (Feb 9, 2012)

Hola dandy, has podido comunicarte via I2C con el 877 con una memoria? cada vez que intento comunicarme el micro se queda parqueado


----------



## DANDY (Feb 9, 2012)

La verdad no lo hice aún, yo estoy interesado en hacer la comunicación con el DS1307 via I2C, creo que en este caso el que nos puede dar una mano es *imabest *, de todos modos adjunto la imagen de la herramienta que sirve para la comunicación I2C


----------



## 6031575 (Feb 28, 2012)

Bueno les cuento que no pude hacer el control de angulo de fase con parsic, encontre un proyecto en la red de Rual Barreto y lo adapte a mis necidades. Primero lo probe con un pic16f877a y bien, y lo adapte para el PIC16F628 y logre regular desde 5VDC  hasta 107VDC utilizando un puente tiristor, para controlar un motor que tiene campo y armadura, las pruebas las he hecho hasta ahora con un bombillo, estoy programando en parsic un 877 para controlar el 628. este debe trabajar con una referencia que le dare con un pote y regular dentro de ese limite.



El control se debe hacer con interrupciones, y parsic no las maneja, o por lo menos no estan disponibles a la mano.


----------



## BKAR (Feb 28, 2012)

no estoy muy metido en el ASM pero tengo fe en que se puede de la siguiente manera...
creando un pequeño codigo en ASM....la verdad nose


----------



## 6031575 (Mar 1, 2012)

Ya lo habia intentado, pero no me lo reconocio, y habla sobre colocarles retardos; no logre acoplalos, si alglien tuviera un ejemplo y lo subiera para guiarnos y probar, seria excelente.


----------



## 6031575 (Mar 15, 2012)

Srs les cuento que hoy se me ilumino el bombillito y ya logre hacer el control de fase con parsic y variandola con las entradas ADC. detectando el cruce por cero.


----------



## DANDY (Mar 15, 2012)

haber cuentanos comparte cual es el truco por que a mi aun no se me ocurre como....


----------



## 6031575 (Mar 17, 2012)

bueno el truco esta en detectar el cruce por cero de la señal AC de la red de 110vac, como bien sabemos un ciclo de dura 16ms, pero como lo rectificamos ya es de 8.3ms que sale de dividir 1/120f, entonces tenemos de 0 a 8.3ms para retrasar el disparo del tirystor y ahi regulamos el angulo de conducion, pero la dicha me duro poco, por que, cuando se incrementa el programa, como el manejo de varias entradas analogas el micro se cuelga y eso a pesar que esta trabajando a 20Mhz.  Estuve trabajando con la opcion include, y la logre integrar, pero me ejecuta lo que le incluyo, pero no me hace le resto del programa, ahun no se en donde me estoy equivocando.


----------



## Manrique (Sep 6, 2012)

Hey amigos porque no volvieron a comentar por aca, estoy empezando con el parsic y tengo una duda, como hago para borrar un componente, ya que el software no me deja y lo he intentado de varias formas. Pura Vida.


----------



## BKAR (Sep 6, 2012)

seleccionas el componente manteniendo la tecla shift y un click,
ahi lo puedes mover o eliminar con suprimir


----------



## 6031575 (Nov 24, 2012)

Hola srs alguien de uds a podido conseguir una nueva version del parsic, la 3.56 no trabaja como muy bien cuando el programa es bastante grande, por ejemplo en manejo de una or de 8 entradas.


----------



## BKAR (Nov 25, 2012)

lamentablemente no he sabido de nuevas versiones...
haber en la simulacion el parsic pone tiempos de refresco en la simulacion solo para ver animada la simulacion, esto se puede arreglar poniendolo al minimo, nose si a eso le llamas el parsic no trabaja bien.

en todo caso sube programa al foro.


----------



## 6031575 (Nov 28, 2012)

Han podido hacer la comunicacion de I2C con una memoria.
Lo que me refiero anteriormente es cuando copila, estoy utilizando una OR con 7 entradas que van a una secuencia que activa un zumbador y cuando compilo con la version 3.56, el zumbador se activaba de vez en cuando sin haber orden anterior, el problema lo descubri ahi, usando una OR  de 4 entradas, no presentaba problema; el programa lo habia hecho en la version 4.3 portable, tuve que hacer unas actualizaciones y lo hice en la version 3.56 y ahi empezaron los problemas, volvi y copile con la 4.3 y bien.


----------



## 6031575 (Dic 17, 2012)

alguien de uds sabe que novedades trae la version 3.6 del parsic.


----------



## ozfezr (Mar 29, 2013)

DANDY dijo:


> Hola a todos es probable que el parsic esté en una version mas avanzada que el 3.56 , pero los dueños lo venden exclusivamente, para descargar una demo pueden visitar la siguiente pagina oficial de parsic http://www.parsicitalia.com/compilatore_parsic.html



Saludos, me gusto mucho tu tema y es muy bueno para los que conocemos algo de electrónica y se me hace mas fácil programar micros de esta forma, pero no encuentro el programa de Parsic completo, hay alguna forma de que me lo pases o algún link de donde conseguirlo. Gracias


----------



## DANDY (Nov 30, 2013)

Hola a todos la nueva versión del software PARSIC 4.0 ya salió, el mismo trae muchas herramientas nuevas, para mas información el siguiente link http://www.parsicitalia.it/development-tools-compilers-visual-parsic-v4.html


----------



## andresenez (Dic 1, 2013)

lo veo bastante complicado no he podido ni escribir hola mundo ni nada, aunque me gusta la extructura; me llevo mejor con flowcode y niple y hasta con el mismo c ya que me conosco todos sus macros copmonentes jejeje


----------



## DANDY (Dic 1, 2013)

Hola andresenez se requiere al menos un día de estudio, pero una vez que lo aprendes puedes hacer circuitos realmente buenos.


----------



## BKAR (Dic 1, 2013)

andresenez--> revisa los ejemplos, algunos que están en esta discusión o en la carpeta de instalacion.


----------



## DANDY (Dic 28, 2013)

La única desventaja de la versión demo 4.0 es que no te deja guardar el archivo .pic , pero si tienes la versión 3.6 puedes guardarlos ahí y sin embargo abrirlos en la versión demo 4.0 para generar el .hex de los nuevos microcontroladores que agregó esta nueva versión.


----------



## 6031575 (Ene 15, 2014)

Hola DANDY vos tenes la dirección o el enlace de donde poder bajar la versión 3.6 te lo agradecería..


----------



## DANDY (Abr 1, 2015)

He cambiado el link del tutorial, pueden verlo aquí http://www.eplimin.com/tutorial-parsic/


----------



## Fogonazo (Abr 1, 2015)

DANDY dijo:


> He cambiado el link del tutorial, pueden verlo aquí http://www.eplimin.com/tutorial-parsic/



El Link en el primer comentario fue actualizado


----------

