2010年11月28日日曜日

ブートローダーで書き込むプログラム

#include <p18cxxx.h> 
 
#define REMAPPED_RESET_VECTOR_ADDRESS            0x1000
#define REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS    0x1008
#define REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS    0x1018
     
     extern void _startup (void);        // See c018i.c in your C18 compiler dir
     #pragma code REMAPPED_RESET_VECTOR = REMAPPED_RESET_VECTOR_ADDRESS
     void _reset (void)
     {
         _asm goto _startup _endasm
     }
         
         
 void main (void)
 {
   TRISA = 0x00;
   TRISD = 0x08;
   /* Reset the LEDs */
   PORTA = 0;
   /* Light the LEDs */
   PORTA = 0x3F;
   while (1)
   {
       LATAbits.LATA0=PORTDbits.RD3;
   }  
 }
 

0 件のコメント:

コメントを投稿