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

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

Desconectado ema

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1078
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #45 en: 09 de Noviembre de 2009, 14:41:53 »
Estan en el main.c  y ademas si usas un programador desde MPLAB puedes usar la opcion que tu comentas.

Desconectado ra2ven

  • PIC10
  • *
  • Mensajes: 29
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #46 en: 10 de Noviembre de 2009, 07:27:13 »
Hola, aquí adjunto el código de mi archivo main.c. Supongo que los "configuration bits" deberían estar definidos en el apartado DECLARATIONS pero como se aprecia no hay nada. Estoy un poco confuso porque en la primera página del post se comenta que los "Configuration bits" vienen definidos por defecto en el código pero es que en el que yo tengo no los veo por ninguna parte.

Código: [Seleccionar]
/*********************************************************************
 *
 *                Microchip USB Bootloader Version 1.0
 *
 *********************************************************************
 * FileName:        main.c
 * Dependencies:    See INCLUDES section below
 * Processor:       PIC18
 * Compiler:        C18 2.30.01+
 * Company:         Microchip Technology, Inc.
 *
 * Software License Agreement
 *
 * The software supplied herewith by Microchip Technology Incorporated
 * (the “Company”) for its PICmicro® Microcontroller is intended and
 * supplied to you, the Company’s customer, for use solely and
 * exclusively on Microchip PICmicro Microcontroller products. The
 * software is owned by the Company and/or its supplier, and is
 * protected under applicable copyright laws. All rights are reserved.
 * Any use in violation of the foregoing restrictions may subject the
 * user to criminal sanctions under applicable laws, as well as to
 * civil liability for the breach of the terms and conditions of this
 * license.
 *
 * THIS SOFTWARE IS PROVIDED IN AN “AS IS” CONDITION. NO WARRANTIES,
 * WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED
 * TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
 * PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. THE COMPANY SHALL NOT,
 * IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL OR
 * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
 *
 * Author               Date        Comment
 *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 * Rawin Rojvanit       11/19/04     Original.
 ********************************************************************/

/** I N C L U D E S **********************************************************/
#include <p18cxxx.h>
#include "system\typedefs.h"                        // Required
#include "system\usb\usb.h"                         // Required
#include "io_cfg.h"                                 // Required

#include "system\usb\usb_compile_time_validation.h" // Optional

/** V A R I A B L E S ********************************************************/
#pragma udata

/** P R I V A T E  P R O T O T Y P E S ***************************************/

/** V E C T O R  R E M A P P I N G *******************************************/

#pragma code _HIGH_INTERRUPT_VECTOR = 0x000008
void _high_ISR (void)
{
    _asm goto RM_HIGH_INTERRUPT_VECTOR _endasm
}

#pragma code _LOW_INTERRUPT_VECTOR = 0x000018
void _low_ISR (void)
{
    _asm goto RM_LOW_INTERRUPT_VECTOR _endasm
}

#pragma code

/** D E C L A R A T I O N S **************************************************/
#pragma code
/******************************************************************************
 * Function:        void main(void)
 *
 * PreCondition:    None
 *
 * Input:           None
 *
 * Output:          None
 *
 * Side Effects:    None
 *
 * Overview:        Main program entry point.
 *
 * Note:            None
 *****************************************************************************/
void main(void)
{
    byte temp;
    temp = ADCON1;
    ADCON1 |= 0x0F;
   
    //TRISBbits.TRISB4 = 1;     // Reset value is already '1'
   
    //Check Bootload Mode Entry Condition
    if(PORTBbits.RB4 == 1)      // If not pressed, User Mode
    {
        ADCON1 = temp;          // Restore reset value
        _asm goto RM_RESET_VECTOR _endasm
    }//end if
   
    //Bootload Mode
    mInitAllLEDs();
    mInitializeUSBDriver();     // See usbdrv.h
    USBCheckBusStatus();        // Modified to always enable USB module
    while(1)
    {
        USBDriverService();     // See usbdrv.c
        BootService();          // See boot.c
    }//end while
}//end main

#pragma code user = RM_RESET_VECTOR

/** EOF main.c ***************************************************************/

Por otra parte yo compilo con el mplab pero uso un programador ajeno para grabarlo en el PIC, ¿en este caso puedo definir directamente los "configution bits" en la pestaña "Configure/configution bits" o debo definirlos en el código obligatoriamente?

Gracias

Desconectado ema

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1078
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #47 en: 10 de Noviembre de 2009, 14:33:56 »
No tengo idea de donde sacaste ese codigo. No es ni cerca parecido al mio.

Por otro lado, si programas en otro entorno las opciones de configuración deben estar en el codigo o traves del otro entorno.

Saludos

Desconectado ra2ven

  • PIC10
  • *
  • Mensajes: 29
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #48 en: 11 de Noviembre de 2009, 07:04:14 »
El código es el que aparece en el link proporcionado por Picmouse en la primera respuesta de este post para seguir el ejemplo.

Concretamente se encuentra en el directorio: C:\MCHPFSUSB\fw\Boot\main.c una vez instalado el ejecutable.

Supongo que cuando se decían en las respuestas siguientes a que ya venian definidos los "configuration bits" por defecto se referían al código ya compilado en el directorio C:\MCHPFSUSB\fw\_factory_hex, pero en caso de compilarlo yo podre definirlos como quiera.

Un saludo


Desconectado ema

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1078
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #49 en: 11 de Noviembre de 2009, 14:38:27 »
Prueba bajarlo directamente de microchip. Yo lo baje de ahi y no tuve problemas.

Saludos

Desconectado ra2ven

  • PIC10
  • *
  • Mensajes: 29
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #50 en: 12 de Noviembre de 2009, 16:28:31 »

Hola, he probado a compilar el código y el Mplab me da error. Tengo la version de prueba del C18 y la configuración siguiente:



Parece ser que no encuentra el compilador aunque creo tener su directorio corréctamente introducido. Quizás me falte algo por configurar.

Gracias.


Desconectado ra2ven

  • PIC10
  • *
  • Mensajes: 29
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #51 en: 12 de Noviembre de 2009, 16:35:19 »
Ya lo arregle, estaban mal introducidos los directorios.

Un saludo

Desconectado campech

  • PIC10
  • *
  • Mensajes: 13
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #52 en: 20 de Enero de 2010, 10:57:55 »
Hola amigos del foro, espero que alguien pueda ayudarme con este problema:

He estado utilizando el bootloader de microchip con la tarjeta picdem fs usb, hasta la fecha he cargado mis programas de CCS v4.84, utilizando las directivas que ustedes tan amables publicaron en este foro, para no borrar el bootloader de microchip:

#BUILD(reset=0x800,interrupt=0x808)
#ORG 0x0000,0x07ff {}

Hasta la fecha me ha funcionado bien pero ayer decidi descargar la nueva versión de CCS: 1.104, compile un programa de prueba y no me marco ningun error pero al descargarlo a la tarjeta no hace nada. Este mismo programa al compilarlo fuciona perfectamente con la version 4.84. Alguna sugerencia o idea que tengas de porque pasa esto:

Gracias por su atención.


Desconectado LABmouse

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 3574
    • Juntos es mejor
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #53 en: 22 de Enero de 2010, 04:11:18 »
Pues me has dejado dudando. Sera un nuevo BUG...  :? Voy a intentar para ver que podemos hacer.

Desconectado campech

  • PIC10
  • *
  • Mensajes: 13
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #54 en: 29 de Enero de 2010, 22:07:10 »
Gracias por tu respuesta PICmouse, yo he tratado de resolver el problema pero aun sigo sin poder hacer funcionar una simple secuencia compilada con la version de CCS 4.104, espero tenr algo favorable y ya estaré informando.
Saludos y gracias por su atencíon   :)

Desconectado anhexo

  • PIC10
  • *
  • Mensajes: 1
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #55 en: 07 de Febrero de 2010, 06:22:23 »
hola que tal yo tambien me he encontrado con el mismo problema campech, al parecer las nuevas verciones del ccs modificaron el funcionamiento del build y el export, o al menos eso creo, prueba a mirar el ejemplo api.zip, yo por el momento lo he arreglado agregando la siguiente linea
:020000040000FA
al hex que genera el ccs...aunque no estoy muy agusto con la solucion

si encuentras una mejor te agradeceria la compartieras....

saludos

Desconectado campech

  • PIC10
  • *
  • Mensajes: 13
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #56 en: 09 de Febrero de 2010, 13:34:58 »
Hola anhexo:

Aun no he podido resolver el problema, mientras tanto regrese a usar la version 4.084, porque ni la 4.093 funciona. El ejemplo que dices que revise api.zip está en la carpeta de ejemplos de la instalación del compilador CCS ? o es uno que tu hiciste?

Saludos, seguimos en contacto para tratar de resolver el problema,   8) byeee

Desconectado alcome

  • PIC10
  • *
  • Mensajes: 1
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #57 en: 16 de Febrero de 2010, 09:31:08 »
Yo llevo muchos intentos de Bootloader con código de Mikrobasic y no logro hacerlo funcionar.
Alguien lo probó?

Desconectado elpeibel

  • PIC10
  • *
  • Mensajes: 32
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #58 en: 25 de Febrero de 2010, 13:30:53 »
uf menos mal ya pensaba que me estaba volviendo loco.... me pasa igual... le he dado 5000 vueltas a mi código, empezaba a sospechar eso, del compilador, pero no podia creermelo ¿sulen hacer cosas así?

teneis algún avance??

saludos!!

Desconectado ajhl7

  • PIC10
  • *
  • Mensajes: 1
Re: Bootloader USB para PIC18F4550 a full.
« Respuesta #59 en: 02 de Marzo de 2010, 21:42:38 »
lo del programador externo, se refieren a cargar el bootloader al pic con el mplab y el picstar???