Curso de programación de PIC en PICBasic Pro

yo estoy intentando usar el timer1 como entrada de oscilador con el cristal de 32.768...

pero se me queda pasmado el pic, lo tengo con un lcd y no aparece nada... solo se ve la primer linea con los cuadritos negros y la segunda linea nada (tengo un lcd de 16x2)

anexo simulacion que si funciona pero en la realidad no.... por si alguien tiene chance de analizarlo, seguramente es algo tonto que estoy pasando por alto... (probe con tres pics y dos lcd que supuestamente funcionan y lo mismo, revice 800mil veces las conexiones en el proto) :D
Saludos lubeck.
Upps! Lo que voy a relatar no se si solo me pase a mi, sucede que al programar el PIC16F628A
con el código que adjuntaste. (Usando el programador JDM y el programa WinPic800)
Todo durante la programación aparece muy normal, así que deduje que el PIC había sido bien grabado.
Mhhh!!! lo monte al proto y también, el LCD en blanco, ni cuadritos negros ni nada.
Como si el PIC estubiera sin grabar, entonces lo coloque al programador y lo leí.
Vaya sorpresa! el programador me mostró "Dispositivo Desconocido" y no aparece el código original,
sino otro código totalmente diferente al del programa ingresado, entonces lo trate de reprogramar
pensando el algún error momentáneo de programación, pues nop! igualmente me mostró
"Dispositivo Desconocido" y error de escritura en la posición 0X0000
"Escrito 0X1B se encontró 0X sabe que! :D (No recuerdo)
"Cabe aclarar que no se trata del clasico error de fuses de protección activados"
A mi no me aparece ese error aún con los fuses de protección activados.

Cambie de programa al IC Prog NT y lo mismo,
mas tardado para aparecer el error por que lo muestra después de verificar los datos.
Mhhh!!! :unsure: Coloque otro PIC16F628A y lo leí, con el WinPic800 con este si detectaba un 16F628A
Colocando el primero no lo detecta y no permite grabarlo, "Catalepsia en el PIC" :LOL:
Sip. Ya que logre recuperarlo con el IC Prog haciendo unos pequeños cambios a la configuración.
Esto es, Delay con valor 13, todo el Buffer de datos en 3FF y el de la EEPROM en 0FF
Oscilador en XT, Bits de configuración solo PWRT y MCLR en ON y a Programar todo.
Ok. Con eso recupero los PIC que les sucede eso.
Lo intente de nuevo con otro PIC y sucedió lo mismo, así que no se si solo a mi me suceda esto.
Pero solo me pasa con el programa del fútbol. ¿Que podrá ser? :confused:
No se si ya probaste a leer el PIC después de grabado.
Me avisas si lo puedes leer y regrabar otra vez, ya que yo no puedo leerlo como debe, y al regrabarlo
queda irreconocible por Winpic800 y ni con IC Prog se puede volver a grabar si no lo revivo.
Suerte y hasta luego.
 
Última edición:
Lo intente de nuevo con otro PIC y sucedió lo mismo, así que no se si solo a mi me suceda esto.
Pero solo me pasa con el programa del fútbol. ¿Que podrá ser?
No se si ya probaste a leer el PIC después de grabado.
Me avisas si lo puedes leer y regrabar otra vez, ya que yo no puedo leerlo como debe, y al regrabarlo
queda irreconocible por Winpic800 y ni con IC Prog se puede volver a grabar si no lo revivo.

:unsure: no tengo idea de que pueda ser, sera el primer virus para PICS :devilish: :LOL:

a mi me pasa algo similar...

tengo un programador master-prog (usb) que al programar el codigo main.hex del futbolito, se graba la primer vez pero despues al leerlo me marca lo mismo Dispositivo desconocido, y es imposible volverlo a leer con ese programador....

tambien tengo mi programador (uCIIBurn) que es paralelo y con winpic800 si lo reconoce, lee y graba... de echo lo verifico y no me marca ningun error, lo leo con el masterprog y ahi queda irreconocible por la eternidad....

pedi soporte a masterprog y me preguntaron que si el pic configuraba con mcrl y con pwrt, les contste que si pero ya no he tenido respuesta....:cry:
 
:unsure: no tengo idea de que pueda ser, sera el primer virus para PICS :devilish: :LOL:
Ok. Como mencionaste eso del primer virus para PICS, busque acerca de eso en Google
y apareció un tema similar, en donde una persona al grabar cierto código, le ocurrió lo mismo,
lo hizo hasta con 12 PICS y cuenta que sus 12 PICS quedaron inutilizables, ya que no los pudo volver a recuperar.
¿Recuerdas un tema que se inicio, en donde se pretendía usar RA5 como salida?
Pues dentro de ese tema Daniel Meza cita que es una burrada usar el oscilador interno y con RA5 como entrada.
Este es el enlace del comentario y una solución para recuperar el PIC
Sin embargo yo he usado RA5 como entrada usando el oscilador interno y no ha pasado nada.
Al parecer el "virus" entra en acción cuando se utiliza el registro T1CON y oscilador interno.
ya que acabo de probar el mismo código, pero usando configuración XT_OSC
y no pasa nada, el PIC se puede leer y regrabar como siempre.
En tu código usas el PIN RA7 como entrada por lo cual no se puede usar XT_OSC (Solo probé)
Como comente anteriormente, si he podido recuperar los PIC otra vez, pero con el método que cite.
Me ha pasado algo similar también con el PIC12F675 pero por mala calibración del OSCCAL
He igualmente lo he podido recuperar. La persona que daño los 12 PIC16F628A pidió a Microchip
una respuesta y pidiendo que sacaran al mercado una nueva versión del PIC16F628A
que seria la versión PIC16F628B :LOL: con ese BUG corregido.
Este es el enlace del post del foro de Microchip en el 2007 Mucho tiempo y al parecer no le dieron respuesta.
Esta persona quedo con sus PICS inservibles debido a este BUG en el 16F628A
Me parece lubeck que tendras que reconfigurar el programa para usar cristal. :D Pero te faltara un pin.
Suerte y hasta luego.
 
Última edición:
Me parece lubeck que tendras que reconfigurar el programa para usar cristal. Pero te faltara un pin.
Suerte y hasta luego.

Ok... el RB7... en el diseño solo esta simulando el descuento del tiempo que hara la interrupcion del timer1... se puede eliminar...
intentare lo mismo pero con el oscilador externo... a ver que pasa...

lo que se me hace raro es que este proyecto esta basado en este reloj alarma, lo unico diferente por asi decirlo es el uso del LCD...

ahora mismo estoy rearmando un programador JDM para usarlo con el winpic800 y ver que pasa... en fin un proyecto que pense que iba a ser cuestion de un dia me esta sacando canas verdes... :LOL: ya contare los avances...

Gracias dark.. y hasta luego..
 
hola que tal, primeramente gracias a lubeck por su respuesta me funciono a la perfeccion.

bueno pues estoy aqui nuevamente con una pregunta muy sencilla pero ya llevo un tiempo no logro que me funcione.

la cuestion es que necesito usar compuertas logicas pero no logro que me queden todas.

@ device xt_osc
define osc 4
trisb=0
trisd=1
inicio:
portb.0= portd.0 or portd.1
portb.1= portd.2 and portd.3
goto inicio

estas dos compuera si me quedan pero cuando escrivo:
portb.1= portd.2 NOT AND portd.3 (me marca error)
portb.1= NOT portd.2 AND portd.3 (me compila pero no hace la funcion de la compuerta)


alguien sabe como se utilizan estas compuertas?????
 
portb.1= portd.2 NOT AND portd.3 (me marca error)
portb.1= NOT portd.2 AND portd.3

debes poner que debe hacer al ser verdadera la condicion ejemplo:

if (portb.1= portd.2) AND not portd.3 then
aqui lo que va hacer si se cumple la condicion
endif

o el otro

if (portb.1 and not portd.2) AND portd.3 then
aqui lo que va hacer si se cumple la condicion
endif
 
Hola muchachos les comento mi experiencia similar con los pic12f675 y 16f877a, he tenido problemas de lectura despues de grabarlos y ha sido como comenta Darkbytes, por mala configuración del osccal, he contado con la suerte de poderlos recuperar con el mismo winpic800 cambiando configuraciones de wdt, mcl, etc... y regrabandolo todo en FF, en el caso del 12f675 copiando la ultima dirección el valor de fabrica del osscal, y de esa manera logro que vuelva a ser autodetectado por el winpic800.

Otra cosa aparte que me paso es que compile un código para el pic12f675 con interrupción interna y no me permitía programarlo con el mcl desactivado, cada vez que lo mandaba a programar llegaba hasta 99 y luego me decía error de verificación en la dirección 2007h, luego no me leía ni me permitió programarlo mas, para lo cual aplique algo similar lo borre varias veces 3 mas o menos y luego lo programe con otro código ya probado que si se programaba sin problemas y vuala lo programaba todo ok pero no se porque me da ese problema ya que tengo muchos códigos probados sin el mcl activado que si programa y funcionan bien...Bueno espero les sirva de algo mis experiencia saludosss
 
hola a los colegas del foro!!! quiero ver si alguien me puede ayudar con este codigo, UNA RADIO BALIZA y encontré esto en la red pero no se en que lenguaje estará ??? este es el codigo:
 

Adjuntos

  • code para foro.txt
    4.1 KB · Visitas: 60
Última edición:
UGT
Eso es Lenguaje C
(mete el codigo entre acotacion de codigo para que no sea vea tan largo si puedes :D)

Con respecto a mi problema del 628A

Ya arme el programador JDM y ese tampoco reconoce al pic....:cry:

el unico que borra, lee, reconoce y escribe sin problemas es el programador paralelo que hice(uCIIBurn)....:rolleyes:

lo que no me queda claro es porque????
 
Última edición:
no se en que compilarlo!!!

Parece que es para el compilador en mikro C (no estoy muy seguro) :D

pero se ve facil migrarlo a PBP... creo... :LOL:


------------------------------------------------------------
de nuevo yo con los avances de mi problema....


bueno el problema de porque solo se graba una vez y despues no se reconoce el micro en algunos programadores, se debe al usar el oscilador interno del pic 16f628A...

me explico...

cuando se mete al programador este alimenta al micro entonces como el oscilador es interno el programa que fue grabado por primera vez se empieza a ejecutar y esto hace que se bloquee para que lo reconozca el programador...

el porque con mi programador paralelo (uCIIBurn) no tiene ese problema? es porque este solo alimenta los 5v de vdd, milisegundos antes de activar el vpp que es el que se encarga de grabar el micro...

asi que ya saben.... :D si tienen problemas al grabar el pic16f628A, lo mas probable es que esten utilizando el oscilador interno, y cuesta uno y la mitad del otro borrarlo si no se puede manipular el vdd del micro...

ya llevo el 50% resuelto de mi proyecto que iba a ser de un ratito... :LOL:
 
Última edición:
lubeck probaste reprogramarlo todo en FF y configurando todo como si fuera uno nuevo osea con el mcl, wdt, boren, lvp...etc...Intenta programarlo asi y luego chequea de nuevo...saludosss
 
lubeck probaste reprogramarlo todo en FF y configurando todo como si fuera uno nuevo osea con el mcl, wdt, boren, lvp...etc...Intenta programarlo asi y luego chequea de nuevo...saludosss

hola rey...


el problema es que una vez grabado por primera vez, el programador ya sea el masterprog o el JDM ya no lo reconoce , o por lo menos yo no logre que lo reconociera ni con el icprog ni con el winpic ni con el propio del masterprog...

lo que hice a la mexicana :LOL: fue meter el pic e instantes despues (lo mas rapido) presionar el boton de borrar, antes de que se empezara a ejecutar el programa... y listo... se borra cuantas veces quiera...:D

Ojo que solo cuando esta el intrc_osc cuando esta el xt_osc no hay ningun problema con ninguno de los programadores...
 
Parece que es para el compilador en mikro C (no estoy muy seguro)

pero se ve facil migrarlo a PBP... creo...


gracias lubek si eso estaba biendo pasarlo a pbp pero me queda un tanto grande la tarea ya que ase mucho que no miro los programas :unsure:
 
Bueno pues les tengo buenas y malas noticias con mi proyecto, que en realidad es un temporizador y un cuenta goles para un futbolito de mesa

el 50% del problema restante era que el pic que estaba usando estaba dañado algun pin que iba al LCD, pero ese pic era nuevo asi que no supuse que estaba dañado, (se debio haber dañado con estatica o algo asi), puse otro nuevo y listo ya funciona como se supone que debia hacerlo :)

ya tenia los sensores de los goles, el monedero electronico para las monedas, y un bedito actuador para detener las pelotas cuando el tiempo se acabara.... todo funcionaba de maravilla peroooooooo... que se atora el bendito actuador y se sobrecalento el circuito y se quemo el ultimo pic 628A que me quedaba... :cry:

ahora hare lo mismo pero con uno de los dos 877A que tengo... y empezar de nuevo...:rolleyes:
 
Que tal amigos lo que pasa es que quiero hacer un display que marca la hora...
y e conseguido por la red este circuito pero no me sale el codigo para programarlo en PIC BASIC..
espero me puedan ayudar a programarlo en PIC BASIC, les dejo el circuito diseñado en Proteus
pero si tienen algun otro modelo o diseño ayudenme....please....
 

Adjuntos

  • Picture1.jpg
    Picture1.jpg
    74.6 KB · Visitas: 84
  • New Folder.zip
    28.6 KB · Visitas: 81
Atrás
Arriba