Subversion Repositories HomeAutomation

Rev

Rev 64 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

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