Tiny Multi Bootloader+PIC12 family firmwares:PrincipleExample given for a PIC16F1847, but it's exactly the same principle for PIC12 device family.
Description of the data tranfertRepresents the character of one byte [] below. ① Flash transfer format: [AddressH] Start address of the flash page to override the data. (upper) ② EEPROM transfer format: [EEAddressH] Address of the EEPROM to override the data | 0x40 (upper) Modify existing fimwares for a new device###todo Before you compile your new bootloader verify that your compiler will generate absolute code (and not relocatable code)! Loading firmware from PC app, wo/ changing RESET vectorHow to bypass activation of the bootloader.To provide a jumper switch pin which is not used for communication. Program modifications example: <tinybld12F617_8MHz_int_9600.asm> ;0000000000000000000000000 RESET 00000000000000000000000000 org 0x0000 pagesel IntrareBootloader goto IntrareBootloader ;view with TabSize=4 ;&&&&&&&&&&&&&&&&&&&&&&& START &&&&&&&&&&&&&&&&& ;---------------------- Bootloader ---------------------- org first_address ; nop ; nop ; nop ; nop org first_address+4 IntrareBootloader: ;* add these lines to your source file ** btfss GPIO,0 ;check Jumper pin goto first_address ;********** ;init int clock & serial port #ifdef Direct_TX bcf GPIO,TX #else bsf GPIO,TX #endif How to use:
|