TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: Longinux en 17 de Octubre de 2006, 14:03:01

Título: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 17 de Octubre de 2006, 14:03:01
Buenas, este es mi primer post aquí y les pido paciencia, ya que aun soy novato.

Utilizo Linux como S.O y ahora estoy embarcado en un proyecto con el manejo de microcontroladores (PIC16F84A). Es decir lo hago todo desde linux:

- Creacion de código ASM --> gedit, vim, ..etc
- Compilacion del ASM       --> gpasm
- Grabación del PIC             --> picprog

Pues bien, el problemas es que al grabar el pic con el picprog no consigo que me configure los fuses y esl oscilador como yo quiero.
Anexo les pongo un código muy simple como ejemplo y que funciona al grabarlo con IcProg en WindowsXP pero no consigo que funcione desde linux y ya me está desesperando.



;==========================================================================================================================

;

;   NOMBRE:   LED_1S

;

;   AUTOR:    LONGINOS RECUERO BUSTOS

;   EMAIL:   lrecuero1@alumno.uned.es

;   FECHA;   12/10/2006

;   

;   MICRO:   16F84A

;   FUSES:    TODOS OFF

;   OSC:   XT

;

;   LICENCIA: GPL

;

;   DEFINICION:   JUEGO DE LUCES QUE SE MUEVEN

;         IZQUIERDA A DERCHA

;

;==========================================================================================================================



   LIST   P=16F84A   



   #include <p16f84a.inc>     ; ESPECIFICACIÓN DEL MICRO

   __CONFIG _XT_OSC & _CP_OFF & _WDT_OFF & _PWRTE_OFF   ; CONFIGURACIÓN DEL OSCILADOR Y FUSES


;------ DEFINICION DE VARIABLES -------------------------------------------------------------------------------------------



reg1   EQU   0x0C   ;NECESARIAS PARA EL DELAY

reg2   EQU   0X0D

reg3   EQU   0x0E





;------ CUERPO DEL PROGRAMA -----------------------------------------------------------------------------------------------





RESET   ORG   0x00      ;DIRECCION DE INICIO APLICACION

   BSF   STATUS,RP0   ;PASO AL BANCO 1

   MOVLW   0x00      

   MOVWF   TRISB      ;CONFIGURO EL PUERTO B COMO SALIDA

   BCF   STATUS,RP0   ;VUELVO AL BANCO 0;





;------ JUEGO DE LUCES DESDE RBO A RB7 ------------------------------------------------------------------------------------

   

INICIO   MOVLW   B'00000001'   

   MOVWF   PORTB      ;ON EN RB0

   CALL   DELAY      ;RETARDO

   

   MOVLW   B'00000010'   

   MOVWF   PORTB      ;OFF RB0, ON RB1

   CALL    DELAY



   MOVLW   B'00000100'   

   MOVWF   PORTB      ;OFF RB1, ON RB2

   CALL    DELAY   

   



   MOVLW   B'00001000'   

   MOVWF   PORTB      ;OFF RB2, ON RB3

   CALL    DELAY



   MOVLW   B'00010000'   

   MOVWF   PORTB      ;OFF RB3, ON RB4

   CALL    DELAY



   MOVLW   B'00100000'   

   MOVWF   PORTB      ;OFF RB4, ON RB5

   CALL    DELAY



   MOVLW   B'01000000'   

   MOVWF   PORTB      ;OFF RB5, ON RB6

   CALL    DELAY



   MOVLW   B'10000000'   

   MOVWF   PORTB      ;OFF RB6, ON RB7

   CALL    DELAY



   GOTO    INICIO      ;REPETCION DE TODO EL PROCESO



;------ SUBRUTINAS DE LA APICACION  ---------------------------------------------------------------------------------------



;DELAY PRODUCE UN RETARDO CUANDO ES LLAMADO, CREADO POR R_LUIS



DELAY   movlw    10      ; Aquí se cargan los registros

   movwf    reg1      ; reg1, reg2 y reg3

            ; con los valores 10, 20 y 30

tres    movlw    20       ; respectivamente

   movwf    reg2



dos    movlw    30

   movwf    reg3



uno    decfsz    reg3,1       ; Aquí se comienza a decrementar

   goto    uno       ; Cuando reg3 llegue a 0

   decfsz    reg2,1       ; le quitare 1 a reg2

   goto    dos       ; cuando reg2 llegue a 0

   decfsz    reg1,1       ; le quitare 1 a reg1

   goto tres      ; cuando reg1 llegue a 0



   RETURN



   END



Si alguien sabe como puedo solucionarlo o conoce alguna otra alternativa le estaría muy agradecido.

Tambien me gustará si es posible que me digesen si se pueden configurar el oscilador y los fuses sin tener que recurrir al #include <p16f84a.inc> o sea directamente  de esta forma, suponiendo que según dice el datasheet del 16f84a en la página 21, que la dirección de la configuracion de los bist es 0X2007:



S_FEATURES   EQU   0x2007

.
.
.

   BSF   S_FEATURES,0   ; OSCILADOR
   BCF   S_FEATURES,1   ;     XT
   
   BCF   S_FEATURES,2   ; WDT OFF

   BSF   S_FEATURS,3   ; PWRTE OFF

.
.
.

   END



Grácias por su amabilidad y tengan paciencia y verán como soy un alumno muy aplicado.

Saludos.
   

   

Título: Re: Ayuda con PICPROG y FUSES
Publicado por: micro_cadaver en 18 de Octubre de 2006, 02:26:46
hola amigo, revise tu codigo y esta bien, ademas los fuses yo siempre los pongo como tu

#include <p16f84a.inc>     ; ESPECIFICACIÓN DEL MICRO

   __CONFIG _XT_OSC & _CP_OFF & _WDT_OFF & _PWRTE_OFF   ; CONFIGURACIÓN DEL OSCILADOR Y FUSES

asi, no se si sera la mejor manera pero por lo general siempre es la misma configuracion en mi trabajos, por otro lado, el problema del sistema operativo del linux tal vez se deba a q le falta un parche, pero si ya tienes el hardware (osea el quemador) intenta con los muchisimos softwares de programcion de pics, en el foro hay un aparatado especial q comentan sobre esto. ojala te ayude mi aporte.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 18 de Octubre de 2006, 17:51:26
Muy agradecido quedo, amigo micro cadaver, seguiré intentándolo a ver si lo consigo.

Saludos.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 18 de Octubre de 2006, 18:19:47
Que versoin de Linux usas, cual es tu kernel? puede ser que no tengas permisos para usar el puerto serie o que debas configurarlo.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 19 de Octubre de 2006, 09:02:38
Hola navaismo, gracias por responder. Te cuento.

Utilizo en estos momentos Guadalinex 3.1 con el kernel 2.6.12.

La verdad es que he tenido que construirme un nuevo jdm, por que el que tenía con linux no valía, el nuevo jdm incorpora un fem 2n7000 y de momento borra, lee y creo que graba bién, sólo que sin poder configurar los fuses y osc.

Si quieres pasate por mi web para ve el mini proyecto que hemos empezado, date cuenta que aun somos newbies ;)

http://www.telefonica.net/web2/longi
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 19 de Octubre de 2006, 12:46:44
Oye y con el PIKDEV no sera mas facil, Yo de repente uso para el F84A el KTECHLAB, ya que solo soporta ese o el 628 creo y es bien facil y ademas puedes modificar para programar via serie. Esta muy padre tu Proyecto y retomando las licencias GPL y todo gratiss porque no pides pics gratis y asi te sale parte del hardware gratis :mrgreen:
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 19 de Octubre de 2006, 15:12:08
Pues en lo de pedir los pics, no había dado (muy bueno por tu parte) y en cuanto al pikdev, la verdad es que me tienta, sólo que utilizo gnome. Es posible que tambien instale kde a ver si de una vez finalizo la parte de programación del micro y puedo continuar con el proyectin.

En cuanto pueda probaré todo lo que me has dicho y te comento resultados.

Muchas gracias por el interés.

Hasta pronto.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 20 de Octubre de 2006, 00:19:31
Tambien se puede en gnome el pikdev segun lei otro post acerca de linux. y aca entre nos ¿porque usan un sistema visual muy parecido a xp? ¿POrque nadie ama a KDE?

Saludos y suerte se ve muy bien tu proyecto. Felicidades
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 20 de Octubre de 2006, 01:34:09
Pues aunque te parezca mentira, no uso KDE por que me recuerda mucho a XP. Reconozco que visualmente KDE es mejor que Gnome ;)

Aunque como ya te dige, tengo H.D. de sobra y es posible que lo instale.

En cuanto al proyecto, aun es muy básico, pero esa es la idea, ir creciendo poco a poco en la medida que podamos.


Saludos y muchas gracias de nuevo.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 20 de Octubre de 2006, 01:49:08
OFF_TOPIC

A mi Gnome me recuerda mas a XP por eso nunca lo uso.

Perdon por salirme del tema. solo queria comentarlo
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 31 de Octubre de 2006, 11:55:58
Buenas de nuevo Navaismo, despues de dejar mi equipo más limpio que la patena, recien puesto guadalinex y recien instalado KDE 3.5 (bastante majo por cierto) me es imposible instalar pickdev, por que para poder resolver las dependencias que me pide, debo de borrar otras que me dejarían Linux inservible.

Voy a intentar directamente instalar la estable de debian y a ver si tengo mas suerte.

Muchas gracias por la atención.

NOTA: Me joderia enormemente que esta partida me la ganara microsoft  :5]
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 31 de Octubre de 2006, 12:43:03
no, no, nunca le ganara microsoft a Linux.... y si intentas con SUSE....

Saludos
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 02 de Noviembre de 2006, 10:00:20
La leche Navaismo, parece que me lees el pensamiento. Justo esa es la opción que estaba barajeando.

Gracias de nuevo y en cuanto pueda posteo resultados.

Saludos desde tierras del Quijote.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 06 de Noviembre de 2006, 17:50:29
Hola de nuevo Navaismo, por fin he instaldo el PIKDEV y parece estupendo en todo, el problema es que cuando programo el PIC me dice que MEMORY+EEPROM ERROR y el caso es que borra y lee el PIC de lujo e incluso graba los fuses y el oscilador estupendamente. Creo que es falta de conocimiento de la aplicación por mi parte, a si que intentaré buscar un manual o algo parecido para moverme por él.

No obstante el programador que tengo es un JDM modificado para LINUX, este exactamente :

http://users.tpg.com.au/btkelly/jdm_b.htm

Si tu me pudieras dar algun consejo de configuración te estaría agradecido.

Por lo demás sólo me queda darte las gracias por tu inestimable ayuda.

Ya te iré contando, Chao.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: manuelroin24 en 06 de Noviembre de 2006, 18:03:12
Me parece q tendremos q abrir un apartado para la gente que usa Linux ya q es otro mundo jejejeje ademas seria mas comodo para ellos.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 06 de Noviembre de 2006, 18:49:33
Ahora si te voy a quedar mauy mal amigo LONGINUX ya que yo programa en la vmware usando el gtp usb plus pero dejame investigar como configurar el pickdev
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 08 de Noviembre de 2006, 18:38:28
Hola de nuevo Navaismo, gracias de nuevo por tu atención.

La verdad es que no me lo explico, resulta que el JDM que me he currado es el mismo que te recomienda en su web site, sin embargo, con el PIKDEV:

- Puedo leer el PIC.
- Puedo Borrarlo.
- Puedo grabar los FUSES Y OSC

Pero:

- No puedo grabar el programa. :(

Umm, seguro que alguna pijotería se me está escapando. Voy a hacer un programa desde cero a ver si es por problemas de compatibilidad y te cuento los avances.

Muchas gracias por vuestra paciencia.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 08 de Noviembre de 2006, 18:54:27
Hola Longinux, dejame hacer pruebas este dia y te  aviso con lo del PIKDEV en suse.

Vi el programador, ya lo habia visto por situaciones nada agradables, no estoy seguro que soporte mas pics que no sean el 12C508 o el 16C84. Voy a probar con el JDM que tengo.

Por cierto como vas con el proyecto de tu pagina, te estas atrasando por esto?? Espero tenerte resultados favorables.

Saludos
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 09 de Noviembre de 2006, 01:04:55
Hola longinux ya pude programar con el pikdev, ahora me surgen dudas. y antes de hacertelas saber mejor ataco algo que es escencial para no regarla. ¿Si te crea el HEX??

Bueno si te crea el HEX, pues estan de mas las preguntas, si configuras bien los FUSES? eso me daba problemas pero una vez que entendi como funcionaban problema resuelto. use un programador JDM llamado QUARK PRO 2 y con una configuracion de jdm delay 10 en la configuracion del programador.

Deja veo si te puedo hacer unas capturas.

Mientras te dejo el programador que use JDM y que si funciono, checalo haber si te sirve
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 09 de Noviembre de 2006, 04:30:03
Hola de nuevo mira este videito que te deje  AQUI  (http://depositfiles.com/files/363493) muestra como configuro el PIKdev.

Para verlo puedes abrir el html en el Opera o Firefox de tu linux, no te digo que uses el Konqueror ya que conmigo no soporta la extension swf. Si no puedes ver el swf adjunte el exe, (ya se es para windows) pero funciona muy bien con el vinito(wine) que emula los exes de windows.

Cada que aparezcan los mensajes le vuelves a dar en play y seguira avanzando, espero te sirva de algo.

Por cierto veo que quieres usar la pc para controlarlo, un consejo si usas un cable limitas, la capacidad de movimiento, su libertad. Por aquello del alcance del cable, pero si aun asi van a usar la PC te recomiendo que uses GAMBAS, es el Visual Basic de Linux, muy bueno. y podrias acceder al puerto serie mediante el.


PD:Ahora si me gustaria saber ensamblador pa mandar al carajo hasta la vmware y trabajar todo con mi preciado LINUX, pero esperare hasta que Ktechlab o Pikdev desarrollen mas compiladores Basic :mrgreen:


Suerte
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 09 de Noviembre de 2006, 16:20:45
Madre mia Navaismo, sólo por las molestias que te estás tomando voy a hacer referencia en mi página a tu persona ya que para mi has sido esencial en este proyecto mio.

Es cierto que este problema me está retrasando, pero como el club está formado para divertinos mientras practicamos...pues no hay nadie que nos meta prisa. Además hay que cuidar ciertas preferencias ... (La hija, la mujer, los estudios, la informática, la informática,la informática,la informática,la informática,...jejjeje).

Lo de controlar el automata por puerto de serie es sólo por cabezonería mia, por aprender mas sobre los puertos de E/S de un PC, si lo cosiguiesemos trasladaríamos la idea a PARALELO, USB, RADIO, BLUETHOOT...etc.

Ahora lo mejor Navaismo, YA HE TENIDO PELOTAS A QUEMAR UN MICRO ;) por fin!!!, te cuento:

- El nuevo JDM (http://users.tpg.com.au/btkelly/jdm_b.htm) que me hice no vale para el PIKDEV y eso que dicen que está mejor alimentado.
- Lo he tenido que hacer con el TE-20 antiguo que tenía y que tambien me construí, sólo que de este no tengo ya los esquemas. Pero lo que importa es que por     fin lo hemos conseguido.

- La única peguilla que tengo es que no lee el micro, pero eso de momento me da igual.

Ahora me voy a descargar todo lo que has subido (tu JDM, el video, etc) y en cuanto tenga un ratito lo miro muy despacio y te cuento.

MUCHISIMAS GRACIAS NAVAISMO, por eso me encanta GNU/LINUX, por la gente como tu.

Saludo y hasta pronto.

P.D.: En un principio tenía pensado para lo del puerto serie utilizar C o JAVA en su defecto, pero eso es algo que aun no se ha decidido.

P.D.2: Este Sábado voy a estar en el SIMO, por si a caso ;)
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 10 de Noviembre de 2006, 02:43:46
no hace falta lo de las menciones, aqui estamos pa ayudar.

Si vas a ver que si construyes el jdm que te mande va a funcionar yo lo probe con un F84A, lo del puerto serie seguro que si te queda insisto Gambas para ello. y tambien el paralelo.

Lo del USB y rf seguro sera en windows porque no conozco librerias para linux a menos que uses el driver de microchip para usb. nada como usar Picbasic y el EasyHID para el USB. y lo de RF con unos modulitos que rondan en le foro seguro te queda.

Ah se me olvidaba tu plava de circuito impreso no olvides hacerla con el KICAD de Linux.


Saludos
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 19 de Noviembre de 2006, 16:33:02
Pues nada Navaismo, el pikdev funciona de lujo ya con cualquier JDM que le ponga. Pásate por mi web que he hecho mención especial a tu nombre ;)

Saludos y muchas gracias.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 19 de Noviembre de 2006, 18:52:31
ya encontre otro que es igualito al pikdev y tiene unas mejorillas se llama PIKlab, lo encuentras en www.Souceforge.net o en www.KDE-apps.org

Que bueno que ya te funcione y gracias por las menciones.

Abrazos
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Rulo en 19 de Noviembre de 2006, 21:32:01

    hola!!!

            Perdon por meterme, pero veo que manejan bien el linux y pues queria saber que vercion de linux me recomiendan?'''

   Anteriormente ya he trabajado con Red Hat, Mandriva y Fedora, pero se que hay un monton de verciones como Suse, Debian, etc, etc. Y me gustaria ya dejar mas a un lado el Windows, pero no me decido con que linux me quedo, pues si me ayudaran a elegir diciendome cual es mejor o cual les agrada mas se los agradecere.

             Por ahora es todo.

        Saludos   8)

 
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: navaismo en 19 de Noviembre de 2006, 22:13:56
Yo uso SUSE es la unca que he probado y me gusto mucho la probe en su version 9.0 y ahora tengo la 10 esta la 10.1 se me hace muy estable.
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Longinux en 20 de Noviembre de 2006, 10:02:43
Hola, foreros. Pues yo utilizo una metadistrubución basada en Debian / ubuntu llamada guadalinex (http://www.guadalinex.org/modules/news/) y de momento estoy muy contento.

Ummm... con que Piklab, voy a echarle un vistacillo y de nuevo gracias Navaismo.

Saludos,
Título: Re: Ayuda con PICPROG y FUSES
Publicado por: Rulo en 20 de Noviembre de 2006, 21:39:10

    Gracias por sus respuestas, creo que tratare de conseguir el SUSE, segun veo tambien es gratuito como la mayoria de los linux y se puede descargar de la red, lo malo es que pesa como 3.5Gb el ISO en DVD, pero bueno, ya vere como le hago.


             Saludos, y hasta pronto :-/