Subversion Repositories HomeAutomation

Rev

Rev 51 | Blame | Last modification | View Log | SVN | RSS feed

  1. /*********************************************************************
  2.  *
  3.  *                  Compiler specific
  4.  *
  5.  *********************************************************************
  6.  * FileName:        compiler.h
  7.  *
  8.  * Author               Date    Comment
  9.  *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  10.  * Johan Böhlin     21-10-06    Original        (Rev 1.0)
  11.  ********************************************************************/
  12.  
  13. #ifndef COMPILER_H
  14. #define COMPILER_H
  15.  
  16. #include <p18cxxx.h>
  17. #define CLOCK_FREQ      (40000000)      // Hz
  18. #define INSTR_FREQ          (CLOCK_FREQ/4)
  19. #define CLOCK_FOSC      (40)      // MHz
  20.  
  21. #define UART_BAUD_RATE       (115200)     // bps
  22. #define HIGH_BRG
  23.  
  24. #ifdef HIGH_BRG
  25.     #define SPBRG_VAL   ( ((CLOCK_FREQ/UART_BAUD_RATE)/4) - 1)
  26.     #define SPBRGH_VAL  0
  27. #else
  28.     #define SPBRG_VAL   ( ((INSTR_FREQ/UART_BAUD_RATE)/16) - 1)
  29. #endif
  30.  
  31.  
  32. #if (SPBRG_VAL > 255)
  33.     #error "Calculated SPBRG value is out of range for currnet CLOCK_FREQ."
  34. #endif
  35.  
  36. #define LED0_TRIS       (TRISCbits.TRISC1)
  37. #define LED0_IO         (PORTCbits.RC1)
  38.  
  39. #define UART_START_BYTE 253
  40. #define UART_END_BYTE 250
  41.  
  42. #define UART_READ_TIMEOUT 30000
  43.  
  44. #endif //compiler.h
  45.