2010年11月28日日曜日

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

  1. #include <p18cxxx.h>   
  2.    
  3. #define REMAPPED_RESET_VECTOR_ADDRESS            0x1000  
  4. #define REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS    0x1008  
  5. #define REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS    0x1018  
  6.        
  7.      extern void _startup (void);        // See c018i.c in your C18 compiler dir  
  8.      #pragma code REMAPPED_RESET_VECTOR = REMAPPED_RESET_VECTOR_ADDRESS  
  9.      void _reset (void)  
  10.      {  
  11.          _asm goto _startup _endasm  
  12.      }  
  13.            
  14.            
  15.  void main (void)  
  16.  {  
  17.    TRISA = 0x00;  
  18.    TRISD = 0x08;  
  19.    /* Reset the LEDs */  
  20.    PORTA = 0;  
  21.    /* Light the LEDs */  
  22.    PORTA = 0x3F;  
  23.    while (1)  
  24.    {  
  25.        LATAbits.LATA0=PORTDbits.RD3;  
  26.    }    
  27.  }  
  28.    

0 件のコメント:

コメントを投稿