source: atk2-sc3_fl850f1l/arch/v850_gcc/uart_rlin.h@ 117

Last change on this file since 117 was 117, checked in by ertl-ishikawa, 9 years ago

ATK2-SC3 1.3.2 FL850F1L(RH850F1L)依存部(GCC/GHS/CCRH)を追加

File size: 4.7 KB
RevLine 
[117]1/*
2 * TOPPERS ATK2
3 * Toyohashi Open Platform for Embedded Real-Time Systems
4 * Automotive Kernel Version 2
5 *
6 * Copyright (C) 2012-2014 by Center for Embedded Computing Systems
7 * Graduate School of Information Science, Nagoya Univ., JAPAN
8 *
9 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
10 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
11 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
12 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
13 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
14 * スコード中に含まれていること.
15 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
16 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
17 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
18 * の無保証規定を掲載すること.
19 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
20 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
21 * と.
22 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
23 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
24 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
25 * 報告すること.
26 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
27 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
28 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
29 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
30 * 免責すること.
31 *
32 * 本ソフトウェアは,AUTOSAR(AUTomotive Open System ARchitecture)仕
33 * 様に基づいている.上記の許諾は,AUTOSARの知的財産権を許諾するもので
34 * はない.AUTOSARは,AUTOSAR仕様に基づいたソフトウェアを商用目的で利
35 * 用する者に対して,AUTOSARパートナーになることを求めている.
36 *
37 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
38 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
39 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
40 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
41 * の責任を負わない.
42 *
43 * $Id: uart_rlin.h 164 2015-06-03 01:22:29Z t_ishikawa $
44 */
45
46/*
47 * シリアルI/Oデバイス(SIO)ドライバ(RLIN用)
48 */
49
50#ifndef TOPPERS_UART_RLIN_H
51#define TOPPERS_UART_RLIN_H
52
53#include "prc_sil.h"
54#include "target_serial.h"
55
56#ifdef RLIN3x_USE_PORT0
57#define RLIN3x_BASE RLIN30_BASE
58#elif defined(RLIN3x_USE_PORT1)
59#define RLIN3x_BASE RLIN31_BASE
60#elif defined(RLIN3x_USE_PORT2)
61#define RLIN3x_BASE RLIN32_BASE
62#elif defined(RLIN3x_USE_PORT3)
63#define RLIN3x_BASE RLIN33_BASE
64#elif defined(RLIN3x_USE_PORT4)
65#define RLIN3x_BASE RLIN34_BASE
66#elif defined(RLIN3x_USE_PORT5)
67#define RLIN3x_BASE RLIN35_BASE
68#else
69#error please define RLIN3x port number.
70#endif /* RLIN3x_USE_PORT0 */
71
72#define RLIN3xLWBR_B 0x00000001
73#define RLIN3xLBRP01_H 0x00000002
74#define RLIN3xLBRP0_B 0x00000002
75#define RLIN3xLBRP1_B 0x00000003
76#define RLIN3xLSTC_B 0x00000004
77#define RLIN3xLMD_B 0x00000008
78#define RLIN3xLBFC_B 0x00000009
79#define RLIN3xLSC_B 0x0000000a
80#define RLIN3xLWUP_B 0x0000000b
81#define RLIN3xLIE_B 0x0000000c
82#define RLIN3xLEDE_B 0x0000000d
83#define RLIN3xLCUC_B 0x0000000e
84#define RLIN3xLTRC_B 0x00000010
85#define RLIN3xLMST_B 0x00000011
86#define RLIN3xLST_B 0x00000012
87#define RLIN3xLEST_B 0x00000013
88#define RLIN3xLDFC_B 0x00000014
89#define RLIN3xLIDB_B 0x00000015
90#define RLIN3xLCBR_B 0x00000016
91#define RLIN3xLUDB0_B 0x00000017
92#define RLIN3xLDBR1_B 0x00000018
93#define RLIN3xLDBR2_B 0x00000019
94#define RLIN3xLDBR3_B 0x0000001a
95#define RLIN3xLDBR4_B 0x0000001b
96#define RLIN3xLDBR5_B 0x0000001c
97#define RLIN3xLDBR6_B 0x0000001d
98#define RLIN3xLDBR7_B 0x0000001e
99#define RLIN3xLDBR8_B 0x0000001f
100#define RLIN3xLUOER_B 0x00000020
101#define RLIN3xLUOR1_B 0x00000021
102#define RLIN3xLUTDR_H 0x00000024
103#define RLIN3xLUTDRL_B 0x00000024
104#define RLIN3xLUTDRH_B 0x00000025
105#define RLIN3xLURDR_H 0x00000026
106#define RLIN3xLURDRL_B 0x00000026
107#define RLIN3xLURDRH_B 0x00000027
108#define RLIN3xLUWTDR_H 0x00000028
109#define RLIN3xLUWTDRL_B 0x00000028
110#define RLIN3xLUWTDRH_B 0x00000029
111
112#ifndef TOPPERS_MACRO_ONLY
113
114/*
115 * カーネルの低レベル出力用関数
116 */
117LOCAL_INLINE void uart_putc(char8 c);
118
119LOCAL_INLINE void
120uart_putc(char8 c)
121{
122 while ((sil_reb_mem((void *) (RLIN3x_BASE + RLIN3xLST_B)) & 0x10) == 0x10) ;
123 sil_wrb_mem((void *) (RLIN3x_BASE + RLIN3xLUTDRL_B), c);
124}
125
126/*
127 * serial.c から呼び出される関数群
128 */
129
130/*
131 * 初期化処理
132 */
133extern void InitHwSerial(void);
134
135/*
136 * 終了処理
137 */
138extern void TermHwSerial(void);
139
140/*
141 * 受信コールバックハンドラ
142 */
143extern void RxSerialInt(uint8 character);
144
145extern ISR(RxHwSerialInt);
146
147#endif /* TOPPERS_MACRO_ONLY */
148#endif /* TOPPERS_UART_RLIN_H */
Note: See TracBrowser for help on using the repository browser.