📄 h8_3069f.h
字号:
/* * TOPPERS/JSP Kernel * Toyohashi Open Platform for Embedded Real-Time Systems/ * Just Standard Profile Kernel * * Copyright (C) 2000-2004 by Embedded and Real-Time Systems Laboratory * Toyohashi Univ. of Technology, JAPAN * Copyright (C) 2001-2004 by Industrial Technology Institute, * Miyagi Prefectural Government, JAPAN * Copyright (C) 2001-2004 by Dep. of Computer Science and Engineering * Tomakomai National College of Technology, JAPAN * Copyright (C) 2001-2004 by Kunihiko Ohnaka * * 惧淡螟侯涪荚は·笆布の (1)×(4) の掘凤か·Free Software Foundation * によって给山されている GNU General Public License の Version 2 に淡 * 揭されている掘凤を塔たす眷圭に嘎り·塑ソフトウェア∈塑ソフトウェア * を猖恃したものを崔むˉ笆布票じ∷を蝗脱ˇ剩澜ˇ猖恃ˇ浩芹邵∈笆布· * 网脱と钙ぶ∷することを痰浸で钓满するˉ * (1) 塑ソフトウェアをソ〖スコ〖ドの妨で网脱する眷圭には·惧淡の螟侯 * 涪山绩·この网脱掘凤および布淡の痰瘦沮惮年が·そのままの妨でソ〖 * スコ〖ド面に崔まれていることˉ * (2) 塑ソフトウェアを·ライブラリ妨及など·戮のソフトウェア倡券に蝗 * 脱できる妨で浩芹邵する眷圭には·浩芹邵に燃うドキュメント∈网脱 * 荚マニュアルなど∷に·惧淡の螟侯涪山绩·この网脱掘凤および布淡 * の痰瘦沮惮年を非很することˉ * (3) 塑ソフトウェアを·怠达に寥み哈むなど·戮のソフトウェア倡券に蝗 * 脱できない妨で浩芹邵する眷圭には·肌のいずれかの掘凤を塔たすこ * とˉ * (a) 浩芹邵に燃うドキュメント∈网脱荚マニュアルなど∷に·惧淡の螟 * 侯涪山绩·この网脱掘凤および布淡の痰瘦沮惮年を非很することˉ * (b) 浩芹邵の妨轮を·侍に年める数恕によって·TOPPERSプロジェクトに * 鼠桂することˉ * (4) 塑ソフトウェアの网脱により木儡弄または粗儡弄に栏じるいかなる禄 * 巢からも·惧淡螟侯涪荚およびTOPPERSプロジェクトを倘勒することˉ * * 塑ソフトウェアは·痰瘦沮で捏丁されているものであるˉ惧淡螟侯涪荚お * よびTOPPERSプロジェクトは·塑ソフトウェアに簇して·その努脱材墙拉も * 崔めて·いかなる瘦沮も乖わないˉまた·塑ソフトウェアの网脱により木 * 儡弄または粗儡弄に栏じたいかなる禄巢に簇しても·その勒扦を砷わないˉ * * @(#) $Id: h8_3069f.h,v 1.3 2005/11/07 01:49:53 honda Exp $ */#ifndef _H8_3069F_H_#define _H8_3069F_H_/* * H8/3069F 脱年盗 *//* Interrupt numbers */#define IRQ_NMI 7 /* NMI */#define IRQ_EXT0 12 /* IRQ0 */#define IRQ_EXT1 13 /* IRQ1 */#define IRQ_EXT2 14 /* IRQ2 */#define IRQ_EXT3 15 /* IRQ3 */#define IRQ_EXT4 16 /* IRQ4 */#define IRQ_EXT5 17 /* IRQ5 */#define IRQ_WOVI 20 /* Watch Doc Timer */#define IRQ_CMI 21 /* Compare Match */#define IRQ_ADI 23 /* A/D */#define IRQ_IMIA0 24 /* 16 bit timer 0 IMIA0 */#define IRQ_IMIB0 25 /* 16 bit timer 0 IMIB0 */#define IRQ_OVI0 26 /* 16 bit timer 0 OVI0 */#define IRQ_IMIA1 28 /* 16 bit timer 1 IMIA1 */#define IRQ_IMIB1 29 /* 16 bit timer 1 IMIB1 */#define IRQ_OVI1 30 /* 16 bit timer 1 OVI1 */#define IRQ_IMIA2 32 /* 16 bit timer 2 IMIA2 */#define IRQ_IMIB2 33 /* 16 bit timer 2 IMIB2 */#define IRQ_OVI2 34 /* 16 bit timer 2 OVI2 */#define IRQ_CIMIA0 36 /* 8 bit timer 0 CIMIA0 */#define IRQ_CIMIB0 37 /* 8 bit timer 0 CIMIB0 */#define IRQ_CIMIA1 38 /* 8 bit timer 1 CIMIA1 */#define IRQ_CIMIB1 38 /* 8 bit timer 1 CIMIB1 */#define IRQ_TOVI0 39 /* 8 bit timer 0 TOVI0 */#define IRQ_TOVI1 39 /* 8 bit timer 1 TOVI1 */#define IRQ_CIMIA2 40 /* 8 bit timer 2 CIMIA2 */#define IRQ_CIMIB2 41 /* 8 bit timer 2 CIMIB2 */#define IRQ_CIMIA3 42 /* 8 bit timer 3 CIMIA3 */#define IRQ_CIMIB3 42 /* 8 bit timer 3 CIMIB3 */#define IRQ_TOVI2 43 /* 8 bit timer 2 TOVI2 */#define IRQ_TOVI3 43 /* 8 bit timer 3 TOVI3 */#define IRQ_DEND0A 44 /* DMAC */#define IRQ_DEND0B 45 /* DMAC */#define IRQ_DEND1A 46 /* DMAC */#define IRQ_DEND1B 47 /* DMAC */#define IRQ_ERI0 52 /* SCI0 ERI */#define IRQ_RXI0 53 /* SCI0 RXI */#define IRQ_TXI0 54 /* SCI0 TXI */#define IRQ_TEI0 55 /* SCI0 TEI */#define IRQ_ERI1 56 /* SCI1 ERI */#define IRQ_RXI1 57 /* SCI1 RXI */#define IRQ_TXI1 58 /* SCI1 TXI */#define IRQ_TEI1 59 /* SCI1 TEI */#define IRQ_ERI2 60 /* SCI2 ERI */#define IRQ_RXI2 61 /* SCI2 RXI */#define IRQ_TXI2 62 /* SCI2 TXI */#define IRQ_TEI2 63 /* SCI2 TEI *//* * register address * 柒婶I/Oレジスタ(1) 0xee,0000×0xee,00ff * 柒婶I/Oレジスタ(2) 0xff,ff20×0xff,ffe9 * マニュアルには布疤2バイトしか淡很されていないので * 惧疤1バイトを输う。 *//* I/O ports *//* port1: A0 - A7 */#define H8P1DDR 0xfee000#define H8P1DR 0xffffd0/* port2: A8 - A15 */#define H8P2DDR 0xfee001#define H8P2DR 0xffffd1#define H8P2PCR 0xfee03c/* port3: D8 - D15 */#define H8P3DDR 0xfee002#define H8P3DR 0xffffd2/* port4: D0 - D7 */#define H8P4DDR 0xfee003#define H8P4DR 0xffffd3#define H8P4PCR 0xfee03e/* port5: A16 - A19 */#define H8P5DDR 0xfee004#define H8P5DR 0xffffd4#define H8P5PCR 0xfee03f#define H8P5DDR_A19_BIT 3#define H8P5DDR_A18_BIT 2#define H8P5DDR_A17_BIT 1#define H8P5DDR_A16_BIT 0#define H8P5DDR_A19 (1<<H8P5DDR_A19_BIT)#define H8P5DDR_A18 (1<<H8P5DDR_A18_BIT)#define H8P5DDR_A17 (1<<H8P5DDR_A17_BIT)#define H8P5DDR_A16 (1<<H8P5DDR_A16_BIT)/* port6 */#define H8P6DDR 0xfee005#define H8P6DR 0xffffd5#define H8P6DDR_CLOCK_BIT 7#define H8P6DDR_HWR_BIT 6#define H8P6DDR_LWR_BIT 5#define H8P6DDR_RD_BIT 4#define H8P6DDR_AS_BIT 3#define H8P6DDR_BACK_BIT 2#define H8P6DDR_BREQ_BIT 1#define H8P6DDR_WAIT_BIT 0#define H8P6DDR_CLOCK (1<<H8P6DDR_CLOCK_BIT)#define H8P6DDR_HWR (1<<H8P6DDR_HWR_BIT)#define H8P6DDR_LWR (1<<H8P6DDR_LWR_BIT)#define H8P6DDR_RD (1<<H8P6DDR_RD_BIT)#define H8P6DDR_AS (1<<H8P6DDR_AS_BIT)#define H8P6DDR_BACK (1<<H8P6DDR_BACK_BIT)#define H8P6DDR_BREQ (1<<H8P6DDR_BREQ_BIT)#define H8P6DDR_WAIT (1<<H8P6DDR_WAIT_BIT)/* port7 */#define H8P7DR 0xffffd6/* port8 */#define H8P8DDR 0xfee007#define H8P8DR 0xffffd7#define H8P8DDR_CS0_BIT 4#define H8P8DDR_CS1_BIT 3#define H8P8DDR_CS2_BIT 2#define H8P8DDR_CS3_BIT 1#define H8P8DDR_RFSH_BIT 0#define H8P8DDR_CS0 (1<<H8P8DDR_CS0_BIT)#define H8P8DDR_CS1 (1<<H8P8DDR_CS1_BIT)#define H8P8DDR_CS2 (1<<H8P8DDR_CS2_BIT)#define H8P8DDR_CS3 (1<<H8P8DDR_CS3_BIT)#define H8P8DDR_RFSH (1<<H8P8DDR_RFSH_BIT)#define H8P8DDR_IRQ3_BIT 3#define H8P8DDR_IRQ2_BIT 2#define H8P8DDR_IRQ1_BIT 1#define H8P8DDR_IRQ0_BIT 0#define H8P8DDR_IRQ3 (1<<H8P8DDR_IRQ3_BIT)#define H8P8DDR_IRQ2 (1<<H8P8DDR_IRQ2_BIT)#define H8P8DDR_IRQ1 (1<<H8P8DDR_IRQ1_BIT)#define H8P8DDR_IRQ0 (1<<H8P8DDR_IRQ0_BIT)#define H8P8DDR_ADTRG_BIT 3#define H8P8DDR_ADTRG (1<<H8PBDDR_ADTRG_BIT)/* port9 (SCI) */#define H8P9DDR 0xfee008#define H8P9DR 0xffffd8#define H8P9DDR_SCK1_BIT 5#define H8P9DDR_SCK0_BIT 4#define H8P9DDR_RXD1_BIT 3#define H8P9DDR_RXD0_BIT 2#define H8P9DDR_TXD1_BIT 1#define H8P9DDR_TXD0_BIT 0#define H8P9DDR_SCK1 (1<<H8P9DDR_SCK1_BIT)#define H8P9DDR_SCK0 (1<<H8P9DDR_SCK0_BIT)#define H8P9DDR_RXD1 (1<<H8P9DDR_RXD1_BIT)#define H8P9DDR_RXD0 (1<<H8P9DDR_RXD0_BIT)#define H8P9DDR_TXD1 (1<<H8P9DDR_TXD1_BIT)#define H8P9DDR_TXD0 (1<<H8P9DDR_TXD0_BIT)#define H8P9DDR_IRQ5_BIT 5#define H8P9DDR_IRQ4_BIT 4#define H8P9DDR_IRQ5 (1<<H8P9DDR_IRQ5_BIT)#define H8P9DDR_IRQ4 (1<<H8P9DDR_IRQ4_BIT)/* portA (TPC/ITU/DMA) */#define H8PADDR 0xfee009#define H8PADR 0xffffd9#define H8PADDR_TP7_BIT 7#define H8PADDR_TP6_BIT 6#define H8PADDR_TP5_BIT 5#define H8PADDR_TP4_BIT 4#define H8PADDR_TP3_BIT 3#define H8PADDR_TP2_BIT 2#define H8PADDR_TP1_BIT 1#define H8PADDR_TP0_BIT 0#define H8PADDR_TP7 (1<<H8PADDR_TP7_BIT)#define H8PADDR_TP6 (1<<H8PADDR_TP6_BIT)#define H8PADDR_TP5 (1<<H8PADDR_TP5_BIT)#define H8PADDR_TP4 (1<<H8PADDR_TP4_BIT)#define H8PADDR_TP3 (1<<H8PADDR_TP3_BIT)#define H8PADDR_TP2 (1<<H8PADDR_TP2_BIT)#define H8PADDR_TP1 (1<<H8PADDR_TP1_BIT)#define H8PADDR_TP0 (1<<H8PADDR_TP0_BIT)#define H8PADDR_TIOCB2_BIT 7#define H8PADDR_TIOCA2_BIT 6#define H8PADDR_TIOCB1_BIT 5#define H8PADDR_TIOCA1_BIT 4#define H8PADDR_TIOCB0_BIT 3#define H8PADDR_TIOCA0_BIT 2#define H8PADDR_TIOCB2 (1<<H8PADDR_TIOCB2_BIT)#define H8PADDR_TIOCA2 (1<<H8PADDR_TIOCA2_BIT)#define H8PADDR_TIOCB1 (1<<H8PADDR_TIOCB1_BIT)#define H8PADDR_TIOCA1 (1<<H8PADDR_TIOCA1_BIT)#define H8PADDR_TIOCB0 (1<<H8PADDR_TIOCB0_BIT)#define H8PADDR_TIOCA0 (1<<H8PADDR_TIOCA0_BIT)#define H8PADDR_TEND1_BIT 1#define H8PADDR_TEND0_BIT 0#define H8PADDR_TEND1 (1<<H8PADDR_TEND1_BIT)#define H8PADDR_TEND0 (1<<H8PADDR_TEND0_BIT)#define H8PADDR_A20_BIT 7#define H8PADDR_A21_BIT 6#define H8PADDR_A22_BIT 5#define H8PADDR_A23_BIT 4#define H8PADDR_A20 (1<<H8PADDR_A20_BIT)#define H8PADDR_A21 (1<<H8PADDR_A21_BIT)#define H8PADDR_A22 (1<<H8PADDR_A22_BIT)#define H8PADDR_A23 (1<<H8PADDR_A23_BIT)#define H8PADDR_TCLKD_BIT 3#define H8PADDR_TCLKC_BIT 2#define H8PADDR_TCLKB_BIT 1#define H8PADDR_TCLKA_BIT 0#define H8PADDR_TCLKD (1<<H8PADDR_TCLKD_BIT)#define H8PADDR_TCLKC (1<<H8PADDR_TCLKC_BIT)#define H8PADDR_TCLKB (1<<H8PADDR_TCLKB_BIT)#define H8PADDR_TCLKA (1<<H8PADDR_TCLKA_BIT)/* portB (TP/ITU/DMA/AD) */#define H8PBDDR 0xfee00a#define H8PBDR 0xffffda#define H8PBDDR_TP15_BIT 7#define H8PBDDR_TP14_BIT 6#define H8PBDDR_TP13_BIT 5#define H8PBDDR_TP12_BIT 4#define H8PBDDR_TP11_BIT 3#define H8PBDDR_TP10_BIT 2#define H8PBDDR_TP9_BIT 1#define H8PBDDR_TP8_BIT 0#define H8PBDDR_TP15 (1<<H8PBDDR_TP15_BIT)#define H8PBDDR_TP14 (1<<H8PBDDR_TP14_BIT)#define H8PBDDR_TP13 (1<<H8PBDDR_TP13_BIT)#define H8PBDDR_TP12 (1<<H8PBDDR_TP12_BIT)#define H8PBDDR_TP11 (1<<H8PBDDR_TP11_BIT)#define H8PBDDR_TP10 (1<<H8PBDDR_TP10_BIT)#define H8PBDDR_TP9 (1<<H8PBDDR_TP9_BIT)#define H8PBDDR_TP8 (1<<H8PBDDR_TP8_BIT)#define H8PBDDR_LCAS_BIT 5#define H8PBDDR_UCAS_BIT 4#define H8PBDDR_DREQ1_BIT 3#define H8PBDDR_DREQ0_BIT 1#define H8PBDDR_LCAS (1<<H8PBDDR_LCAS_BIT)#define H8PBDDR_UCAS (1<<H8PBDDR_UCAS_BIT)#define H8PBDDR_DREQ1 (1<<H8PBDDR_DREQ1_BIT)#define H8PBDDR_DREQ0 (1<<H8PBDDR_DREQ0_BIT)#define H8PBDDR_TMIO3_BIT 3#define H8PBDDR_TMIO2_BIT 2#define H8PBDDR_TMIO1_BIT 1#define H8PBDDR_TMIO0_BIT 0#define H8PBDDR_TMIO4 (1<<H8PBDDR_TMIO3_BIT)#define H8PBDDR_TMIO3 (1<<H8PBDDR_TMIO2_BIT)#define H8PBDDR_TMIO2 (1<<H8PBDDR_TMIO1_BIT)#define H8PBDDR_TMIO1 (1<<H8PBDDR_TMIO0_BIT)#define H8PBDDR_RXD2_BIT 7#define H8PBDDR_TXD2_BIT 6#define H8PBDDR_SCK2_BIT 5#define H8PBDDR_RXD2 (1<<H8PBDDR_RXD2_BIT)#define H8PBDDR_TXD2 (1<<H8PBDDR_TXD2_BIT)#define H8PBDDR_SCK2 (1<<H8PBDDR_SCK2_BIT)#define H8PBDDR_CS4_BIT 3#define H8PBDDR_CS5_BIT 2#define H8PBDDR_CS6_BIT 1#define H8PBDDR_CS7_BIT 0#define H8PBDDR_CS4 (1<<H8PBDDR_CS4_BIT)#define H8PBDDR_CS5 (1<<H8PBDDR_CS5_BIT)#define H8PBDDR_CS6 (1<<H8PBDDR_CS6_BIT)#define H8PBDDR_CS7 (1<<H8PBDDR_CS7_BIT)/* Interrupt Contolller */#define H8INTC 0xfee014 /* interrupt controller base address */#define H8ISCR 0xfee014#define H8IER 0xfee015#define H8ISR 0xfee016#define H8IPRA 0xfee018#define H8IPRB 0xfee019/* System Control Register */#define H8SYSCR 0xfee012 /* SYSCR */#define H8SYSCR_SSBY_BIT 7#define H8SYSCR_STS2_BIT 6#define H8SYSCR_STS1_BIT 5#define H8SYSCR_STS0_BIT 4#define H8SYSCR_UE_BIT 3#define H8SYSCR_NMIEG_BIT 2#define H8SYSCR_SSOE_BIT 1#define H8SYSCR_RAME_BIT 0#define H8SYSCR_SSBY (1<<(H8SYSCR_SSBY_BIT))#define H8SYSCR_STS2 (1<<(H8SYSCR_STS2_BIT))#define H8SYSCR_STS1 (1<<(H8SYSCR_STS1_BIT))#define H8SYSCR_STS0 (1<<(H8SYSCR_STS0_BIT))#define H8SYSCR_UE (1<<(H8SYSCR_UE_BIT))#define H8SYSCR_NMIEG (1<<(H8SYSCR_NMIEG_BIT))#define H8SYSCR_SSOE (1<<(H8SYSCR_SSOE_BIT))#define H8SYSCR_RAME (1<<(H8SYSCR_RAME_BIT))/* Interrupt Enable Register */#define H8IER_IRQ5E_BIT 5 /* IRQ5 */#define H8IER_IRQ4E_BIT 4 /* IRQ4 */#define H8IER_IRQ3E_BIT 3 /* IRQ3 */#define H8IER_IRQ2E_BIT 2 /* IRQ2 */#define H8IER_IRQ1E_BIT 1 /* IRQ1 */#define H8IER_IRQ0E_BIT 0 /* IRQ0 *//* Interrupt Priority Register A */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -