nico@207: nico@207:
nico@207:00001 /* nico@207: 00002 This file is part of CanFestival, a library implementing CanOpen Stack. nico@207: 00003 nico@207: 00004 Copyright (C): Edouard TISSERANT and Francis DUPIN nico@207: 00005 nico@207: 00006 See COPYING file for copyrights details. nico@207: 00007 nico@207: 00008 This library is free software; you can redistribute it and/or nico@207: 00009 modify it under the terms of the GNU Lesser General Public nico@207: 00010 License as published by the Free Software Foundation; either nico@207: 00011 version 2.1 of the License, or (at your option) any later version. nico@207: 00012 nico@207: 00013 This library is distributed in the hope that it will be useful, nico@207: 00014 but WITHOUT ANY WARRANTY; without even the implied warranty of nico@207: 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU nico@207: 00016 Lesser General Public License for more details. nico@207: 00017 nico@207: 00018 You should have received a copy of the GNU Lesser General Public nico@207: 00019 License along with this library; if not, write to the Free Software nico@207: 00020 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA nico@207: 00021 */ nico@207: 00022 /* nico@207: 00023 Definition of the i/o ports of the Motorola HCS12 nico@207: 00024 */ nico@207: 00025 nico@207: 00026 /* nico@207: 00027 On HCS12, ports are maped by default at 0X0000. (see ports.s) nico@207: 00028 It can also be done at link stage with an option in nico@207: 00029 command line : for example to map at 0X8000 nico@207: 00030 --defsym _io_ports8=0X8000 --defsym _io_ports16=0X8000 nico@207: 00031 Or in the file memory.x : nico@207: 00032 PROVIDE (_io_ports8 = 0X8000); nico@207: 00033 PROVIDE (_io_ports16 = 0X8000); nico@207: 00034 (see portsaccess.h) nico@207: 00035 I wonder if the value in INITRG must not be changed too nico@207: 00036 at run time. nico@207: 00037 */ nico@207: 00038 nico@207: 00039 #ifndef __HCS12_PORTS__ nico@207: 00040 #define __HCS12_PORTS__ nico@207: 00041 nico@207: 00042 #define PORTA 0x0000 nico@207: 00043 #define PORTB 0x0001 nico@207: 00044 #define DDRA 0x0002 nico@207: 00045 #define DDRB 0x0003 nico@207: 00046 nico@207: 00047 #define PORTE 0x0008 nico@207: 00048 #define DDRE 0x0009 nico@207: 00049 #define PEAR 0x000A nico@207: 00050 #define MODE 0x000B nico@207: 00051 #define PUCR 0x000C nico@207: 00052 #define RDRIV 0x000D nico@207: 00053 #define EBICTL 0x000E nico@207: 00054 nico@207: 00055 #define INITRM 0x0010 nico@207: 00056 #define INITRG 0x0011 nico@207: 00057 #define INITEE 0x0012 nico@207: 00058 #define MISC 0x0013 nico@207: 00059 #define MTST0 0x0014 nico@207: 00060 #define ITCR 0x0015 nico@207: 00061 #define ITEST 0x0016 nico@207: 00062 #define MTST1 0x0017 nico@207: 00063 nico@207: 00064 #define PARTIDH 0x001A nico@207: 00065 #define PARTIDL 0x001B nico@207: 00066 #define MEMSIZ0 0x001C nico@207: 00067 #define MEMSIZ1 0x001D nico@207: 00068 #define INTCR 0x001E nico@207: 00069 #define HPRIO 0x001F nico@207: 00070 nico@207: 00071 #define BKPCT0 0x0028 nico@207: 00072 #define BKPCT1 0x0029 nico@207: 00073 #define BKP0X 0x002A nico@207: 00074 #define BKP0H 0x002B nico@207: 00075 #define BKP0L 0x002C nico@207: 00076 #define BKP1X 0x002D nico@207: 00077 #define BKP1H 0x002E nico@207: 00078 #define BKP1L 0x002F nico@207: 00079 #define PPAGE 0x0030 nico@207: 00080 nico@207: 00081 #define PORTK 0x0032 nico@207: 00082 #define DDRK 0x0033 nico@207: 00083 #define SYNR 0x0034 nico@207: 00084 #define REFDV 0x0035 nico@207: 00085 #define CTFLG 0x0036 nico@207: 00086 #define CRGFLG 0x0037 nico@207: 00087 #define CRGINT 0x0038 nico@207: 00088 #define CLKSEL 0x0039 nico@207: 00089 #define PLLCTL 0x003A nico@207: 00090 #define RTICTL 0x003B nico@207: 00091 #define COPCTL 0x003C nico@207: 00092 #define FORBYP 0x003D nico@207: 00093 #define CTCTL 0x003E nico@207: 00094 #define ARMCOP 0x003F nico@207: 00095 #define TIOS 0x0040 nico@207: 00096 #define TCFORC 0x0041 nico@207: 00097 #define TOC7M 0x0042 nico@207: 00098 #define TOC7D 0x0043 nico@207: 00099 #define TCNTH 0x0044 nico@207: 00100 #define TCNTL 0x0045 nico@207: 00101 #define TSCR1 0x0046 nico@207: 00102 #define TTOV 0x0047 nico@207: 00103 #define TCTL1 0x0048 nico@207: 00104 #define TCTL2 0x0049 nico@207: 00105 #define TCTL3 0x004A nico@207: 00106 #define TCTL4 0x004B nico@207: 00107 #define TIE 0x004C nico@207: 00108 #define TSCR2 0x004D nico@207: 00109 #define TFLG1 0x004E nico@207: 00110 #define TFLG2 0x004F nico@207: 00111 #define TC0H 0x0050 nico@207: 00112 #define TC0L 0x0051 nico@207: 00113 #define TC1H 0x0052 nico@207: 00114 #define TC1L 0x0053 nico@207: 00115 #define TC2H 0x0054 nico@207: 00116 #define TC2L 0x0055 nico@207: 00117 #define TC3H 0x0056 nico@207: 00118 #define TC3L 0x0057 nico@207: 00119 #define TC4H 0x0058 nico@207: 00120 #define TC4L 0x0059 nico@207: 00121 #define TC5H 0x005A nico@207: 00122 #define TC5L 0x005B nico@207: 00123 #define TC6H 0x005C nico@207: 00124 #define TC6L 0x005D nico@207: 00125 #define TC7H 0x005E nico@207: 00126 #define TC7L 0x005F nico@207: 00127 #define PACTL 0x0060 nico@207: 00128 #define PAFLG 0x0061 nico@207: 00129 #define PACN3H 0x0062 nico@207: 00130 #define PACN2L 0x0063 nico@207: 00131 #define PACN1H 0x0064 nico@207: 00132 #define PACN0L 0x0065 nico@207: 00133 #define MCCTL 0x0066 nico@207: 00134 #define MCFLG 0x0067 nico@207: 00135 #define ICPAR 0x0068 nico@207: 00136 #define DLYCT 0x0069 nico@207: 00137 #define ICOVW 0x006A nico@207: 00138 #define ICSYS 0x006B nico@207: 00139 nico@207: 00140 #define TIMTST 0x006D nico@207: 00141 nico@207: 00142 #define PBCTL 0x0070 nico@207: 00143 #define PBFLG 0x0071 nico@207: 00144 #define PA3H 0x0072 nico@207: 00145 #define PA2H 0x0073 nico@207: 00146 #define PA1H 0x0074 nico@207: 00147 #define PA0H 0x0075 nico@207: 00148 #define MCCNTH 0x0076 nico@207: 00149 #define MCCNTL 0x0077 nico@207: 00150 #define TC0HH 0x0078 nico@207: 00151 #define TC0HL 0x0079 nico@207: 00152 #define TC1HH 0x007A nico@207: 00153 #define TC1HL 0x007B nico@207: 00154 #define TC2HH 0x007C nico@207: 00155 #define TC2HL 0x007D nico@207: 00156 #define TC3HH 0x007E nico@207: 00157 nico@207: 00158 #define ATD0CTL0 0x0080 nico@207: 00159 #define ATD00CTL1 0x0081 nico@207: 00160 #define ATD0CTL2 0x0082 nico@207: 00161 #define ATD0CTL3 0x0083 nico@207: 00162 #define ATD0CTL4 0x0084 nico@207: 00163 #define ATD0CTL5 0x0085 nico@207: 00164 #define ATD0STAT0 0x0086 nico@207: 00165 #define ATD0STAT1 0x0087 nico@207: 00166 #define ATD0TEST0 0x0088 nico@207: 00167 #define ATD0TEST1 0x0089 nico@207: 00168 nico@207: 00169 #define ATD0DIEN 0x008D nico@207: 00170 nico@207: 00171 #define PORTAD0 0x008F nico@207: 00172 #define ATD0DR0H 0x0090 nico@207: 00173 #define ATD0DR0L 0x0091 nico@207: 00174 #define ATD0DR1H 0x0092 nico@207: 00175 #define ATD0DR1L 0x0093 nico@207: 00176 #define ATD0DR2H 0x0094 nico@207: 00177 #define ATD0DR2L 0x0095 nico@207: 00178 #define ATD0DR3H 0x0096 nico@207: 00179 #define ATD0DR3L 0x0097 nico@207: 00180 #define ATD0DR4H 0x0098 nico@207: 00181 #define ATD0DR4L 0x0099 nico@207: 00182 #define ATD0DR5H 0x009A nico@207: 00183 #define ATD0DR5L 0x009B nico@207: 00184 #define ATD0DR6H 0x009C nico@207: 00185 #define ATD0DR6L 0x009D nico@207: 00186 #define ATD0DR7H 0x009E nico@207: 00187 #define ATD0DR7L 0x009F nico@207: 00188 #define PWME 0x00A0 nico@207: 00189 #define PWMPOL 0x00A1 nico@207: 00190 #define PWMCLK 0x00A2 nico@207: 00191 #define PWMPRCLK 0x00A3 nico@207: 00192 #define PWMCAE 0x00A4 nico@207: 00193 #define PWMCTL 0x00A5 nico@207: 00194 #define PWMTST 0x00A6 nico@207: 00195 #define PWMPRSC 0x00A7 nico@207: 00196 #define PWMSCLA 0x00A8 nico@207: 00197 #define PWMSCLB 0x00A9 nico@207: 00198 #define PWMSCNTA 0x00AA nico@207: 00199 #define PWMSCNTB 0x00AB nico@207: 00200 #define PWMCNT0 0x00AC nico@207: 00201 #define PWMCNT1 0x00AD nico@207: 00202 #define PWMCNT2 0x00AE nico@207: 00203 #define PWMCNT3 0x00AF nico@207: 00204 #define PWMCNT4 0x00B0 nico@207: 00205 #define PWMCNT5 0x00B1 nico@207: 00206 #define PWMCNT6 0x00B2 nico@207: 00207 #define PWMCNT7 0x00B3 nico@207: 00208 #define PWMPER0 0x00B4 nico@207: 00209 #define PWMPER1 0x00B5 nico@207: 00210 #define PWMPER2 0x00B6 nico@207: 00211 #define PWMPER3 0x00B7 nico@207: 00212 #define PWMPER4 0x00B8 nico@207: 00213 #define PWMPER5 0x00B9 nico@207: 00214 #define PWMPER6 0x00BA nico@207: 00215 #define PWMPER7 0x00BB nico@207: 00216 #define PWMDTY0 0x00BC nico@207: 00217 #define PWMDTY1 0x00BD nico@207: 00218 #define PWMDTY2 0x00BE nico@207: 00219 #define PWMDTY3 0x00BF nico@207: 00220 #define PWMDTY4 0x00C0 nico@207: 00221 #define PWMDTY5 0x00C1 nico@207: 00222 #define PWMDTY6 0x00C2 nico@207: 00223 #define PWMDTY7 0x00C3 nico@207: 00224 #define PWMSDN 0x00C4 nico@207: 00225 nico@207: 00226 #define SCI0BDH 0x00C8 nico@207: 00227 #define SCI0BDL 0x00C9 nico@207: 00228 #define SC0CR1 0x00CA nico@207: 00229 #define SCI0CR2 0x00CB nico@207: 00230 #define SCI0SR1 0x00CC nico@207: 00231 #define SC0SR2 0x00CD nico@207: 00232 #define SCI0DRH 0x00CE nico@207: 00233 #define SCI0DRL 0x00CF nico@207: 00234 #define SCI1BDH 0x00D0 nico@207: 00235 #define SCI1BDL 0x00D1 nico@207: 00236 #define SC1CR1 0x00D2 nico@207: 00237 #define SCI1CR2 0x00D3 nico@207: 00238 #define SCI1SR1 0x00D4 nico@207: 00239 #define SC1SR2 0x00D5 nico@207: 00240 #define SCI1DRH 0x00D6 nico@207: 00241 #define SCI1DRL 0x00D7 nico@207: 00242 #define SPI0CR1 0x00D8 nico@207: 00243 #define SPI0CR2 0x00D9 nico@207: 00244 #define SPI0BR 0x00DA nico@207: 00245 #define SPI0SR 0x00DB nico@207: 00246 nico@207: 00247 #define SPI0DR 0x00DD nico@207: 00248 nico@207: 00249 #define IBAD 0x00E0 nico@207: 00250 #define IBFD 0x00E1 nico@207: 00251 #define IBCR 0x00E2 nico@207: 00252 #define IBSR 0x00E3 nico@207: 00253 #define IICDR 0x00E4 nico@207: 00254 nico@207: 00255 #define DLCBCR1 0x00E8 nico@207: 00256 #define DLCBSVR 0x00E9 nico@207: 00257 #define DLCBCR2 0x00EA nico@207: 00258 #define DLCBDR 0x00EB nico@207: 00259 #define DLCBARD 0x00EC nico@207: 00260 #define DLCBRSR 0x00ED nico@207: 00261 #define DLCSCR 0x00EE nico@207: 00262 #define DLCBSTAT 0x00EF nico@207: 00263 #define SPI1CR1 0x00F0 nico@207: 00264 #define SPI1CR2 0x00F1 nico@207: 00265 #define SPI1BR 0x00F2 nico@207: 00266 #define SPI1SR 0x00F3 nico@207: 00267 nico@207: 00268 #define SPI1DR 0x00F5 nico@207: 00269 nico@207: 00270 #define SPI2CR1 0x00F8 nico@207: 00271 #define SPI2CR2 0x00F9 nico@207: 00272 #define SPI2BR 0x00FA nico@207: 00273 #define SPI2SR 0x00FB nico@207: 00274 nico@207: 00275 #define SPI2DR 0x00FD nico@207: 00276 nico@207: 00277 #define FCLKDIV 0x0100 nico@207: 00278 #define FSEC 0x0101 nico@207: 00279 nico@207: 00280 #define FCNFG 0x0103 nico@207: 00281 #define FPROT 0x0104 nico@207: 00282 #define FSTAT 0x0105 nico@207: 00283 #define FCMD 0x0106 nico@207: 00284 nico@207: 00285 #define ECLKDIV 0x0110 nico@207: 00286 nico@207: 00287 #define ECNFG 0x0113 nico@207: 00288 #define EPROT 0x0114 nico@207: 00289 #define ESTAT 0x0115 nico@207: 00290 #define ECMD 0x0116 nico@207: 00291 nico@207: 00292 #define ATD1CTL0 0x0120 nico@207: 00293 #define ATD1CTL1 0x0121 nico@207: 00294 #define ATD1CTL2 0x0122 nico@207: 00295 #define ATD1CTL3 0x0123 nico@207: 00296 #define ATD1CTL4 0x0124 nico@207: 00297 #define ATD1CTL5 0x0125 nico@207: 00298 #define ATD1STAT0 0x0126 nico@207: 00299 #define ATD1STAT1 0x0127 nico@207: 00300 #define ATD1TEST0 0x0128 nico@207: 00301 #define ATD1TEST1 0x0129 nico@207: 00302 nico@207: 00303 #define ATDDIEN 0x012D nico@207: 00304 nico@207: 00305 #define PORTAD1 0x012F nico@207: 00306 #define ATD1DR0H 0x0130 nico@207: 00307 #define ATD1DR0L 0x0131 nico@207: 00308 #define ATD1DR1H 0x0132 nico@207: 00309 #define ATD1DR1L 0x0133 nico@207: 00310 #define ATD1DR2H 0x0134 nico@207: 00311 #define ATD1DR2L 0x0135 nico@207: 00312 #define ATD1DR3H 0x0136 nico@207: 00313 #define ATD1DR3L 0x0137 nico@207: 00314 #define ATD1DR4H 0x0138 nico@207: 00315 #define ATD1DR4L 0x0139 nico@207: 00316 #define ATD1DR5H 0x013A nico@207: 00317 #define ATD1DR5L 0x013B nico@207: 00318 #define ATD1DR6H 0x013C nico@207: 00319 #define ATD1DR6L 0x013D nico@207: 00320 #define ATD1DR7H 0x013E nico@207: 00321 #define ATD1DR7L 0x013F nico@207: 00322 #define CAN0CTL0 0x0140 nico@207: 00323 #define CAN0CTL1 0x0141 nico@207: 00324 #define CAN0BTR0 0x0142 nico@207: 00325 #define CAN0BTR1 0x0143 nico@207: 00326 #define CAN0RFLG 0x0144 nico@207: 00327 #define CAN0RIER 0x0145 nico@207: 00328 #define CAN0TFLG 0x0146 nico@207: 00329 #define CAN0TIER 0x0147 nico@207: 00330 #define CAN0TARQ 0x0148 nico@207: 00331 #define CAN0TAAK 0x0149 nico@207: 00332 #define CAN0TBSEL 0x014A nico@207: 00333 #define CAN0IDAC 0x014B nico@207: 00334 nico@207: 00335 #define CAN0RXERR 0x014E nico@207: 00336 #define CAN0TXERR 0x014F nico@207: 00337 #define CAN0IDAR0 0x0150 nico@207: 00338 #define CAN0IDAR1 0x0151 nico@207: 00339 #define CAN0IDAR2 0x0152 nico@207: 00340 #define CAN0IDAR3 0x0153 nico@207: 00341 #define CAN0IDMR0 0x0154 nico@207: 00342 #define CAN0IDMR1 0x0155 nico@207: 00343 #define CAN0IDMR2 0x0156 nico@207: 00344 #define CAN0IDMR3 0x0157 nico@207: 00345 #define CAN0IDAR4 0x0158 nico@207: 00346 #define CAN0IDAR5 0x0159 nico@207: 00347 #define CAN0IDAR6 0x015A nico@207: 00348 #define CAN0IDAR7 0x015B nico@207: 00349 #define CAN0IDMR4 0x015C nico@207: 00350 #define CAN0IDMR5 0x015D nico@207: 00351 #define CAN0IDMR6 0x015E nico@207: 00352 #define CAN0IDMR7 0x015F nico@207: 00353 #define CAN0RXFG0 0x0160 nico@207: 00354 #define CAN0RXFG1 0x0161 nico@207: 00355 #define CAN0RXFG2 0x0162 nico@207: 00356 #define CAN0RXFG3 0x0163 nico@207: 00357 #define CAN0RXFG4 0x0164 nico@207: 00358 #define CAN0RXFG5 0x0165 nico@207: 00359 #define CAN0RXFG6 0x0166 nico@207: 00360 #define CAN0RXFG7 0x0167 nico@207: 00361 #define CAN0RXFG8 0x0168 nico@207: 00362 #define CAN0RXFG9 0x0169 nico@207: 00363 #define CAN0RXFGA 0x016A nico@207: 00364 #define CAN0RXFGB 0x016B nico@207: 00365 #define CAN0RXFGC 0x016C nico@207: 00366 #define CAN0RXFGD 0x016D nico@207: 00367 #define CAN0RXFGE 0x016E nico@207: 00368 #define CAN0RXFGF 0x016F nico@207: 00369 #define CAN0TXFG0 0x0170 nico@207: 00370 #define CAN0TXFG1 0x0171 nico@207: 00371 #define CAN0TXFG2 0x0172 nico@207: 00372 #define CAN0TXFG3 0x0173 nico@207: 00373 #define CAN0TXFG4 0x0174 nico@207: 00374 #define CAN0TXFG5 0x0175 nico@207: 00375 #define CAN0TXFG6 0x0176 nico@207: 00376 #define CAN0TXFG7 0x0177 nico@207: 00377 #define CAN0TXFG8 0x0178 nico@207: 00378 #define CAN0TXFG9 0x0179 nico@207: 00379 #define CAN0TXFGA 0x017A nico@207: 00380 #define CAN0TXFGB 0x017B nico@207: 00381 #define CAN0TXFGC 0x017C nico@207: 00382 #define CAN0TXFGD 0x017D nico@207: 00383 #define CAN0TXFGE 0x017E nico@207: 00384 #define CAN0TXFGF 0x017F nico@207: 00385 nico@207: 00386 #define CAN1CTL0 0x0180 nico@207: 00387 #define CAN1CTL1 0x0181 nico@207: 00388 #define CAN1BTR0 0x0182 nico@207: 00389 #define CAN1BTR1 0x0183 nico@207: 00390 #define CAN1RFLG 0x0184 nico@207: 00391 #define CAN1RIER 0x0185 nico@207: 00392 #define CAN1TFLG 0x0186 nico@207: 00393 #define CAN1TIER 0x0187 nico@207: 00394 #define CAN1TARQ 0x0188 nico@207: 00395 #define CAN1TAAK 0x0189 nico@207: 00396 #define CAN1TBSEL 0x018A nico@207: 00397 #define CAN1IDAC 0x018B nico@207: 00398 #define CAN1RXERR 0x018E nico@207: 00399 #define CAN1TXERR 0x018F nico@207: 00400 #define CAN1IDAR0 0x0190 nico@207: 00401 #define CAN1IDAR1 0x0191 nico@207: 00402 #define CAN1IDAR2 0x0192 nico@207: 00403 #define CAN1IDAR3 0x0193 nico@207: 00404 #define CAN1IDMR0 0x0194 nico@207: 00405 #define CAN1IDMR1 0x0195 nico@207: 00406 #define CAN1IDMR2 0x0196 nico@207: 00407 #define CAN1IDMR3 0x0197 nico@207: 00408 #define CAN1IDAR4 0x0198 nico@207: 00409 #define CAN1IDAR5 0x0199 nico@207: 00410 #define CAN1IDAR6 0x019A nico@207: 00411 #define CAN1IDAR7 0x019B nico@207: 00412 #define CAN1IDMR4 0x019C nico@207: 00413 #define CAN1IDMR5 0x019D nico@207: 00414 #define CAN1IDMR6 0x019E nico@207: 00415 #define CAN1IDMR7 0x019F nico@207: 00416 nico@207: 00417 #define CAN1RXFG0 0x01A0 nico@207: 00418 #define CAN1RXFG1 0x01A1 nico@207: 00419 #define CAN1RXFG2 0x01A2 nico@207: 00420 #define CAN1RXFG3 0x01A3 nico@207: 00421 #define CAN1RXFG4 0x01A4 nico@207: 00422 #define CAN1RXFG5 0x01A5 nico@207: 00423 #define CAN1RXFG6 0x01A6 nico@207: 00424 #define CAN1RXFG7 0x01A7 nico@207: 00425 #define CAN1RXFG8 0x01A8 nico@207: 00426 #define CAN1RXFG9 0x01A9 nico@207: 00427 #define CAN1RXFGA 0x01AA nico@207: 00428 #define CAN1RXFGB 0x01AB nico@207: 00429 #define CAN1RXFGC 0x01AC nico@207: 00430 #define CAN1RXFGD 0x01AD nico@207: 00431 #define CAN1RXFGE 0x01AE nico@207: 00432 #define CAN1RXFGF 0x01AF nico@207: 00433 #define CAN1TXFG0 0x01B0 nico@207: 00434 #define CAN1TXFG1 0x01B1 nico@207: 00435 #define CAN1TXFG2 0x01B2 nico@207: 00436 #define CAN1TXFG3 0x01B3 nico@207: 00437 #define CAN1TXFG4 0x01B4 nico@207: 00438 #define CAN1TXFG5 0x01B5 nico@207: 00439 #define CAN1TXFG6 0x01B6 nico@207: 00440 #define CAN1TXFG7 0x01B7 nico@207: 00441 #define CAN1TXFG8 0x01B8 nico@207: 00442 #define CAN1TXFG9 0x01B9 nico@207: 00443 #define CAN1TXFGA 0x01BA nico@207: 00444 #define CAN1TXFGB 0x01BB nico@207: 00445 #define CAN1TXFGC 0x01BC nico@207: 00446 #define CAN1TXFGD 0x01BD nico@207: 00447 #define CAN1TXFGE 0x01BE nico@207: 00448 #define CAN1TXFGF 0x01BF nico@207: 00449 #define CAN2CTL0 0x01C0 nico@207: 00450 #define CAN2CTL1 0x01C1 nico@207: 00451 #define CAN2BTR0 0x01C2 nico@207: 00452 #define CAN2BTR1 0x01C3 nico@207: 00453 #define CAN2RFLG 0x01C4 nico@207: 00454 #define CAN2RIER 0x01C5 nico@207: 00455 #define CAN2TFLG 0x01C6 nico@207: 00456 #define CAN2TIER 0x01C7 nico@207: 00457 #define CAN2TARQ 0x01C8 nico@207: 00458 #define CAN2TAAK 0x01C9 nico@207: 00459 #define CAN2TBSEL 0x01CA nico@207: 00460 #define CAN2IDAC 0x01CB nico@207: 00461 nico@207: 00462 #define CAN2RXERR 0x01CE nico@207: 00463 #define CAN2TXERR 0x01CF nico@207: 00464 #define CAN2IDAR0 0x01D0 nico@207: 00465 #define CAN2IDAR1 0x01D1 nico@207: 00466 #define CAN2IDAR2 0x01D2 nico@207: 00467 #define CAN2IDAR3 0x01D3 nico@207: 00468 #define CAN2IDMR0 0x01D4 nico@207: 00469 #define CAN2IDMR1 0x01D5 nico@207: 00470 #define CAN2IDMR2 0x01D6 nico@207: 00471 #define CAN2IDMR3 0x01D7 nico@207: 00472 #define CAN2IDAR4 0x01D8 nico@207: 00473 #define CAN2IDAR5 0x01D9 nico@207: 00474 #define CAN2IDAR6 0x01DA nico@207: 00475 #define CAN2IDAR7 0x01DB nico@207: 00476 #define CAN2IDMR4 0x01DC nico@207: 00477 #define CAN2IDMR5 0x01DD nico@207: 00478 #define CAN2IDMR6 0x01DE nico@207: 00479 #define CAN2IDMR7 0x01DF nico@207: 00480 #define CAN2RXFG0 0x01E0 nico@207: 00481 #define CAN2RXFG1 0x01E1 nico@207: 00482 #define CAN2RXFG2 0x01E2 nico@207: 00483 #define CAN2RXFG3 0x01E3 nico@207: 00484 #define CAN2RXFG4 0x01E4 nico@207: 00485 #define CAN2RXFG5 0x01E5 nico@207: 00486 #define CAN2RXFG6 0x01E6 nico@207: 00487 #define CAN2RXFG7 0x01E7 nico@207: 00488 #define CAN2RXFG8 0x01E8 nico@207: 00489 #define CAN2RXFG9 0x01E9 nico@207: 00490 #define CAN2RXFGA 0x01EA nico@207: 00491 #define CAN2RXFGB 0x01EB nico@207: 00492 #define CAN2RXFGC 0x01EC nico@207: 00493 #define CAN2RXFGD 0x01ED nico@207: 00494 #define CAN2RXFGE 0x01EE nico@207: 00495 #define CAN2RXFGF 0x01EF nico@207: 00496 #define CAN2TXFG0 0x01F0 nico@207: 00497 #define CAN2TXFG1 0x01F1 nico@207: 00498 #define CAN2TXFG2 0x01F2 nico@207: 00499 #define CAN2TXFG3 0x01F3 nico@207: 00500 #define CAN2TXFG4 0x01F4 nico@207: 00501 #define CAN2TXFG5 0x01F5 nico@207: 00502 #define CAN2TXFG6 0x01F6 nico@207: 00503 #define CAN2TXFG7 0x01F7 nico@207: 00504 #define CAN2TXFG8 0x01F8 nico@207: 00505 #define CAN2TXFG9 0x01F9 nico@207: 00506 #define CAN2TXFGA 0x01FA nico@207: 00507 #define CAN2TXFGB 0x01FB nico@207: 00508 #define CAN2TXFGC 0x01FC nico@207: 00509 #define CAN2TXFGD 0x01FD nico@207: 00510 #define CAN2TXFGE 0x01FE nico@207: 00511 #define CAN2TXFGF 0x01FF nico@207: 00512 nico@207: 00513 #define CAN3CTL0 0x0200 nico@207: 00514 #define CAN3CTL1 0x0201 nico@207: 00515 #define CAN3BTR0 0x0202 nico@207: 00516 #define CAN3BTR1 0x0203 nico@207: 00517 #define CAN3RFLG 0x0204 nico@207: 00518 #define CAN3RIER 0x0205 nico@207: 00519 #define CAN3TFLG 0x0206 nico@207: 00520 #define CAN3TIER 0x0207 nico@207: 00521 #define CAN3TARQ 0x0208 nico@207: 00522 #define CAN3TAAK 0x0209 nico@207: 00523 #define CAN3TBSEL 0x020A nico@207: 00524 #define CAN3IDAC 0x020B nico@207: 00525 nico@207: 00526 #define CAN3RXERR 0x020E nico@207: 00527 #define CAN3TXERR 0x020F nico@207: 00528 #define CAN3IDAR0 0x0210 nico@207: 00529 #define CAN3IDAR1 0x0211 nico@207: 00530 #define CAN3IDAR2 0x0212 nico@207: 00531 #define CAN3IDAR3 0x0213 nico@207: 00532 #define CAN3IDMR0 0x0214 nico@207: 00533 #define CAN3IDMR1 0x0215 nico@207: 00534 #define CAN3IDMR2 0x0216 nico@207: 00535 #define CAN3IDMR3 0x0217 nico@207: 00536 #define CAN3IDAR4 0x0218 nico@207: 00537 #define CAN3IDAR5 0x0219 nico@207: 00538 #define CAN3IDAR6 0x021A nico@207: 00539 #define CAN3IDAR7 0x021B nico@207: 00540 #define CAN3IDMR4 0x021C nico@207: 00541 #define CAN3IDMR5 0x021D nico@207: 00542 #define CAN3IDMR6 0x021E nico@207: 00543 #define CAN3IDMR7 0x021F nico@207: 00544 nico@207: 00545 #define CAN3RXFG0 0x0220 nico@207: 00546 #define CAN3RXFG1 0x0221 nico@207: 00547 #define CAN3RXFG2 0x0222 nico@207: 00548 #define CAN3RXFG3 0x0223 nico@207: 00549 #define CAN3RXFG4 0x0224 nico@207: 00550 #define CAN3RXFG5 0x0225 nico@207: 00551 #define CAN3RXFG6 0x0226 nico@207: 00552 #define CAN3RXFG7 0x0227 nico@207: 00553 #define CAN3RXFG8 0x0228 nico@207: 00554 #define CAN3RXFG9 0x0229 nico@207: 00555 #define CAN3RXFGA 0x022A nico@207: 00556 #define CAN3RXFGB 0x022B nico@207: 00557 #define CAN3RXFGC 0x022C nico@207: 00558 #define CAN3RXFGD 0x022D nico@207: 00559 #define CAN3RXFGE 0x022E nico@207: 00560 #define CAN3RXFGF 0x022F nico@207: 00561 #define CAN3TXFG0 0x0230 nico@207: 00562 #define CAN3TXFG1 0x0231 nico@207: 00563 #define CAN3TXFG2 0x0232 nico@207: 00564 #define CAN3TXFG3 0x0233 nico@207: 00565 #define CAN3TXFG4 0x0234 nico@207: 00566 #define CAN3TXFG5 0x0235 nico@207: 00567 #define CAN3TXFG6 0x0236 nico@207: 00568 #define CAN3TXFG7 0x0237 nico@207: 00569 #define CAN3TXFG8 0x0238 nico@207: 00570 #define CAN3TXFG9 0x0239 nico@207: 00571 #define CAN3TXFGA 0x023A nico@207: 00572 #define CAN3TXFGB 0x023B nico@207: 00573 #define CAN3TXFGC 0x023C nico@207: 00574 #define CAN3TXFGD 0x023D nico@207: 00575 #define CAN3TXFGE 0x023E nico@207: 00576 #define CAN3TXFGF 0x023F nico@207: 00577 nico@207: 00578 #define PTT 0x0240 nico@207: 00579 #define PTIT 0x0241 nico@207: 00580 #define DDRT 0x0242 nico@207: 00581 #define RDRT 0x0243 nico@207: 00582 #define PERT 0x0244 nico@207: 00583 #define PPST 0x0245 nico@207: 00584 nico@207: 00585 #define PTS 0x0248 nico@207: 00586 #define PTIS 0x0249 nico@207: 00587 #define DDRS 0x024A nico@207: 00588 #define RDRS 0x024B nico@207: 00589 #define PERS 0x024C nico@207: 00590 #define PPSS 0x024D nico@207: 00591 #define WOMS 0x024E nico@207: 00592 nico@207: 00593 #define PTM 0x0250 nico@207: 00594 #define PTIM 0x0251 nico@207: 00595 #define DDRM 0x0252 nico@207: 00596 #define RDRM 0x0253 nico@207: 00597 #define PERM 0x0254 nico@207: 00598 #define PPSM 0x0255 nico@207: 00599 #define WOMM 0x0256 nico@207: 00600 nico@207: 00601 #define PTP 0x0258 nico@207: 00602 #define PTIP 0x0259 nico@207: 00603 #define DDRP 0x025A nico@207: 00604 #define RDRP 0x025B nico@207: 00605 #define PERP 0x025C nico@207: 00606 #define PPSP 0x025D nico@207: 00607 #define PIEP 0x025E nico@207: 00608 #define PIFP 0x025F nico@207: 00609 #define PTH 0x0260 nico@207: 00610 #define PTIH 0x0261 nico@207: 00611 #define DDRH 0x0262 nico@207: 00612 #define RDRH 0x0263 nico@207: 00613 #define PERH 0x0264 nico@207: 00614 #define PPSH 0x0265 nico@207: 00615 #define PIEH 0x0266 nico@207: 00616 #define PIFH 0x0267 nico@207: 00617 #define PTJ 0x0268 nico@207: 00618 #define PTIJ 0x0269 nico@207: 00619 #define DDRJ 0x026A nico@207: 00620 #define RDRJ 0x026B nico@207: 00621 #define PERJ 0x026C nico@207: 00622 #define PPSJ 0x026D nico@207: 00623 #define PIEJ 0x026E nico@207: 00624 #define PIFJ 0x026F nico@207: 00625 nico@207: 00626 #define CAN4CTL0 0x0280 nico@207: 00627 #define CAN4CTL1 0x0281 nico@207: 00628 #define CAN4BTR0 0x0282 nico@207: 00629 #define CAN4BTR1 0x0283 nico@207: 00630 #define CAN4RFLG 0x0284 nico@207: 00631 #define CAN4RIER 0x0285 nico@207: 00632 #define CAN4TFLG 0x0286 nico@207: 00633 #define CAN4TIER 0x0287 nico@207: 00634 #define CAN4TARQ 0x0288 nico@207: 00635 #define CAN4TAAK 0x0289 nico@207: 00636 #define CAN4TBSEL 0x028A nico@207: 00637 #define CAN4IDAC 0x028B nico@207: 00638 nico@207: 00639 #define CAN4RXERR 0x028E nico@207: 00640 #define CAN4TXERR 0x028F nico@207: 00641 #define CAN4IDAR0 0x0290 nico@207: 00642 #define CAN4IDAR1 0x0291 nico@207: 00643 #define CAN4IDAR2 0x0292 nico@207: 00644 #define CAN4IDAR3 0x0293 nico@207: 00645 #define CAN4IDMR0 0x0294 nico@207: 00646 #define CAN4IDMR1 0x0295 nico@207: 00647 #define CAN4IDMR2 0x0296 nico@207: 00648 #define CAN4IDMR3 0x0297 nico@207: 00649 #define CAN4IDAR4 0x0298 nico@207: 00650 #define CAN4IDAR5 0x0299 nico@207: 00651 #define CAN4IDAR6 0x029A nico@207: 00652 #define CAN4IDAR7 0x029B nico@207: 00653 #define CAN4IDMR4 0x029C nico@207: 00654 #define CAN4IDMR5 0x029D nico@207: 00655 #define CAN4IDMR6 0x029E nico@207: 00656 #define CAN4IDMR7 0x029F nico@207: 00657 nico@207: 00658 #define CAN4RXFG0 0x02A0 nico@207: 00659 #define CAN4RXFG1 0x02A1 nico@207: 00660 #define CAN4RXFG2 0x02A2 nico@207: 00661 #define CAN4RXFG3 0x02A3 nico@207: 00662 #define CAN4RXFG4 0x02A4 nico@207: 00663 #define CAN4RXFG5 0x02A5 nico@207: 00664 #define CAN4RXFG6 0x02A6 nico@207: 00665 #define CAN4RXFG7 0x02A7 nico@207: 00666 #define CAN4RXFG8 0x02A8 nico@207: 00667 #define CAN4RXFG9 0x02A9 nico@207: 00668 #define CAN4RXFGA 0x02AA nico@207: 00669 #define CAN4RXFGB 0x02AB nico@207: 00670 #define CAN4RXFGC 0x02AC nico@207: 00671 #define CAN4RXFGD 0x02AD nico@207: 00672 #define CAN4RXFGE 0x02AE nico@207: 00673 #define CAN4RXFGF 0x02AF nico@207: 00674 #define CAN4TXFG0 0x02B0 nico@207: 00675 #define CAN4TXFG1 0x02B1 nico@207: 00676 #define CAN4TXFG2 0x02B2 nico@207: 00677 #define CAN4TXFG3 0x02B3 nico@207: 00678 #define CAN4TXFG4 0x02B4 nico@207: 00679 #define CAN4TXFG5 0x02B5 nico@207: 00680 #define CAN4TXFG6 0x02B6 nico@207: 00681 #define CAN4TXFG7 0x02B7 nico@207: 00682 #define CAN4TXFG8 0x02B8 nico@207: 00683 #define CAN4TXFG9 0x02B9 nico@207: 00684 #define CAN4TXFGA 0x02BA nico@207: 00685 #define CAN4TXFGB 0x02BB nico@207: 00686 #define CAN4TXFGC 0x02BC nico@207: 00687 #define CAN4TXFGD 0x02BD nico@207: 00688 #define CAN4TXFGE 0x02BE nico@207: 00689 #define CAN4TXFGF 0x02BF nico@207: 00690 nico@207: 00691 nico@207: 00692 nico@207: 00693 /*********************************************** nico@207: 00694 Constants for MSCAN nico@207: 00695 ************************************************ nico@207: 00696 */ nico@207: 00697 nico@207: 00698 #define CAN0 0x0140 /* First address for MSCAN0 */ nico@207: 00699 #define CAN1 0x0180 /* First address for MSCAN1 */ nico@207: 00700 #define CAN2 0x01C0 /* First address for MSCAN2 */ nico@207: 00701 #define CAN3 0x0200 /* First address for MSCAN3 */ nico@207: 00702 #define CAN4 0x0280 /* First address for MSCAN4 */ nico@207: 00703 nico@207: 00704 #define CANCTL0 0X00 /* Control register 0 */ nico@207: 00705 #define CANCTL1 0X01 /* Control register 1 */ nico@207: 00706 #define CANBTR0 0X02 /* Bus timing register 0 */ nico@207: 00707 #define CANBTR1 0X03 /* Bus timing register 1 */ nico@207: 00708 #define CANRFLG 0X04 /* Receiver flag register */ nico@207: 00709 #define CANRIER 0X05 /* Enable interruptions when reception */ nico@207: 00710 #define CANTFLG 0X06 /* Transmit flag register */ nico@207: 00711 #define CANTIER 0X07 /* Enable interruptions when transmission */ nico@207: 00712 #define CANTBSEL 0X0A /* Select foreground buffer for transmit */ nico@207: 00713 #define CANIDAC 0x0B /* Identifier acceptance control register */ nico@207: 00714 #define CANIDAR0 0x10 nico@207: 00715 #define CANIDAR1 0x11 nico@207: 00716 #define CANIDAR2 0x12 nico@207: 00717 #define CANIDAR3 0x13 nico@207: 00718 #define CANIDMR0 0x14 nico@207: 00719 #define CANIDMR1 0x15 nico@207: 00720 #define CANIDMR2 0x16 nico@207: 00721 #define CANIDMR3 0x17 nico@207: 00722 #define CANIDAR4 0x18 nico@207: 00723 #define CANIDAR5 0x19 nico@207: 00724 #define CANIDAR6 0x1A nico@207: 00725 #define CANIDAR7 0x1B nico@207: 00726 #define CANIDMR4 0x1C nico@207: 00727 #define CANIDMR5 0x1D nico@207: 00728 #define CANIDMR6 0x1E nico@207: 00729 #define CANIDMR7 0x1F nico@207: 00730 nico@207: 00731 /* Received foreground buffer */ nico@207: 00732 #define CANRCVID 0x20 /* Base of identifier registers */ nico@207: 00733 #define CANRCVDTA 0x24 /* Base of data registers */ nico@207: 00734 #define CANRCVLEN 0x2C /* Data length register */ nico@207: 00735 nico@207: 00736 /* Transmit foreground buffer */ nico@207: 00737 #define CANTRSID 0x30 /* Base of identifier registers */ nico@207: 00738 #define CANTRSDTA 0x34 /* Base of data registers */ nico@207: 00739 #define CANTRSLEN 0x3C /* Data length register */ nico@207: 00740 #define CANTRSPRI 0x3D /* Priority register */ nico@207: 00741 nico@207: 00742 nico@207: 00743 /* Constants for serials port */ nico@207: 00744 #define SCI0 0x00C8 nico@207: 00745 #define SCI1 0x00D0 nico@207: 00746 nico@207: 00747 #define SCIBDH 0x00 nico@207: 00748 #define SCIBDL 0x01 nico@207: 00749 #define SCICR1 0x02 nico@207: 00750 #define SCICR2 0x03 nico@207: 00751 #define SCISR1 0x04 nico@207: 00752 #define SCISR2 0x05 nico@207: 00753 #define SCIDRH 0x06 nico@207: 00754 #define SCIDRL 0x07 nico@207: 00755 nico@207: 00756 nico@207: 00757 #endif /* __HCS12_PORTS__ */ nico@207: 00758 nico@207: 00759 nico@207: 00760 nico@207: 00761 nico@207: 00762 nico@207: 00763 nico@207: 00764 nico@207: 00765 nico@207: 00766 nico@207: 00767 nico@207: 00768 nico@207: