/Designs/Measuring_instruments/AWS01A/SW/PIC16F887/bltest/bltest.c |
---|
0,0 → 1,19 |
/**** BootLoader Test****/ |
#CASE // Case sensitive compiler |
#include "bltest.h" |
void main() // Main of loaded program |
{ |
int8 i=0; |
while(TRUE) |
{ |
printf("# Boot Loader Test >>> %u\r\n",i++); |
delay_ms(100); |
// restart_wdt(); |
} |
} |
#include "dbloader.h" |
/Designs/Measuring_instruments/AWS01A/SW/PIC16F887/bltest/bltest.h |
---|
0,0 → 1,21 |
#include <16F887.h> |
#device adc=10 |
#FUSES WDT //No Watch Dog Timer |
#FUSES INTRC //Internal RC Osc |
#FUSES NOPUT //No Power Up Timer |
#FUSES MCLR //Master Clear pin enabled |
#FUSES NOPROTECT //Code not protected from reading |
#FUSES NOCPD //No EE protection |
#FUSES NOBROWNOUT //No brownout reset |
#FUSES IESO //Internal External Switch Over mode enabled |
#FUSES FCMEN //Fail-safe clock monitor enabled |
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O |
#FUSES NODEBUG //No Debug mode for ICD |
#FUSES NOWRT //Program memory not write protected |
#FUSES BORV40 //Brownout reset at 4.0V |
#use delay(clock=8000000) |
//#use rs232(baud=9600,parity=N,xmit=PIN_B7,rcv=PIN_B6,bits=8,ERRORS) |
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8,ERRORS) |
/Designs/Measuring_instruments/AWS01A/SW/PIC16F887/bltest/bltest.hex |
---|
0,0 → 1,40 |
:0C00000000308A00D628000010280800FC |
:100020002310C2376F3A2026EF30E4327210D432F8 |
:10003000733A201F3E1FA012F5060A00831603170D |
:100040008C170C140000000003184E2883120C08B3 |
:100050007F390313A40003170D080313A50003172A |
:100060000F080313A60024080C1E34289900250845 |
:1000700003178D000313260803178F0083168C17B0 |
:100080000C140000000083120313A30B48284B2814 |
:10009000831603174E286E288316031783120C0D40 |
:1000A0000E0D7F390313A40003170D080313A500D9 |
:1000B00003170F080313A60024080C1E5D289900DF |
:1000C000250803178D000313260803178F008D0AD8 |
:1000D00003198F0A03100313A30B1E288A110A1297 |
:1000E00007292608F8012502031879282508F700B2 |
:1000F0008528F7010830A700A50DF70D260877021F |
:100100000318F700F80DA70B7C28080078082308CF |
:10011000A5006430A60071207708A300780830306D |
:10012000031D9928A41CA128A419A128241A203051 |
:100130009C28A41124122414F80778080C1E9E2869 |
:1001400099002308A5000A30A60071207708A300B3 |
:1001500078083030031DB228A419B728241CB7280A |
:10016000241A2030F80778080C1EB4289900303083 |
:10017000A30723080C1EBA2899008A110A120C2919 |
:1001800022308400831300080319D3280230F800BA |
:10019000F701F70BC928F80BC8289730F700F70BC1 |
:1001A000CF28800BC6288A110A12172984018313CD |
:1001B0001F308305713083168F000F0803178711D6 |
:1001C0000C3003139900A2309800903083129800ED |
:1001D000831603170908C039890003131F129F12E1 |
:1001E00000300317880083128701880189010313F7 |
:1001F000A001A1012108A10AA200103003178D005F |
:1002000000308F00031017300313A3001E282208AC |
:10021000A3001B30A40086280D300C1E0D29990068 |
:100220000A300C1E112999006430A200C028FA2857 |
:02023000630069 |
:063960008A0100280800A6 |
:04400E00FD2CFF3F47 |
:00000001FF |
;PIC16F887 |
;CRC=B9BE CREATED="09-3-13 23:48" |
/Designs/Measuring_instruments/AWS01A/SW/PIC16F887/bltest/dbloader.h |
---|
0,0 → 1,17 |
/*------------------- DUMMY BOOT LOADER --------------------------------------------*/ |
#define FLASH_BLOCK_SIZE getenv("FLASH_ERASE_SIZE")/2 // Minimal length of Flash Block Size |
#define RESERVED_BLOCKS 53 // Number of reserved flash blocks for BootLoader |
#define LOADER_RESERVED (getenv("PROGRAM_MEMORY")-(RESERVED_BLOCKS*FLASH_BLOCK_SIZE)) // begining of BootLoader |
#BUILD(INTERRUPT=FLASH_BLOCK_SIZE) // Redirect Interrupt routine above first flash block |
#ORG 4,5 |
void JumpToTheInterrupt() // Jump to the Interrupt Handler |
{ #asm GOTO FLASH_BLOCK_SIZE #endasm } |
#ORG 6,FLASH_BLOCK_SIZE-1 {} // First Flash block is reserved |
#ORG LOADER_RESERVED,getenv("PROGRAM_MEMORY")-1 auto=0 |
#SEPARATE |
void dummy_main() // Main on the fix position |
{ |
reset_cpu(); |
} |