⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hw_serial.h

📁 toppers操作系统源码
💻 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 Dep. of Computer Science and Engineering *                   Tomakomai National College of Technology, JAPAN *  Copyright (C) 2001-2004 by Industrial Technology Institute, *                              Miyagi Prefectural Government, JAPAN *  *  惧淡螟侯涪荚は·笆布の (1)×(4) の掘凤か·Free Software Foundation  *  によって给山されている GNU General Public License の Version 2 に淡 *  揭されている掘凤を塔たす眷圭に嘎り·塑ソフトウェア∈塑ソフトウェア *  を猖恃したものを崔むˉ笆布票じ∷を蝗脱ˇ剩澜ˇ猖恃ˇ浩芹邵∈笆布· *  网脱と钙ぶ∷することを痰浸で钓满するˉ *  (1) 塑ソフトウェアをソ〖スコ〖ドの妨で网脱する眷圭には·惧淡の螟侯 *      涪山绩·この网脱掘凤および布淡の痰瘦沮惮年が·そのままの妨でソ〖 *      スコ〖ド面に崔まれていることˉ *  (2) 塑ソフトウェアを·ライブラリ妨及など·戮のソフトウェア倡券に蝗 *      脱できる妨で浩芹邵する眷圭には·浩芹邵に燃うドキュメント∈网脱 *      荚マニュアルなど∷に·惧淡の螟侯涪山绩·この网脱掘凤および布淡 *      の痰瘦沮惮年を非很することˉ *  (3) 塑ソフトウェアを·怠达に寥み哈むなど·戮のソフトウェア倡券に蝗 *      脱できない妨で浩芹邵する眷圭には·肌のいずれかの掘凤を塔たすこ *      とˉ *    (a) 浩芹邵に燃うドキュメント∈网脱荚マニュアルなど∷に·惧淡の螟 *        侯涪山绩·この网脱掘凤および布淡の痰瘦沮惮年を非很することˉ *    (b) 浩芹邵の妨轮を·侍に年める数恕によって·TOPPERSプロジェクトに *        鼠桂することˉ *  (4) 塑ソフトウェアの网脱により木儡弄または粗儡弄に栏じるいかなる禄 *      巢からも·惧淡螟侯涪荚およびTOPPERSプロジェクトを倘勒することˉ *  *  塑ソフトウェアは·痰瘦沮で捏丁されているものであるˉ惧淡螟侯涪荚お *  よびTOPPERSプロジェクトは·塑ソフトウェアに簇して·その努脱材墙拉も *  崔めて·いかなる瘦沮も乖わないˉまた·塑ソフトウェアの网脱により木 *  儡弄または粗儡弄に栏じたいかなる禄巢に簇しても·その勒扦を砷わないˉ *//* *	シリアルI/Oデバイス∈SIO∷ドライバ∈H8Sファミリ〖脱∷ */#ifndef _HW_SERIAL_H_#define _HW_SERIAL_H_#include <h8s_sci.h>/* *  SIOの充哈みハンドラのベクタ戎规 *//* ポ〖ト1 */#define INHNO_SERIAL1_ERROR	IRQ_ERI0#define INHNO_SERIAL1_IN	IRQ_RXI0#define INHNO_SERIAL1_OUT	IRQ_TXI0#if TNUM_PORT >= 2/* ポ〖ト2 */#define INHNO_SERIAL2_ERROR	IRQ_ERI1#define INHNO_SERIAL2_IN	IRQ_RXI1#define INHNO_SERIAL2_OUT	IRQ_TXI1#endif /* TNUM_PORT *//* *  SIOドライバの介袋步ル〖チン */#define	sio_initialize		h8s_sci_initialize/* *  カ〖ネル弹瓢箕脱の介袋步 (sys_putcで网脱) */#define sio_init		h8s_sci_init#ifndef _MACRO_ONLY/* *  シリアルI/Oポ〖トのオ〖プン */Inline SIOPCB *sio_opn_por(ID siopid, VP_INT exinf){	SIOPCB	*siopcb;	BOOL	openflag;	/*	 *  オ〖プンしたポ〖トがあるかを openflag に粕んでおく。	 */	openflag = h8s_sci_openflag();	/*	 * モジュ〖ルストップモ〖ド豺近	 */#if TNUM_SIOP < 2	h8s_andh( (VP) MSTPCR, ~( BIT5 ) );#else /* TNUM_SIOP < 2 */	h8s_andh( (VP) MSTPCR, ~( BIT6 | BIT5 ) );#endif /* TNUM_SIOP < 2 */	/*	 *  デバイス巴赂のオ〖プン借妄	 */	siopcb = h8s_sci_opn_por(siopid, exinf);	/*	 *  シリアルI/O充哈みの充哈みレベルを肋年する。	 */	if (!openflag) {		/* 充哈みレベル肋年 */#ifndef GDB_STUB	/* SCI0 は GDB_STUB で网脱する。 */		icu_set_ilv( (VP) IPRJ, IPR_LOW, SCI0_INT_LVL );#endif /* GDB_STUB */#if TNUM_SIOP >= 2		icu_set_ilv( (VP) IPRK, IPR_UPR, SCI1_INT_LVL );#endif /* TNUM_SIOP >= 2 */	}	return(siopcb);}/* *  シリアルI/Oポ〖トのクロ〖ズ */Inline voidsio_cls_por(SIOPCB *siopcb){	/*	 *  デバイス巴赂のクロ〖ズ借妄	 */	h8s_sci_cls_por(siopcb);	/*	 *  モジュ〖ルストップモ〖ドセット	 */#if TNUM_SIOP < 2	h8s_orh( (VP) MSTPCR,   BIT5 );#else /* TNUM_SIOP < 2 */	h8s_orh( (VP) MSTPCR, ( BIT6 | BIT5 ) );#endif /* TNUM_SIOP < 2 */	/*	 *  シリアルI/O充哈みをマスクする。	 */	if (!h8s_sci_openflag()) {		/* 充哈みマスク借妄 */#ifndef GDB_STUB	/* SCI0 は GDB_STUB で网脱する。 */		icu_set_ilv( (VP) IPRJ, IPR_LOW, 0 );#endif /* GDB_STUB */#if TNUM_SIOP >= 2		icu_set_ilv( (VP) IPRK, IPR_UPR, 0 );#endif /* TNUM_SIOP >= 2 */	}}#endif /* _MACRO_ONLY *//* *  SIOの充哈みハンドラ *    sio1_handler_in    : 减慨充哈みハンドラ *    sio1_handler_out   : 流慨充哈みハンドラ *    sio1_handler_error : 减慨エラ〖充哈みハンドラ *//* ポ〖ト1 */#define	sio1_handler_in		h8s_sci0_isr_in#define	sio1_handler_out	h8s_sci0_isr_out#define	sio1_handler_error	h8s_sci0_isr_error#if TNUM_SIOP >= 2/* ポ〖ト2 */#define	sio2_handler_in		h8s_sci1_isr_in#define	sio2_handler_out	h8s_sci1_isr_out#define	sio2_handler_error	h8s_sci1_isr_error#endif /* TNUM_SIOP >= 2 *//* *  シリアルI/Oポ〖トへの矢机流慨 */#define	sio_snd_chr		h8s_sci_snd_chr/* *  シリアルI/Oポ〖トへの矢机流慨∈ポ〖リング∷ */#define	sio_snd_chr_pol		h8s_sci0_putchar_pol/* *  シリアルI/Oポ〖トからの矢机减慨 */#define	sio_rcv_chr		h8s_sci_rcv_chr/* *  シリアルI/Oポ〖トからのコ〖ルバックの钓材 */#define	sio_ena_cbr		h8s_sci_ena_cbr/* *  シリアルI/Oポ〖トからのコ〖ルバックの敦贿 */#define	sio_dis_cbr		h8s_sci_dis_cbr/* *  シリアルI/Oポ〖トからの流慨材墙コ〖ルバック */#define	sio_ierdy_snd		h8s_sci_ierdy_snd/* *  シリアルI/Oポ〖トからの减慨奶梦コ〖ルバック */#define	sio_ierdy_rcv		h8s_sci_ierdy_rcv#endif /* _HW_SERIAL_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -