Autor Tema: Bootloader USB para PIC18F4550 a full.  (Leído 180826 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #165 en: 23 de Agosto de 2012, 14:20:35 »
Hola, alguien q pudiera orientarme en la pregunta anterior¿ Solamente q me comente como tengo q ponerlo en asm, saludos.

Yo creería que es así:

Código: ASM
  1. org 0x00
  2. goto 0x1000
  3. org 0x08
  4. goto 0x1008
  5. org 0x18
  6. goto 0x1018
  7.  
  8. org 0x1000
  9. goto Inicio
  10. org 0x1008
  11. ; Interrupcion...
  12. org 0x1018
  13. ;interrupcion...
  14.  
  15. Inicio:
  16. ; de aquí en adelante tu código.

UFF...
 me perdi por completo durante un tiempo y ahora regreso pero veo este tema nuevo y por supuesto de mi interes pero entre tantos linck no se por cual irme ¿cual es el bueno? todos
bueno tengo el ccs 4.134
proteus 7.9
labview 2012
pic 18f4550
y quiero hacer el bootloader con ccs y labview
alguien tiene informacion que me puedan pasar para trabajar con ccs???

El bootloader ya tiene su propia aplicación, dentro de la carpeta \USB\Device - Bootloaders\HID están los códigos fuente en C++ como para verlos y ver como es el protocolo implementado para enviar los datos (USB HID).

Bajando de aquí Microchip Application Libraries tienes la ultima versión disponible.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado BEXTIXTOX

  • PIC16
  • ***
  • Mensajes: 108
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #166 en: 25 de Agosto de 2012, 12:40:29 »
GRACIAS zuky
pero aun perdido.. ya tengo la descarga y la carpeta que mencionas pero estoy WHAT!!!
no se me hace familiar ningun archivo pues creo es por que estan echos con MPLAB y cn C++
y yo manejo CCS y LABVIEW aunque lo que mas me interesa es estudiar el PROGRAMITA DEL PIC pero en lenguaje CCS y por parte de la PC me las arreglo con LABVIEW

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #167 en: 25 de Agosto de 2012, 12:55:31 »
Bueno, pero entonces que intentas hacer? El bootloader ya esta hecho y tiene su aplicación para utilizarlo. Entonces puedes dejarlo así y tu solo implementarlo. No se bien si entiendes que es un bootloader?

Ahora si tu quieres hacer la aplicación en LabView para enviarle al microcontrolador el HEX a programar, entonces si necesitas ponerte a leer bastante. Ver como es que interactuan las dos cosas, el bootloader del PIC con la aplicación hecha en C++, o sea de que modo es que se envían los datos para grabarlo y para leerlo.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado Gnewton

  • PIC10
  • *
  • Mensajes: 1
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #168 en: 22 de Marzo de 2013, 11:25:58 »
Hola a todos.
Me presento en el foro y reviso este tema que he leído por completo con entusiasmo.
Hace unos días fabriqué una placa similar a la que aquí se explica, partiendo de este link http://www.forosdeelectronica.com/f24/algunos-proyectos-avanzados-microcontroladores-pic-78040/
Pero aunque pude grabar programitas en el PIC mediante un programador externo y funcionan bién, no logré que la PC reconozca la placa al conectarla al puerto USB.
Probé grabarle todos los .hex que aconsejaban y nada.
Luego encontré este foro y agregué a mi placa otro pulsador al puerto RB4 para usar el .hex mencionado aquí. Presiono ambos botones soltando el reset primero y nada...
En cuanto al esquema de componentes, la única diferencia que veo es que en el de este foro el MCLR va directo a VDD y yo tengo una resistencia de 10k.
Podrá ser esa resistencia el problema?
Gracias.

Desconectado LABmouse

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #169 en: 27 de Marzo de 2013, 17:46:53 »
Hola Gnewton,

No logro ver el esquemático en el link que das. Puedes adjuntarle acá mismo?

Desconectado Marito_26

  • PIC10
  • *
  • Mensajes: 37
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #170 en: 01 de Junio de 2013, 02:01:38 »

  Funciona muy bien lo del bootloader...............pero....... hay manera de entre solo usando el boton RESET, sin necesidad de usar otro boton mas?


Lo tengo funcionando asi con presionar A1 y RESET, pero solo quiero RESET.

Código: C
  1. void iniciar_bootloader(void)
  2.    {
  3.       g_InBootloader = TRUE;
  4.       usb_cdc_init();
  5.       usb_init();
  6.       while(!usb_enumerated());
  7.       load_program();
  8.    }
  9.  
  10. void main(void)
  11. {
  12.   #if (defined(__USB_87J50__) && (getenv("FUSE_SET:H4_SW")))
  13.    #byte OSCTUNE = 0xF9B
  14.    #bit PLLEN=OSCTUNE.6
  15.    PLLEN = TRUE;
  16.    delay_ms(250);
  17.   #endif
  18.  
  19.    //we use PIN_A4 as an event to determine if we should start the USB CDC
  20.    //bootloader.  if it is not low (button is not pressed) then goto the
  21.    //application, else if is low (button is pressed) then do the bootloader.
  22.    if(!input(PIN_A1))
  23.    {
  24.     iniciar_bootloader();
  25.    }
  26.    g_InBootloader = FALSE;
  27.    
  28.   #ASM
  29.    goto APPLICATION_START
  30.   #ENDASM
  31. }

Desconectado alberto0265

  • PIC10
  • *
  • Mensajes: 2
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #171 en: 14 de Junio de 2013, 22:07:23 »
Hola a todos vengo con una consulta,he probado todos los remapeos que estan en el hilo y no pude hacer funcionar mi programa.
Les comento tengo el  hid booloader cargado en un pic18f4550,cuando cargo el programa que tambien tiene una comunicacion en
visual C# y la comunicacion con el pic es hid en el pic no se manifiesta nada.
Mi version de ccs es 4.110 y si la vajo mi programa no se compila porque ya se a probado en otro foro.
Les agradecere su atension

Desconectado facundo598

  • PIC10
  • *
  • Mensajes: 1
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #172 en: 28 de Julio de 2013, 19:37:23 »
Hola a todos.. he estado leyendo este post y con el esquema aki mencionado arme una plaquita y a la hora de compilar con el mplab no compila por el siguiente error, siempre q m aparecen los archivos extencion .o m dan dolores de cabeza.. jee... no entiendo mucho pero el archivo que me pide o menciona el "lib/c018i.o" esta en la carpeta lib y bueno de ahi no se q mas hacer .. si alguien m podria ayudar estaria agradecido..
----------------------------------------------------------------------
Clean: Deleting intermediary and output files.
Clean: Deleted file "C:\Users\facu\Documents\Digi2\100_Bootloader 4550\boot.o".
Clean: Deleted file "C:\Users\facu\Documents\Digi2\100_Bootloader 4550\boot4550.mcs".
Clean: Done.
Executing: "C:\Program Files\Microchip\mplabc18\v3.40\bin\mcc18.exe" -p=18F4550 /i"C:\Program Files\Microchip\mplabc18\v3.40\h" "boot.c" -fo="C:\Users\facu\Documents\Digi2\100_Bootloader 4550\boot.o" -D__DEBUG -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
MPLAB C18 v3.40 (feature limited)
Copyright 2000-2011 Microchip Technology Inc.
This version of MPLAB C18 does not support the extended mode
and will not perform all optimizations.  To purchase a full
copy of MPLAB C18, please contact your local distributor or
visit buy.microchip.com.


Executing: "C:\Program Files\Microchip\mplabc18\v3.40\bin\mplink.exe" /p18F4550 /l"C:\Program Files\Microchip\mplabc18\v3.40\lib" /k"C:\Program Files\Microchip\mplabc18\v3.40\bin\LKR" "..\..\..\..\..\Program Files\Microchip\mplabc18\v3.40\bin\LKR\18f4550_g.lkr" "boot.o" /u_CRUNTIME /u_DEBUG /z__MPLAB_BUILD=1 /z__MPLAB_DEBUG=1 /o"C:\Users\facu\Documents\Digi2\100_Bootloader 4550\boot4550.cof" /M"C:\Users\facu\Documents\Digi2\100_Bootloader 4550\boot4550.map" /W
MPLINK 4.40, Linker
Device Database Version 1.3
Copyright (c) 1998-2011 Microchip Technology Inc.
Error - could not find definition of symbol 'main' in file 'C:\Program Files\Microchip\mplabc18\v3.40\lib/c018i.o'.
Errors    : 1


Link step failed.
----------------------------------------------------------------------
Debug build of project `C:\Users\facu\Documents\Digi2\100_Bootloader 4550\boot4550.mcp' failed.
Language tool versions: mpasmwin.exe v5.37, mplink.exe v4.40, mcc18.exe v3.40, mplib.exe v4.37
Preprocessor symbol `__DEBUG' is defined.
Mon Jul 29 00:29:23 2013
----------------------------------------------------------------------
BUILD FAILED
« Última modificación: 28 de Julio de 2013, 19:41:11 por facundo598 »

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #173 en: 01 de Abril de 2014, 15:20:12 »
Hola,
debido a los problemas que tengo a la hora de grabar un programa en un determinado tipo de pics, estoy estudiando la posibilidad de montar un bootloader a mi diseño para recargar programas de usuario.

En mi diseño, en vez de usar  el pin RB4 como activación del bootloader, como se indica en estos post, uso el pin RC1.
Me he leído todo este tema a si como otros similares para ver si hay una compilación realizada apropiada para es pin y no la he visto.
El problema es que supongo que se puede modificar el original cambiar ese dato y volver a compilar, pero de "C" ya que me supongo que esta realizado en ese lenguaje, no tengo ni idea.
me podrían decir donde o como podría obtener ya el hex para ese pin RC1 y para ser usado en un pic 16F4550 por USB-
Muchas gracias por anticipado por su inestimable ayuda.
Todos los días se aprende algo nuevo.

Desconectado Hernandiaz03

  • PIC10
  • *
  • Mensajes: 9
Re:Bootloader USB para PIC18F4550 a full.
« Respuesta #174 en: 12 de Enero de 2016, 00:33:22 »
hola, me gustaria aprender sobre pics y para ello como proyecto tengo hacer una board de entrenamiento, pero debido a que no tengo pickit, pensaba pedirle el favor a alquien que me pusiera usb bootloader en un 18f2550 y asi trabajar con ella, pero quisiera trabajar lo mas fiel y parecido a como lo haria con pickit, por lo que he descartado los pinguino.

alguien podria compartirme informacion util para este fin? o alguna recomendacion?


Gracias

Desconectado agauss

  • PIC16
  • ***
  • Mensajes: 147
Re:Bootloader USB para PIC18F4550 a full.
« Respuesta #175 en: 09 de Diciembre de 2016, 12:58:20 »
Hola buen día compañeros del foro, resulta que estoy haciendo la prueba del bootloader PDFSUSB programando en CCS y tal como lo indica Scientist, añadiendo estas lineas al código fuente, es posible usar dicho boot con el entorno de CCS.

#define LOADER_END 0x7FF
#define LOADER_SIZE 0x6FF
#build(reset=LOADER_END+1, interrupt=LOADER_END+9)
#org 0, LOADER_END {} // nothing will replace the bootloader memory space
// END OF bootloader definition

Todo bien hasta que he querido usar las interrupciones en CCS, en este caso el programa no funciona, el programa se pierde en algún punto y se congela. ¿Alguien a tenido este problema y lo ha podido resolver?, ¿sera acaso que tendría que hacerse alguna modificación en el remapeo de las direcciones para las interrupciones?. Si alguien tiene información al respecto, espero quiera compartirla. Saludos...
No es el conocimiento, sino el acto de aprendizaje, y no la posesión, sino el acto de llegar allí, que concede el mayor disfrute.
"Carl Friedrich Gauss"

El tacto es el arte de hacer un punto sin hacer un enemigo.
"Isaac Newton"

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Bootloader USB para PIC18F4550 a full.
« Respuesta #176 en: 09 de Diciembre de 2016, 13:11:38 »
Lo feo es que CCS posee una interrupcion para cada cosa. Si pudieras ubicar un goto 0x0808 y 0x0816 en las direcciones 0x08 y 0x16 seria lo ideal.
Me refiero al bootloader ( y suponiendo que el bootloader no use las interrupciones ).

Desconectado johnger2

  • PIC10
  • *
  • Mensajes: 5
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #177 en: 29 de Septiembre de 2020, 17:57:30 »
Después de renegar un poco ( como siempre ) pude hacer funcionar el bootloader en mi pic 18f4550. Comento los inconvenientes que tuve para que otros se ahorren el mal trago :x

1) Empecé a probar con el bootloader del ccs para puerto serie ( se debe usar el programa Soiw.exe )... no me funcionó, me salió el error "Timeout while downloading" tooodasss las veces , probando de diferentes formas y configuraciones. Aclaro que probé en Win764 ( con adaptador usb serie), WinXP 64 y 32 ( con adaptador usb serie, y sin adapatador(directo puerto serie) ), en otra PC y siempre lo mismo)  :(

2) Seguí probando con el usb_bootloader que ofrece microchip (con el cual se inicia este hilo) y funcionó utilizando el PDFSUSB.exe pero no pude hacer correr el demo de ninguna manera :(, directamente no me da opción a elegir PICDEM FS USB BOARD.

3) Proseguí a probar la opción de utilizar el bootloader de microchip y cargar luego un programa de ccs mediante el PDFSUSB.exe respetando las indicaciones ya dadas ( agregar las líneas en nuestro programa para no pisar el bootloader ) y funcionó a la perfección. Solo en WinXP, ni intenten en Win7 o vista porque el driver del USB no funciona.

Muchas gracias a todos los que comentaron y espero les sirva mi aporte.

Hola que lineas agregaste para no pisar el bootloader ???


 

anything