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

📄 tl16c550cfn.h

📁 符合日本著名的ITRON规范的开源操作系统。 TOPPERS/JSP内核就是TOPPERS工程按μITRON4.0研发的第一个 软件
💻 H
字号:
/* *  TOPPERS/JSP Kernel *      Toyohashi Open Platform for Embedded Real-Time Systems/ *      Just Standard Profile Kernel *  *  Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory *                              Toyohashi Univ. of Technology, JAPAN *  *  惧淡螟侯涪荚は·笆布の (1)×(4) の掘凤か·Free Software Foundation  *  によって给山されている GNU General Public License の Version 2 に淡 *  揭されている掘凤を塔たす眷圭に嘎り·塑ソフトウェア∈塑ソフトウェア *  を猖恃したものを崔むˉ笆布票じ∷を蝗脱ˇ剩澜ˇ猖恃ˇ浩芹邵∈笆布· *  网脱と钙ぶ∷することを痰浸で钓满するˉ *  (1) 塑ソフトウェアをソ〖スコ〖ドの妨で网脱する眷圭には·惧淡の螟侯 *      涪山绩·この网脱掘凤および布淡の痰瘦沮惮年が·そのままの妨でソ〖 *      スコ〖ド面に崔まれていることˉ *  (2) 塑ソフトウェアを·ライブラリ妨及など·戮のソフトウェア倡券に蝗 *      脱できる妨で浩芹邵する眷圭には·浩芹邵に燃うドキュメント∈网脱 *      荚マニュアルなど∷に·惧淡の螟侯涪山绩·この网脱掘凤および布淡 *      の痰瘦沮惮年を非很することˉ *  (3) 塑ソフトウェアを·怠达に寥み哈むなど·戮のソフトウェア倡券に蝗 *      脱できない妨で浩芹邵する眷圭には·肌のいずれかの掘凤を塔たすこ *      とˉ *    (a) 浩芹邵に燃うドキュメント∈网脱荚マニュアルなど∷に·惧淡の螟 *        侯涪山绩·この网脱掘凤および布淡の痰瘦沮惮年を非很することˉ *    (b) 浩芹邵の妨轮を·侍に年める数恕によって·TOPPERSプロジェクトに *        鼠桂することˉ *  (4) 塑ソフトウェアの网脱により木儡弄または粗儡弄に栏じるいかなる禄 *      巢からも·惧淡螟侯涪荚およびTOPPERSプロジェクトを倘勒することˉ *  *  塑ソフトウェアは·痰瘦沮で捏丁されているものであるˉ惧淡螟侯涪荚お *  よびTOPPERSプロジェクトは·塑ソフトウェアに簇して·その努脱材墙拉も *  崔めて·いかなる瘦沮も乖わないˉまた·塑ソフトウェアの网脱により木 *  儡弄または粗儡弄に栏じたいかなる禄巢に簇しても·その勒扦を砷わないˉ *  *  @(#) $Id: tl16c550cfn.h,v 1.3 2003/12/04 08:25:44 honda Exp $ *//* * TL16C550CFN脱 词白SIOドライバ */#ifndef _TL16C550CFN_H_#define _TL16C550CFN_H_#include <t_config.h>/*********************************************** *  I/O  メモリˇマップドˇレジスタ            ************************************************//* *  complex Programmable Logic Device (CPLD)   * *  I/O メモリˇマップドˇレジスタ                 * *//*  レジスタ アドレス */#ifndef _MACRO_ONLYvolatile ioport UH	port0;volatile ioport UH	port1;volatile ioport UH	port2;volatile ioport UH	port3;volatile ioport UH	port4;volatile ioport UH	port5;volatile ioport UH	port6;#endif /* _MACRO_ONLY *//*  CPLD レジスタ */#define CPLD_CTRL1	port0#define CPLD_STAT	port1#define CPLD_DMCTRL	port2#define CPLD_DBIO	port3#define CPLD_CTRL2	port4#define CPLD_SEM0	port5#define CPLD_SEM1	port6/* *  UART I/O メモリˇマップドˇレジスタ * *//*  レジスタ アドレス */#ifndef _MACRO_ONLYvolatile ioport UH	port4000;volatile ioport UH	port4001;volatile ioport UH	port4002;volatile ioport UH	port4003;volatile ioport UH	port4004;volatile ioport UH	port4005;volatile ioport UH	port4006;volatile ioport UH	port4007;#endif /* _MACRO_ONLY *//*  UART レジスタ  */#define UART_RBR	port4000#define UART_THR	port4000#define UART_IER	port4001#define UART_IIR	port4002#define UART_FCR	port4002#define UART_LCR	port4003#define UART_MCR	port4004#define UART_LSR	port4005#define UART_MSR	port4006#define UART_SCR	port4007/* *  笆布のレジスタにアクセスする涟に、 *  DLAB=1 (b7 of LCR) をセットする涩妥がある */#define UART_DLL	port4000#define UART_DLM	port4001/* *  ビットフィ〖ルドの年盗 */#define FCR_FIFO	0x01#define FCR_RFRST	0x02#define FCR_TFRST	0x04#define FIFO_TRIG	0x00#define LCR_DLAB	0x80/* 减慨流慨充り哈みの年盗 */#define IER_ERBI	0x01  /* 减慨充り哈み */#define IER_RIE		IER_ERBI #define IER_ETBEI	0x02  /* 流慨充り哈み */#define IER_TIE		IER_ETBEI#define LSR_DR		0x01#define LSR_THRE	0x20#define LSR_TEMT	0x40#define IIR_RXINT	0x04#define IIR_TXINT	0x02/* *  UARTのボ〖レ〖トの肋年 *//* * BAUD RATE 2 : 115200 bps * BAUD RATE 4 : 57600  bps */#define UART_BAUD_RATE    2#ifndef _MACRO_ONLY/* *  シリアルI/Oポ〖ト介袋步ブロック */typedef struct sio_port_initialization_block {	VP	dummy;} SIOPINIB;/* *  シリアルI/Oポ〖ト瓷妄ブロック */typedef struct sio_port_control_block {	const SIOPINIB	*siopinib;  /* シリアルI/Oポ〖ト介袋步ブロック */	VP_INT	exinf;			/* 橙磨攫鼠 */	BOOL	openflag;		/* オ〖プン貉みフラグ */	BOOL	getready;		/* 矢机を减慨した觉轮 */	BOOL	putready;		/* 矢机を减慨できる觉轮 */} SIOPCB;/* *  コ〖ルバックル〖チンの急侍戎规 */#define SIO_ERDY_SND    1u              /* 流慨材墙コ〖ルバック */#define SIO_ERDY_RCV    2u              /* 减慨奶梦コ〖ルバック *//* * カ〖ネル弹瓢箕脱の介袋步(sys_putcを蝗脱するため) */extern void	uart_init(void);/* *  SIOドライバの介袋步ル〖チン */extern void	uart_initialize(void);/* *  オ〖プンしているポ〖トがあるか々 */extern BOOL	uart_openflag(void);/* *  シリアルI/Oポ〖トのオ〖プン */extern SIOPCB	*uart_opn_por(ID siopid, VP_INT exinf);/* *  シリアルI/Oポ〖トのクロ〖ズ */extern void	uart_cls_por(SIOPCB *siopcb);/* *  シリアルI/Oポ〖トへの矢机流慨 */extern BOOL	uart_snd_chr(SIOPCB *siopcb, char chr);/* *  シリアルI/Oポ〖トからの矢机减慨 */extern INT	uart_rcv_chr(SIOPCB *siopcb);/* *  シリアルI/Oポ〖トからのコ〖ルバックの钓材 */extern void	uart_ena_cbr(SIOPCB *siopcb, UINT cbrtn);/* *  シリアルI/Oポ〖トからのコ〖ルバックの敦贿 */extern void	uart_dis_cbr(SIOPCB *siopcb, UINT cbrtn);/* *  SIOの充哈みサ〖ビスル〖チン */extern void	uart_isr(void);/* *  シリアルI/Oポ〖トからの流慨材墙コ〖ルバック */extern void	uart_ierdy_snd(VP_INT exinf);/* *  シリアルI/Oポ〖トからの减慨奶梦コ〖ルバック */extern void	uart_ierdy_rcv(VP_INT exinf);/* ポ〖リングでシリアルに流慨 */Inline charuart_putc(char c){	while ((UART_LSR & LSR_THRE) == 0);      /*  流慨レジスタが鄂かどうか  */	UART_THR = c;	return(c);}#endif /* _MACRO_ONLY */#endif /* _TL16C550CFN_H_ */

⌨️ 快捷键说明

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