etisserant@0: /* etisserant@0: This file is part of CanFestival, a library implementing CanOpen Stack. etisserant@0: etisserant@0: Copyright (C): Edouard TISSERANT and Francis DUPIN etisserant@0: etisserant@0: See COPYING file for copyrights details. etisserant@0: etisserant@0: This library is free software; you can redistribute it and/or etisserant@0: modify it under the terms of the GNU Lesser General Public etisserant@0: License as published by the Free Software Foundation; either etisserant@0: version 2.1 of the License, or (at your option) any later version. etisserant@0: etisserant@0: This library is distributed in the hope that it will be useful, etisserant@0: but WITHOUT ANY WARRANTY; without even the implied warranty of etisserant@0: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU etisserant@0: Lesser General Public License for more details. etisserant@0: etisserant@0: You should have received a copy of the GNU Lesser General Public etisserant@0: License along with this library; if not, write to the Free Software etisserant@0: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA etisserant@0: */ etisserant@0: /* etisserant@0: Definition of the i/o ports of the Motorola HCS12 etisserant@0: */ etisserant@0: etisserant@0: /* etisserant@0: On HCS12, ports are maped by default at 0X0000. (see ports.s) etisserant@0: It can also be done at link stage with an option in etisserant@0: command line : for example to map at 0X8000 etisserant@0: --defsym _io_ports8=0X8000 --defsym _io_ports16=0X8000 etisserant@0: Or in the file memory.x : etisserant@0: PROVIDE (_io_ports8 = 0X8000); etisserant@0: PROVIDE (_io_ports16 = 0X8000); etisserant@0: (see portsaccess.h) etisserant@0: I wonder if the value in INITRG must not be changed too etisserant@0: at run time. etisserant@0: */ etisserant@0: etisserant@0: #ifndef __HCS12_PORTS__ etisserant@0: #define __HCS12_PORTS__ etisserant@0: etisserant@0: #define PORTA 0x0000 etisserant@0: #define PORTB 0x0001 etisserant@0: #define DDRA 0x0002 etisserant@0: #define DDRB 0x0003 etisserant@0: etisserant@0: #define PORTE 0x0008 etisserant@0: #define DDRE 0x0009 etisserant@0: #define PEAR 0x000A etisserant@0: #define MODE 0x000B etisserant@0: #define PUCR 0x000C etisserant@0: #define RDRIV 0x000D etisserant@0: #define EBICTL 0x000E etisserant@0: etisserant@0: #define INITRM 0x0010 etisserant@0: #define INITRG 0x0011 etisserant@0: #define INITEE 0x0012 etisserant@0: #define MISC 0x0013 etisserant@0: #define MTST0 0x0014 etisserant@0: #define ITCR 0x0015 etisserant@0: #define ITEST 0x0016 etisserant@0: #define MTST1 0x0017 etisserant@0: etisserant@0: #define PARTIDH 0x001A etisserant@0: #define PARTIDL 0x001B etisserant@0: #define MEMSIZ0 0x001C etisserant@0: #define MEMSIZ1 0x001D etisserant@0: #define INTCR 0x001E etisserant@0: #define HPRIO 0x001F etisserant@0: etisserant@0: #define BKPCT0 0x0028 etisserant@0: #define BKPCT1 0x0029 etisserant@0: #define BKP0X 0x002A etisserant@0: #define BKP0H 0x002B etisserant@0: #define BKP0L 0x002C etisserant@0: #define BKP1X 0x002D etisserant@0: #define BKP1H 0x002E etisserant@0: #define BKP1L 0x002F etisserant@0: #define PPAGE 0x0030 etisserant@0: etisserant@0: #define PORTK 0x0032 etisserant@0: #define DDRK 0x0033 etisserant@0: #define SYNR 0x0034 etisserant@0: #define REFDV 0x0035 etisserant@0: #define CTFLG 0x0036 etisserant@0: #define CRGFLG 0x0037 etisserant@0: #define CRGINT 0x0038 etisserant@0: #define CLKSEL 0x0039 etisserant@0: #define PLLCTL 0x003A etisserant@0: #define RTICTL 0x003B etisserant@0: #define COPCTL 0x003C etisserant@0: #define FORBYP 0x003D etisserant@0: #define CTCTL 0x003E etisserant@0: #define ARMCOP 0x003F etisserant@0: #define TIOS 0x0040 etisserant@0: #define TCFORC 0x0041 etisserant@0: #define TOC7M 0x0042 etisserant@0: #define TOC7D 0x0043 etisserant@0: #define TCNTH 0x0044 etisserant@0: #define TCNTL 0x0045 etisserant@0: #define TSCR1 0x0046 etisserant@0: #define TTOV 0x0047 etisserant@0: #define TCTL1 0x0048 etisserant@0: #define TCTL2 0x0049 etisserant@0: #define TCTL3 0x004A etisserant@0: #define TCTL4 0x004B etisserant@0: #define TIE 0x004C etisserant@0: #define TSCR2 0x004D etisserant@0: #define TFLG1 0x004E etisserant@0: #define TFLG2 0x004F etisserant@0: #define TC0H 0x0050 etisserant@0: #define TC0L 0x0051 etisserant@0: #define TC1H 0x0052 etisserant@0: #define TC1L 0x0053 etisserant@0: #define TC2H 0x0054 etisserant@0: #define TC2L 0x0055 etisserant@0: #define TC3H 0x0056 etisserant@0: #define TC3L 0x0057 etisserant@0: #define TC4H 0x0058 etisserant@0: #define TC4L 0x0059 etisserant@0: #define TC5H 0x005A etisserant@0: #define TC5L 0x005B etisserant@0: #define TC6H 0x005C etisserant@0: #define TC6L 0x005D etisserant@0: #define TC7H 0x005E etisserant@0: #define TC7L 0x005F etisserant@0: #define PACTL 0x0060 etisserant@0: #define PAFLG 0x0061 etisserant@0: #define PACN3H 0x0062 etisserant@0: #define PACN2L 0x0063 etisserant@0: #define PACN1H 0x0064 etisserant@0: #define PACN0L 0x0065 etisserant@0: #define MCCTL 0x0066 etisserant@0: #define MCFLG 0x0067 etisserant@0: #define ICPAR 0x0068 etisserant@0: #define DLYCT 0x0069 etisserant@0: #define ICOVW 0x006A etisserant@0: #define ICSYS 0x006B etisserant@0: etisserant@0: #define TIMTST 0x006D etisserant@0: etisserant@0: #define PBCTL 0x0070 etisserant@0: #define PBFLG 0x0071 etisserant@0: #define PA3H 0x0072 etisserant@0: #define PA2H 0x0073 etisserant@0: #define PA1H 0x0074 etisserant@0: #define PA0H 0x0075 etisserant@0: #define MCCNTH 0x0076 etisserant@0: #define MCCNTL 0x0077 etisserant@0: #define TC0HH 0x0078 etisserant@0: #define TC0HL 0x0079 etisserant@0: #define TC1HH 0x007A etisserant@0: #define TC1HL 0x007B etisserant@0: #define TC2HH 0x007C etisserant@0: #define TC2HL 0x007D etisserant@0: #define TC3HH 0x007E etisserant@0: etisserant@0: #define ATD0CTL0 0x0080 etisserant@0: #define ATD00CTL1 0x0081 etisserant@0: #define ATD0CTL2 0x0082 etisserant@0: #define ATD0CTL3 0x0083 etisserant@0: #define ATD0CTL4 0x0084 etisserant@0: #define ATD0CTL5 0x0085 etisserant@0: #define ATD0STAT0 0x0086 etisserant@0: #define ATD0STAT1 0x0087 etisserant@0: #define ATD0TEST0 0x0088 etisserant@0: #define ATD0TEST1 0x0089 etisserant@0: etisserant@0: #define ATD0DIEN 0x008D etisserant@0: etisserant@0: #define PORTAD0 0x008F etisserant@0: #define ATD0DR0H 0x0090 etisserant@0: #define ATD0DR0L 0x0091 etisserant@0: #define ATD0DR1H 0x0092 etisserant@0: #define ATD0DR1L 0x0093 etisserant@0: #define ATD0DR2H 0x0094 etisserant@0: #define ATD0DR2L 0x0095 etisserant@0: #define ATD0DR3H 0x0096 etisserant@0: #define ATD0DR3L 0x0097 etisserant@0: #define ATD0DR4H 0x0098 etisserant@0: #define ATD0DR4L 0x0099 etisserant@0: #define ATD0DR5H 0x009A etisserant@0: #define ATD0DR5L 0x009B etisserant@0: #define ATD0DR6H 0x009C etisserant@0: #define ATD0DR6L 0x009D etisserant@0: #define ATD0DR7H 0x009E etisserant@0: #define ATD0DR7L 0x009F etisserant@0: #define PWME 0x00A0 etisserant@0: #define PWMPOL 0x00A1 etisserant@0: #define PWMCLK 0x00A2 etisserant@0: #define PWMPRCLK 0x00A3 etisserant@0: #define PWMCAE 0x00A4 etisserant@0: #define PWMCTL 0x00A5 etisserant@0: #define PWMTST 0x00A6 etisserant@0: #define PWMPRSC 0x00A7 etisserant@0: #define PWMSCLA 0x00A8 etisserant@0: #define PWMSCLB 0x00A9 etisserant@0: #define PWMSCNTA 0x00AA etisserant@0: #define PWMSCNTB 0x00AB etisserant@0: #define PWMCNT0 0x00AC etisserant@0: #define PWMCNT1 0x00AD etisserant@0: #define PWMCNT2 0x00AE etisserant@0: #define PWMCNT3 0x00AF etisserant@0: #define PWMCNT4 0x00B0 etisserant@0: #define PWMCNT5 0x00B1 etisserant@0: #define PWMCNT6 0x00B2 etisserant@0: #define PWMCNT7 0x00B3 etisserant@0: #define PWMPER0 0x00B4 etisserant@0: #define PWMPER1 0x00B5 etisserant@0: #define PWMPER2 0x00B6 etisserant@0: #define PWMPER3 0x00B7 etisserant@0: #define PWMPER4 0x00B8 etisserant@0: #define PWMPER5 0x00B9 etisserant@0: #define PWMPER6 0x00BA etisserant@0: #define PWMPER7 0x00BB etisserant@0: #define PWMDTY0 0x00BC etisserant@0: #define PWMDTY1 0x00BD etisserant@0: #define PWMDTY2 0x00BE etisserant@0: #define PWMDTY3 0x00BF etisserant@0: #define PWMDTY4 0x00C0 etisserant@0: #define PWMDTY5 0x00C1 etisserant@0: #define PWMDTY6 0x00C2 etisserant@0: #define PWMDTY7 0x00C3 etisserant@0: #define PWMSDN 0x00C4 etisserant@0: etisserant@0: #define SCI0BDH 0x00C8 etisserant@0: #define SCI0BDL 0x00C9 etisserant@0: #define SC0CR1 0x00CA etisserant@0: #define SCI0CR2 0x00CB etisserant@0: #define SCI0SR1 0x00CC etisserant@0: #define SC0SR2 0x00CD etisserant@0: #define SCI0DRH 0x00CE etisserant@0: #define SCI0DRL 0x00CF etisserant@0: #define SCI1BDH 0x00D0 etisserant@0: #define SCI1BDL 0x00D1 etisserant@0: #define SC1CR1 0x00D2 etisserant@0: #define SCI1CR2 0x00D3 etisserant@0: #define SCI1SR1 0x00D4 etisserant@0: #define SC1SR2 0x00D5 etisserant@0: #define SCI1DRH 0x00D6 etisserant@0: #define SCI1DRL 0x00D7 etisserant@0: #define SPI0CR1 0x00D8 etisserant@0: #define SPI0CR2 0x00D9 etisserant@0: #define SPI0BR 0x00DA etisserant@0: #define SPI0SR 0x00DB etisserant@0: etisserant@0: #define SPI0DR 0x00DD etisserant@0: etisserant@0: #define IBAD 0x00E0 etisserant@0: #define IBFD 0x00E1 etisserant@0: #define IBCR 0x00E2 etisserant@0: #define IBSR 0x00E3 etisserant@0: #define IICDR 0x00E4 etisserant@0: etisserant@0: #define DLCBCR1 0x00E8 etisserant@0: #define DLCBSVR 0x00E9 etisserant@0: #define DLCBCR2 0x00EA etisserant@0: #define DLCBDR 0x00EB etisserant@0: #define DLCBARD 0x00EC etisserant@0: #define DLCBRSR 0x00ED etisserant@0: #define DLCSCR 0x00EE etisserant@0: #define DLCBSTAT 0x00EF etisserant@0: #define SPI1CR1 0x00F0 etisserant@0: #define SPI1CR2 0x00F1 etisserant@0: #define SPI1BR 0x00F2 etisserant@0: #define SPI1SR 0x00F3 etisserant@0: etisserant@0: #define SPI1DR 0x00F5 etisserant@0: etisserant@0: #define SPI2CR1 0x00F8 etisserant@0: #define SPI2CR2 0x00F9 etisserant@0: #define SPI2BR 0x00FA etisserant@0: #define SPI2SR 0x00FB etisserant@0: etisserant@0: #define SPI2DR 0x00FD etisserant@0: etisserant@0: #define FCLKDIV 0x0100 etisserant@0: #define FSEC 0x0101 etisserant@0: etisserant@0: #define FCNFG 0x0103 etisserant@0: #define FPROT 0x0104 etisserant@0: #define FSTAT 0x0105 etisserant@0: #define FCMD 0x0106 etisserant@0: etisserant@0: #define ECLKDIV 0x0110 etisserant@0: etisserant@0: #define ECNFG 0x0113 etisserant@0: #define EPROT 0x0114 etisserant@0: #define ESTAT 0x0115 etisserant@0: #define ECMD 0x0116 etisserant@0: etisserant@0: #define ATD1CTL0 0x0120 etisserant@0: #define ATD1CTL1 0x0121 etisserant@0: #define ATD1CTL2 0x0122 etisserant@0: #define ATD1CTL3 0x0123 etisserant@0: #define ATD1CTL4 0x0124 etisserant@0: #define ATD1CTL5 0x0125 etisserant@0: #define ATD1STAT0 0x0126 etisserant@0: #define ATD1STAT1 0x0127 etisserant@0: #define ATD1TEST0 0x0128 etisserant@0: #define ATD1TEST1 0x0129 etisserant@0: etisserant@0: #define ATDDIEN 0x012D etisserant@0: etisserant@0: #define PORTAD1 0x012F etisserant@0: #define ATD1DR0H 0x0130 etisserant@0: #define ATD1DR0L 0x0131 etisserant@0: #define ATD1DR1H 0x0132 etisserant@0: #define ATD1DR1L 0x0133 etisserant@0: #define ATD1DR2H 0x0134 etisserant@0: #define ATD1DR2L 0x0135 etisserant@0: #define ATD1DR3H 0x0136 etisserant@0: #define ATD1DR3L 0x0137 etisserant@0: #define ATD1DR4H 0x0138 etisserant@0: #define ATD1DR4L 0x0139 etisserant@0: #define ATD1DR5H 0x013A etisserant@0: #define ATD1DR5L 0x013B etisserant@0: #define ATD1DR6H 0x013C etisserant@0: #define ATD1DR6L 0x013D etisserant@0: #define ATD1DR7H 0x013E etisserant@0: #define ATD1DR7L 0x013F etisserant@0: #define CAN0CTL0 0x0140 etisserant@0: #define CAN0CTL1 0x0141 etisserant@0: #define CAN0BTR0 0x0142 etisserant@0: #define CAN0BTR1 0x0143 etisserant@0: #define CAN0RFLG 0x0144 etisserant@0: #define CAN0RIER 0x0145 etisserant@0: #define CAN0TFLG 0x0146 etisserant@0: #define CAN0TIER 0x0147 etisserant@0: #define CAN0TARQ 0x0148 etisserant@0: #define CAN0TAAK 0x0149 etisserant@0: #define CAN0TBSEL 0x014A etisserant@0: #define CAN0IDAC 0x014B etisserant@0: etisserant@0: #define CAN0RXERR 0x014E etisserant@0: #define CAN0TXERR 0x014F etisserant@0: #define CAN0IDAR0 0x0150 etisserant@0: #define CAN0IDAR1 0x0151 etisserant@0: #define CAN0IDAR2 0x0152 etisserant@0: #define CAN0IDAR3 0x0153 etisserant@0: #define CAN0IDMR0 0x0154 etisserant@0: #define CAN0IDMR1 0x0155 etisserant@0: #define CAN0IDMR2 0x0156 etisserant@0: #define CAN0IDMR3 0x0157 etisserant@0: #define CAN0IDAR4 0x0158 etisserant@0: #define CAN0IDAR5 0x0159 etisserant@0: #define CAN0IDAR6 0x015A etisserant@0: #define CAN0IDAR7 0x015B etisserant@0: #define CAN0IDMR4 0x015C etisserant@0: #define CAN0IDMR5 0x015D etisserant@0: #define CAN0IDMR6 0x015E etisserant@0: #define CAN0IDMR7 0x015F etisserant@0: #define CAN0RXFG0 0x0160 etisserant@0: #define CAN0RXFG1 0x0161 etisserant@0: #define CAN0RXFG2 0x0162 etisserant@0: #define CAN0RXFG3 0x0163 etisserant@0: #define CAN0RXFG4 0x0164 etisserant@0: #define CAN0RXFG5 0x0165 etisserant@0: #define CAN0RXFG6 0x0166 etisserant@0: #define CAN0RXFG7 0x0167 etisserant@0: #define CAN0RXFG8 0x0168 etisserant@0: #define CAN0RXFG9 0x0169 etisserant@0: #define CAN0RXFGA 0x016A etisserant@0: #define CAN0RXFGB 0x016B etisserant@0: #define CAN0RXFGC 0x016C etisserant@0: #define CAN0RXFGD 0x016D etisserant@0: #define CAN0RXFGE 0x016E etisserant@0: #define CAN0RXFGF 0x016F etisserant@0: #define CAN0TXFG0 0x0170 etisserant@0: #define CAN0TXFG1 0x0171 etisserant@0: #define CAN0TXFG2 0x0172 etisserant@0: #define CAN0TXFG3 0x0173 etisserant@0: #define CAN0TXFG4 0x0174 etisserant@0: #define CAN0TXFG5 0x0175 etisserant@0: #define CAN0TXFG6 0x0176 etisserant@0: #define CAN0TXFG7 0x0177 etisserant@0: #define CAN0TXFG8 0x0178 etisserant@0: #define CAN0TXFG9 0x0179 etisserant@0: #define CAN0TXFGA 0x017A etisserant@0: #define CAN0TXFGB 0x017B etisserant@0: #define CAN0TXFGC 0x017C etisserant@0: #define CAN0TXFGD 0x017D etisserant@0: #define CAN0TXFGE 0x017E etisserant@0: #define CAN0TXFGF 0x017F etisserant@0: etisserant@0: #define CAN1CTL0 0x0180 etisserant@0: #define CAN1CTL1 0x0181 etisserant@0: #define CAN1BTR0 0x0182 etisserant@0: #define CAN1BTR1 0x0183 etisserant@0: #define CAN1RFLG 0x0184 etisserant@0: #define CAN1RIER 0x0185 etisserant@0: #define CAN1TFLG 0x0186 etisserant@0: #define CAN1TIER 0x0187 etisserant@0: #define CAN1TARQ 0x0188 etisserant@0: #define CAN1TAAK 0x0189 etisserant@0: #define CAN1TBSEL 0x018A etisserant@0: #define CAN1IDAC 0x018B etisserant@0: #define CAN1RXERR 0x018E etisserant@0: #define CAN1TXERR 0x018F etisserant@0: #define CAN1IDAR0 0x0190 etisserant@0: #define CAN1IDAR1 0x0191 etisserant@0: #define CAN1IDAR2 0x0192 etisserant@0: #define CAN1IDAR3 0x0193 etisserant@0: #define CAN1IDMR0 0x0194 etisserant@0: #define CAN1IDMR1 0x0195 etisserant@0: #define CAN1IDMR2 0x0196 etisserant@0: #define CAN1IDMR3 0x0197 etisserant@0: #define CAN1IDAR4 0x0198 etisserant@0: #define CAN1IDAR5 0x0199 etisserant@0: #define CAN1IDAR6 0x019A etisserant@0: #define CAN1IDAR7 0x019B etisserant@0: #define CAN1IDMR4 0x019C etisserant@0: #define CAN1IDMR5 0x019D etisserant@0: #define CAN1IDMR6 0x019E etisserant@0: #define CAN1IDMR7 0x019F etisserant@0: etisserant@0: #define CAN1RXFG0 0x01A0 etisserant@0: #define CAN1RXFG1 0x01A1 etisserant@0: #define CAN1RXFG2 0x01A2 etisserant@0: #define CAN1RXFG3 0x01A3 etisserant@0: #define CAN1RXFG4 0x01A4 etisserant@0: #define CAN1RXFG5 0x01A5 etisserant@0: #define CAN1RXFG6 0x01A6 etisserant@0: #define CAN1RXFG7 0x01A7 etisserant@0: #define CAN1RXFG8 0x01A8 etisserant@0: #define CAN1RXFG9 0x01A9 etisserant@0: #define CAN1RXFGA 0x01AA etisserant@0: #define CAN1RXFGB 0x01AB etisserant@0: #define CAN1RXFGC 0x01AC etisserant@0: #define CAN1RXFGD 0x01AD etisserant@0: #define CAN1RXFGE 0x01AE etisserant@0: #define CAN1RXFGF 0x01AF etisserant@0: #define CAN1TXFG0 0x01B0 etisserant@0: #define CAN1TXFG1 0x01B1 etisserant@0: #define CAN1TXFG2 0x01B2 etisserant@0: #define CAN1TXFG3 0x01B3 etisserant@0: #define CAN1TXFG4 0x01B4 etisserant@0: #define CAN1TXFG5 0x01B5 etisserant@0: #define CAN1TXFG6 0x01B6 etisserant@0: #define CAN1TXFG7 0x01B7 etisserant@0: #define CAN1TXFG8 0x01B8 etisserant@0: #define CAN1TXFG9 0x01B9 etisserant@0: #define CAN1TXFGA 0x01BA etisserant@0: #define CAN1TXFGB 0x01BB etisserant@0: #define CAN1TXFGC 0x01BC etisserant@0: #define CAN1TXFGD 0x01BD etisserant@0: #define CAN1TXFGE 0x01BE etisserant@0: #define CAN1TXFGF 0x01BF etisserant@0: #define CAN2CTL0 0x01C0 etisserant@0: #define CAN2CTL1 0x01C1 etisserant@0: #define CAN2BTR0 0x01C2 etisserant@0: #define CAN2BTR1 0x01C3 etisserant@0: #define CAN2RFLG 0x01C4 etisserant@0: #define CAN2RIER 0x01C5 etisserant@0: #define CAN2TFLG 0x01C6 etisserant@0: #define CAN2TIER 0x01C7 etisserant@0: #define CAN2TARQ 0x01C8 etisserant@0: #define CAN2TAAK 0x01C9 etisserant@0: #define CAN2TBSEL 0x01CA etisserant@0: #define CAN2IDAC 0x01CB etisserant@0: etisserant@0: #define CAN2RXERR 0x01CE etisserant@0: #define CAN2TXERR 0x01CF etisserant@0: #define CAN2IDAR0 0x01D0 etisserant@0: #define CAN2IDAR1 0x01D1 etisserant@0: #define CAN2IDAR2 0x01D2 etisserant@0: #define CAN2IDAR3 0x01D3 etisserant@0: #define CAN2IDMR0 0x01D4 etisserant@0: #define CAN2IDMR1 0x01D5 etisserant@0: #define CAN2IDMR2 0x01D6 etisserant@0: #define CAN2IDMR3 0x01D7 etisserant@0: #define CAN2IDAR4 0x01D8 etisserant@0: #define CAN2IDAR5 0x01D9 etisserant@0: #define CAN2IDAR6 0x01DA etisserant@0: #define CAN2IDAR7 0x01DB etisserant@0: #define CAN2IDMR4 0x01DC etisserant@0: #define CAN2IDMR5 0x01DD etisserant@0: #define CAN2IDMR6 0x01DE etisserant@0: #define CAN2IDMR7 0x01DF etisserant@0: #define CAN2RXFG0 0x01E0 etisserant@0: #define CAN2RXFG1 0x01E1 etisserant@0: #define CAN2RXFG2 0x01E2 etisserant@0: #define CAN2RXFG3 0x01E3 etisserant@0: #define CAN2RXFG4 0x01E4 etisserant@0: #define CAN2RXFG5 0x01E5 etisserant@0: #define CAN2RXFG6 0x01E6 etisserant@0: #define CAN2RXFG7 0x01E7 etisserant@0: #define CAN2RXFG8 0x01E8 etisserant@0: #define CAN2RXFG9 0x01E9 etisserant@0: #define CAN2RXFGA 0x01EA etisserant@0: #define CAN2RXFGB 0x01EB etisserant@0: #define CAN2RXFGC 0x01EC etisserant@0: #define CAN2RXFGD 0x01ED etisserant@0: #define CAN2RXFGE 0x01EE etisserant@0: #define CAN2RXFGF 0x01EF etisserant@0: #define CAN2TXFG0 0x01F0 etisserant@0: #define CAN2TXFG1 0x01F1 etisserant@0: #define CAN2TXFG2 0x01F2 etisserant@0: #define CAN2TXFG3 0x01F3 etisserant@0: #define CAN2TXFG4 0x01F4 etisserant@0: #define CAN2TXFG5 0x01F5 etisserant@0: #define CAN2TXFG6 0x01F6 etisserant@0: #define CAN2TXFG7 0x01F7 etisserant@0: #define CAN2TXFG8 0x01F8 etisserant@0: #define CAN2TXFG9 0x01F9 etisserant@0: #define CAN2TXFGA 0x01FA etisserant@0: #define CAN2TXFGB 0x01FB etisserant@0: #define CAN2TXFGC 0x01FC etisserant@0: #define CAN2TXFGD 0x01FD etisserant@0: #define CAN2TXFGE 0x01FE etisserant@0: #define CAN2TXFGF 0x01FF etisserant@0: etisserant@0: #define CAN3CTL0 0x0200 etisserant@0: #define CAN3CTL1 0x0201 etisserant@0: #define CAN3BTR0 0x0202 etisserant@0: #define CAN3BTR1 0x0203 etisserant@0: #define CAN3RFLG 0x0204 etisserant@0: #define CAN3RIER 0x0205 etisserant@0: #define CAN3TFLG 0x0206 etisserant@0: #define CAN3TIER 0x0207 etisserant@0: #define CAN3TARQ 0x0208 etisserant@0: #define CAN3TAAK 0x0209 etisserant@0: #define CAN3TBSEL 0x020A etisserant@0: #define CAN3IDAC 0x020B etisserant@0: etisserant@0: #define CAN3RXERR 0x020E etisserant@0: #define CAN3TXERR 0x020F etisserant@0: #define CAN3IDAR0 0x0210 etisserant@0: #define CAN3IDAR1 0x0211 etisserant@0: #define CAN3IDAR2 0x0212 etisserant@0: #define CAN3IDAR3 0x0213 etisserant@0: #define CAN3IDMR0 0x0214 etisserant@0: #define CAN3IDMR1 0x0215 etisserant@0: #define CAN3IDMR2 0x0216 etisserant@0: #define CAN3IDMR3 0x0217 etisserant@0: #define CAN3IDAR4 0x0218 etisserant@0: #define CAN3IDAR5 0x0219 etisserant@0: #define CAN3IDAR6 0x021A etisserant@0: #define CAN3IDAR7 0x021B etisserant@0: #define CAN3IDMR4 0x021C etisserant@0: #define CAN3IDMR5 0x021D etisserant@0: #define CAN3IDMR6 0x021E etisserant@0: #define CAN3IDMR7 0x021F etisserant@0: etisserant@0: #define CAN3RXFG0 0x0220 etisserant@0: #define CAN3RXFG1 0x0221 etisserant@0: #define CAN3RXFG2 0x0222 etisserant@0: #define CAN3RXFG3 0x0223 etisserant@0: #define CAN3RXFG4 0x0224 etisserant@0: #define CAN3RXFG5 0x0225 etisserant@0: #define CAN3RXFG6 0x0226 etisserant@0: #define CAN3RXFG7 0x0227 etisserant@0: #define CAN3RXFG8 0x0228 etisserant@0: #define CAN3RXFG9 0x0229 etisserant@0: #define CAN3RXFGA 0x022A etisserant@0: #define CAN3RXFGB 0x022B etisserant@0: #define CAN3RXFGC 0x022C etisserant@0: #define CAN3RXFGD 0x022D etisserant@0: #define CAN3RXFGE 0x022E etisserant@0: #define CAN3RXFGF 0x022F etisserant@0: #define CAN3TXFG0 0x0230 etisserant@0: #define CAN3TXFG1 0x0231 etisserant@0: #define CAN3TXFG2 0x0232 etisserant@0: #define CAN3TXFG3 0x0233 etisserant@0: #define CAN3TXFG4 0x0234 etisserant@0: #define CAN3TXFG5 0x0235 etisserant@0: #define CAN3TXFG6 0x0236 etisserant@0: #define CAN3TXFG7 0x0237 etisserant@0: #define CAN3TXFG8 0x0238 etisserant@0: #define CAN3TXFG9 0x0239 etisserant@0: #define CAN3TXFGA 0x023A etisserant@0: #define CAN3TXFGB 0x023B etisserant@0: #define CAN3TXFGC 0x023C etisserant@0: #define CAN3TXFGD 0x023D etisserant@0: #define CAN3TXFGE 0x023E etisserant@0: #define CAN3TXFGF 0x023F etisserant@0: etisserant@0: #define PTT 0x0240 etisserant@0: #define PTIT 0x0241 etisserant@0: #define DDRT 0x0242 etisserant@0: #define RDRT 0x0243 etisserant@0: #define PERT 0x0244 etisserant@0: #define PPST 0x0245 etisserant@0: etisserant@0: #define PTS 0x0248 etisserant@0: #define PTIS 0x0249 etisserant@0: #define DDRS 0x024A etisserant@0: #define RDRS 0x024B etisserant@0: #define PERS 0x024C etisserant@0: #define PPSS 0x024D etisserant@0: #define WOMS 0x024E etisserant@0: etisserant@0: #define PTM 0x0250 etisserant@0: #define PTIM 0x0251 etisserant@0: #define DDRM 0x0252 etisserant@0: #define RDRM 0x0253 etisserant@0: #define PERM 0x0254 etisserant@0: #define PPSM 0x0255 etisserant@0: #define WOMM 0x0256 etisserant@0: etisserant@0: #define PTP 0x0258 etisserant@0: #define PTIP 0x0259 etisserant@0: #define DDRP 0x025A etisserant@0: #define RDRP 0x025B etisserant@0: #define PERP 0x025C etisserant@0: #define PPSP 0x025D etisserant@0: #define PIEP 0x025E etisserant@0: #define PIFP 0x025F etisserant@0: #define PTH 0x0260 etisserant@0: #define PTIH 0x0261 etisserant@0: #define DDRH 0x0262 etisserant@0: #define RDRH 0x0263 etisserant@0: #define PERH 0x0264 etisserant@0: #define PPSH 0x0265 etisserant@0: #define PIEH 0x0266 etisserant@0: #define PIFH 0x0267 etisserant@0: #define PTJ 0x0268 etisserant@0: #define PTIJ 0x0269 etisserant@0: #define DDRJ 0x026A etisserant@0: #define RDRJ 0x026B etisserant@0: #define PERJ 0x026C etisserant@0: #define PPSJ 0x026D etisserant@0: #define PIEJ 0x026E etisserant@0: #define PIFJ 0x026F etisserant@0: etisserant@0: #define CAN4CTL0 0x0280 etisserant@0: #define CAN4CTL1 0x0281 etisserant@0: #define CAN4BTR0 0x0282 etisserant@0: #define CAN4BTR1 0x0283 etisserant@0: #define CAN4RFLG 0x0284 etisserant@0: #define CAN4RIER 0x0285 etisserant@0: #define CAN4TFLG 0x0286 etisserant@0: #define CAN4TIER 0x0287 etisserant@0: #define CAN4TARQ 0x0288 etisserant@0: #define CAN4TAAK 0x0289 etisserant@0: #define CAN4TBSEL 0x028A etisserant@0: #define CAN4IDAC 0x028B etisserant@0: etisserant@0: #define CAN4RXERR 0x028E etisserant@0: #define CAN4TXERR 0x028F etisserant@0: #define CAN4IDAR0 0x0290 etisserant@0: #define CAN4IDAR1 0x0291 etisserant@0: #define CAN4IDAR2 0x0292 etisserant@0: #define CAN4IDAR3 0x0293 etisserant@0: #define CAN4IDMR0 0x0294 etisserant@0: #define CAN4IDMR1 0x0295 etisserant@0: #define CAN4IDMR2 0x0296 etisserant@0: #define CAN4IDMR3 0x0297 etisserant@0: #define CAN4IDAR4 0x0298 etisserant@0: #define CAN4IDAR5 0x0299 etisserant@0: #define CAN4IDAR6 0x029A etisserant@0: #define CAN4IDAR7 0x029B etisserant@0: #define CAN4IDMR4 0x029C etisserant@0: #define CAN4IDMR5 0x029D etisserant@0: #define CAN4IDMR6 0x029E etisserant@0: #define CAN4IDMR7 0x029F etisserant@0: etisserant@0: #define CAN4RXFG0 0x02A0 etisserant@0: #define CAN4RXFG1 0x02A1 etisserant@0: #define CAN4RXFG2 0x02A2 etisserant@0: #define CAN4RXFG3 0x02A3 etisserant@0: #define CAN4RXFG4 0x02A4 etisserant@0: #define CAN4RXFG5 0x02A5 etisserant@0: #define CAN4RXFG6 0x02A6 etisserant@0: #define CAN4RXFG7 0x02A7 etisserant@0: #define CAN4RXFG8 0x02A8 etisserant@0: #define CAN4RXFG9 0x02A9 etisserant@0: #define CAN4RXFGA 0x02AA etisserant@0: #define CAN4RXFGB 0x02AB etisserant@0: #define CAN4RXFGC 0x02AC etisserant@0: #define CAN4RXFGD 0x02AD etisserant@0: #define CAN4RXFGE 0x02AE etisserant@0: #define CAN4RXFGF 0x02AF etisserant@0: #define CAN4TXFG0 0x02B0 etisserant@0: #define CAN4TXFG1 0x02B1 etisserant@0: #define CAN4TXFG2 0x02B2 etisserant@0: #define CAN4TXFG3 0x02B3 etisserant@0: #define CAN4TXFG4 0x02B4 etisserant@0: #define CAN4TXFG5 0x02B5 etisserant@0: #define CAN4TXFG6 0x02B6 etisserant@0: #define CAN4TXFG7 0x02B7 etisserant@0: #define CAN4TXFG8 0x02B8 etisserant@0: #define CAN4TXFG9 0x02B9 etisserant@0: #define CAN4TXFGA 0x02BA etisserant@0: #define CAN4TXFGB 0x02BB etisserant@0: #define CAN4TXFGC 0x02BC etisserant@0: #define CAN4TXFGD 0x02BD etisserant@0: #define CAN4TXFGE 0x02BE etisserant@0: #define CAN4TXFGF 0x02BF etisserant@0: etisserant@0: etisserant@0: etisserant@0: /*********************************************** etisserant@0: Constants for MSCAN etisserant@0: ************************************************ etisserant@0: */ etisserant@0: etisserant@0: #define CAN0 0x0140 /* First address for MSCAN0 */ etisserant@0: #define CAN1 0x0180 /* First address for MSCAN1 */ etisserant@0: #define CAN2 0x01C0 /* First address for MSCAN2 */ etisserant@0: #define CAN3 0x0200 /* First address for MSCAN3 */ etisserant@0: #define CAN4 0x0280 /* First address for MSCAN4 */ etisserant@0: etisserant@0: #define CANCTL0 0X00 /* Control register 0 */ etisserant@0: #define CANCTL1 0X01 /* Control register 1 */ etisserant@0: #define CANBTR0 0X02 /* Bus timing register 0 */ etisserant@0: #define CANBTR1 0X03 /* Bus timing register 1 */ etisserant@0: #define CANRFLG 0X04 /* Receiver flag register */ etisserant@0: #define CANRIER 0X05 /* Enable interruptions when reception */ etisserant@0: #define CANTFLG 0X06 /* Transmit flag register */ etisserant@0: #define CANTIER 0X07 /* Enable interruptions when transmission */ etisserant@0: #define CANTBSEL 0X0A /* Select foreground buffer for transmit */ etisserant@0: #define CANIDAC 0x0B /* Identifier acceptance control register */ etisserant@0: #define CANIDAR0 0x10 etisserant@0: #define CANIDAR1 0x11 etisserant@0: #define CANIDAR2 0x12 etisserant@0: #define CANIDAR3 0x13 etisserant@0: #define CANIDMR0 0x14 etisserant@0: #define CANIDMR1 0x15 etisserant@0: #define CANIDMR2 0x16 etisserant@0: #define CANIDMR3 0x17 etisserant@0: #define CANIDAR4 0x18 etisserant@0: #define CANIDAR5 0x19 etisserant@0: #define CANIDAR6 0x1A etisserant@0: #define CANIDAR7 0x1B etisserant@0: #define CANIDMR4 0x1C etisserant@0: #define CANIDMR5 0x1D etisserant@0: #define CANIDMR6 0x1E etisserant@0: #define CANIDMR7 0x1F etisserant@0: etisserant@0: /* Received foreground buffer */ etisserant@0: #define CANRCVID 0x20 /* Base of identifier registers */ etisserant@0: #define CANRCVDTA 0x24 /* Base of data registers */ etisserant@0: #define CANRCVLEN 0x2C /* Data length register */ etisserant@0: etisserant@0: /* Transmit foreground buffer */ etisserant@0: #define CANTRSID 0x30 /* Base of identifier registers */ etisserant@0: #define CANTRSDTA 0x34 /* Base of data registers */ etisserant@0: #define CANTRSLEN 0x3C /* Data length register */ etisserant@0: #define CANTRSPRI 0x3D /* Priority register */ etisserant@0: etisserant@0: etisserant@0: /* Constants for serials port */ etisserant@0: #define SCI0 0x00C8 etisserant@0: #define SCI1 0x00D0 etisserant@0: etisserant@0: #define SCIBDH 0x00 etisserant@0: #define SCIBDL 0x01 etisserant@0: #define SCICR1 0x02 etisserant@0: #define SCICR2 0x03 etisserant@0: #define SCISR1 0x04 etisserant@0: #define SCISR2 0x05 etisserant@0: #define SCIDRH 0x06 etisserant@0: #define SCIDRL 0x07 etisserant@0: etisserant@0: etisserant@0: #endif /* __HCS12_PORTS__ */ etisserant@0: etisserant@0: etisserant@0: etisserant@0: etisserant@0: etisserant@0: etisserant@0: etisserant@0: etisserant@0: etisserant@0: etisserant@0: