USB Bootloader


Posted on Feb 6, 2014

The bootloader can be used for the all USB PIC devices (PIC18F4550, PIC18F4455, PIC18F2550, PIC18F2455, PIC18F4553, PIC18F4458, PIC18F2553, PIC18F2458). Since the bootloader is designed for the Microchip demo board, the configurationof the bootloader possibly will not fit for your project. E. g. you want to use another pin for bootloader mode entry or you do not want to spend 4 pins/LED`s


USB Bootloader
Click here to download the full size of the above Circuit.

for displaying the current status. Fortunately, the source code of the bootloader firmware is available. It is written in C language. It can be compiled with Microchip`s C18-Compiler, even with the free version of the compiler. In the directory USB Device - BootloadersVendor Class - MCHPUSB BootloaderBootloader - Firmware for PIC18F4550 Family Devices you find the project file MCHPUSB. mcp which has to be opened with MPLAB. In the project file the path settings point to the default C18 compiler directory c:mcc18. If you have installed the compiler in a different directroy, you have to modify the path settings in MPLAB. To do this, select "Project - Build options - Project" from the MPLAB menu after opening the project file MCHPUSB. mcp. In this dialog go into the "Directories" tab and change the modify the Now you can build the project via "Project - Build All". If you use the free version of the C18 compiler, the linker will fail since the generated code exceeds the boot block size. To fit the bootloader into the bootblock, we can stirp unnecessary functions from the source code, like code for showing the status of the bootloader via 4 different LEDs. Here the code parts which can be removed without loosing bootloader functionality:. /* P R I V A T E P R O T O T Y P E S */ -> remove prototype //void BlinkUSBStatus(void);. . . void BootService(void) { -> remove call to BlinkUSBStatus //BlinkUSBStatus(); if(usb_device_state...




Leave Comment

characters left:

New Circuits

.

 


Popular Circuits

Dynamic to electret microphone circuit
Light isolated solid state power relay circuits
Breath-alert-alcohol-tester
Large Lcd Display Buffering Driver Circuit
10 Watts Mosfet Audio Amplifier
building a gps logger
Avr32 Uc3b Schematic Checklist
Discussing Measuring Flash Duration
Vibration Alarm Circuit
USB Interface Board Tutorial Using PIC18F4550
22 Different Brands of 12AX7 Tubes Tested Against Each Other
LED Lighting For Dual-Filament Lamps



Top