OpenCores
URL https://opencores.org/ocsvn/light52/light52/trunk

Subversion Repositories light52

[/] [light52/] [trunk/] [test/] [include/] [light52.h] - Blame information for rev 7

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 ja_rd
/**
2
    @file light52.h
3
    @brief SFR definitions for the light52 core.
4
 
5
    This file uses the SCDD compiler MCS51 C extensions and will not be
6
    directly compatible with other compilers.
7
*/
8
 
9
#ifndef LIGHT52_H_INCLUDED
10
#define LIGHT52_H_INCLUDED
11
 
12
/* Interrupt Enable register */
13
__sfr __at  0xa8 IE;      /**< Interrupt enable register */
14
__sbit __at 0xaf EA;      /**< Global Interrupt Enable flag */
15
__sbit __at 0xac ES;      /**< Serial port Interrupt Enable flag */
16
__sbit __at 0xa9 ET0;     /**< Timer 0 Interrupt Enable flag */
17
__sbit __at 0xa8 EEX;     /**< External Interrupt Enable flag */
18
 
19
/* Serial port */
20
__sfr __at  0x98 SCON;      /**< UART control register */
21
__sbit __at 0x9c TXIRQ;     /**< UART TX interrupt flag */
22
__sbit __at 0x9d RXIRQ;     /**< UART RX interrupt flag */
23
__sbit __at 0x9c TXRDY;     /**< UART TxRdy flag */
24
__sbit __at 0x9d RXRDY;     /**< UART RxRdy flag */
25
__sfr __at  0x99 SBUF;      /**< UART tx/rx data buffer */
26
__sfr __at  0x9a SBPL;      /**< UART Baud period register, Low byte */
27
__sfr __at  0x9b SBPH;      /**< UART Baud Period register, High byte  */
28
 
29
/* Timer T0 -- 16-bit timer not compatible to original */
30
__sfr __at  0x88 TCON;      /**< Timer 0 control register */
31
__sbit __at 0x88 T0IRQ;     /**< Timer 0 interrupt flag */
32
__sbit __at 0x8c T0ARL;     /**< Timer 0 Auto ReLoad flag */
33
__sbit __at 0x8d T0CEN;     /**< Timer 0 Count ENable flag */
34
__sfr __at  0x8c T0L;       /**< Timer 0 counter register, Low byte */
35
__sfr __at  0x8d T0H;       /**< Timer 0 counter register, High byte */
36
__sfr __at  0x8e T0CL;      /**< Timer 0 reload register, Low byte */
37
__sfr __at  0x8f T0CH;      /**< Timer 0 reload register, High byte */
38
 
39
/* External interrupts */
40
__sfr __at  0xc0 EXTINT;    /**< EXTernal INTerrupt flag register */
41
__sbit __at 0xc0 EIRQ0;
42
__sbit __at 0xc1 EIRQ1;
43
__sbit __at 0xc2 EIRQ2;
44
__sbit __at 0xc3 EIRQ3;
45
__sbit __at 0xc4 EIRQ4;
46
__sbit __at 0xc5 EIRQ5;
47
__sbit __at 0xc6 EIRQ6;
48
__sbit __at 0xc7 EIRQ7;
49
 
50
/* I/O ports */
51
__sfr __at  0x80 P0;        /**< Port 0 register (hardwired output) */
52
__sbit __at 0x80 P0_0;
53
__sbit __at 0x81 P0_1;
54
__sbit __at 0x82 P0_2;
55
__sbit __at 0x83 P0_3;
56
__sbit __at 0x84 P0_4;
57
__sbit __at 0x85 P0_5;
58
__sbit __at 0x86 P0_6;
59
__sbit __at 0x87 P0_7;
60
__sfr __at  0x90 P1;        /**< Port 1 register (hardwired output) */
61
__sbit __at 0x90 P1_0;
62
__sbit __at 0x91 P1_1;
63
__sbit __at 0x92 P1_2;
64
__sbit __at 0x93 P1_3;
65
__sbit __at 0x94 P1_4;
66
__sbit __at 0x95 P1_5;
67
__sbit __at 0x96 P1_6;
68
__sbit __at 0x97 P1_7;
69
__sfr __at  0xa0 P2;        /**< Port 2 register (hardwired input) */
70
__sbit __at 0xa0 P2_0;
71
__sbit __at 0xa1 P2_1;
72
__sbit __at 0xa2 P2_2;
73
__sbit __at 0xa3 P2_3;
74
__sbit __at 0xa4 P2_4;
75
__sbit __at 0xa5 P2_5;
76
__sbit __at 0xa6 P2_6;
77
__sbit __at 0xa7 P2_7;
78
__sfr __at  0xb0 P3;        /**< Port 3 register (hardwired input) */
79
__sbit __at 0xb0 P3_0;
80
__sbit __at 0xb1 P3_1;
81
__sbit __at 0xb2 P3_2;
82
__sbit __at 0xb3 P3_3;
83
__sbit __at 0xb4 P3_4;
84
__sbit __at 0xb5 P3_5;
85
__sbit __at 0xb6 P3_6;
86
__sbit __at 0xb7 P3_7;
87
 
88
#endif

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.