FenTrac
Full Member level 5
- Joined
- Jul 6, 2014
- Messages
- 248
- Helped
- 50
- Reputation
- 102
- Reaction score
- 54
- Trophy points
- 1,308
- Location
- West Coast
- Activity points
- 4,264
This project is a small bootloader and an uploader
for the PIC18F47K40/27K40.
The Microchip PIC18F47K40 is one of the newer PIC18F
microcontrollers with some nice features.
Some of the existing PIC bootloaders didn't support
it. The new bootloader uses the revised register
names and pin configuration process of the 47K40.
It erases and programs flash in 128 byte blocks.
Which were some of the things other bootloaders
didn't handle. This required a new uploader as
well.
The bootloader sits at the top of program flash.
At reset it waits @ 1 sec for input from the
uploader and then runs the user program. The uploader
waits for the PIC to be reset, and then transfers
the program ihex32 file. No special circuit is
needed to activate the bootloader.
The attached .zip file has source code for the
bootloader and uploader, and a PCB board layout
for an 18F47K40.
The board layout includes a PICKit 3 interface header,
a USB interface using an ATMEGA16U2, and an ICSP
header to program the 16U2. The board has some of the
I/O headers arranged in a pattern similar to an
Arduino.
View attachment project files.zip
for the PIC18F47K40/27K40.
The Microchip PIC18F47K40 is one of the newer PIC18F
microcontrollers with some nice features.
Some of the existing PIC bootloaders didn't support
it. The new bootloader uses the revised register
names and pin configuration process of the 47K40.
It erases and programs flash in 128 byte blocks.
Which were some of the things other bootloaders
didn't handle. This required a new uploader as
well.
The bootloader sits at the top of program flash.
At reset it waits @ 1 sec for input from the
uploader and then runs the user program. The uploader
waits for the PIC to be reset, and then transfers
the program ihex32 file. No special circuit is
needed to activate the bootloader.
The attached .zip file has source code for the
bootloader and uploader, and a PCB board layout
for an 18F47K40.
The board layout includes a PICKit 3 interface header,
a USB interface using an ATMEGA16U2, and an ICSP
header to program the 16U2. The board has some of the
I/O headers arranged in a pattern similar to an
Arduino.
View attachment project files.zip