source: azure_iot_hub/trunk/asp3_dcre/arch/rx630_gcc/scif.h@ 388

Last change on this file since 388 was 388, checked in by coas-nagasima, 5 years ago

Azure IoT Hub Device C SDK を使ったサンプルの追加

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/x-chdr
File size: 6.7 KB
Line 
1/*
2 * TOPPERS/ASP Kernel
3 * Toyohashi Open Platform for Embedded Real-Time Systems/
4 * Advanced Standard Profile Kernel
5 *
6 * Copyright (C) 2001-2011 by Industrial Technology Institute,
7 * Miyagi Prefectural Government, JAPAN
8 * Copyright (C) 2007-2016 by Embedded and Real-Time Systems Laboratory
9 * Graduate School of Information Science, Nagoya Univ., JAPAN
10 * Copyright (C) 2017 by Cores Co., Ltd. Japan
11 *
12 * 上記著作権者
13は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
14 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
15 * 変・再é…
16å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
17 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
18 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
19 * スコード中に含まれていること.
20 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
21 * 用できる形で再é…
22å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é…
23å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
24 * 者
25マニュアルなど)に,上記の著作権表示,この利用条件および下記
26 * の無保証規定を掲載すること.
27 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
28 * 用できない形で再é…
29å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
30 * と.
31 * (a) 再é…
32å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€…
33マニュアルなど)に,上記の著
34 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
35 * (b) 再é…
36å¸ƒã®å½¢æ…
37‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
38 * 報告すること.
39 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
40 * 害からも,上記著作権者
41およびTOPPERSプロジェクトをå…
42è²¬ã™ã‚‹ã“と.
43 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
44 * 由に基づく請求からも,上記著作権者
45およびTOPPERSプロジェクトを
46 * å…
47è²¬ã™ã‚‹ã“と.
48 *
49 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者
50お
51 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
52 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
53 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
54 * の責任を負わない.
55 *
56 * $Id: scif.h 388 2019-05-22 11:25:18Z coas-nagasima $
57 */
58
59/*
60 * FIFO内
61蔵シリアルコミュニケーションインタフェースに関する定義
62 */
63
64#ifndef TOPPERS_SCIF_H
65#define TOPPERS_SCIF_H
66
67/*
68 * SCIレジスタのベース番地の定義
69 */
70#define SCI0_BASE ((uint32_t)(SCI0_SMR_ADDR))
71#define SCI1_BASE ((uint32_t)(SCI1_SMR_ADDR))
72#define SCI2_BASE ((uint32_t)(SCI2_SMR_ADDR))
73#define SCI3_BASE ((uint32_t)(SCI3_SMR_ADDR))
74#define SCI4_BASE ((uint32_t)(SCI4_SMR_ADDR))
75#define SCI5_BASE ((uint32_t)(SCI5_SMR_ADDR))
76#define SCI6_BASE ((uint32_t)(SCI6_SMR_ADDR))
77#define SCI7_BASE ((uint32_t)(SCI7_SMR_ADDR))
78#define SCI8_BASE ((uint32_t)(SCI8_SMR_ADDR))
79#define SCI9_BASE ((uint32_t)(SCI9_SMR_ADDR))
80#define SCI10_BASE ((uint32_t)(SCI10_SMR_ADDR))
81#define SCI11_BASE ((uint32_t)(SCI11_SMR_ADDR))
82/* SCI12は下記のSCI_NUMが使用できない */
83
84/* モジュールストップコントロールレジスタB bit */
85#define SCI_NUM(base) (((intptr_t)base - SCI0_BASE) / 0x20)
86#define SCI_MSTPCRB_BIT(base) (1 << (31 - SCI_NUM(base)))
87
88/* 指定可能なクロックソース */
89#define CLK_F1 UINT_C(0x00)
90#define CLK_F4 UINT_C(0x01)
91#define CLK_F16 UINT_C(0x02)
92#define CLK_F64 UINT_C(0x03)
93
94/* シリアルモードレジスタ(SMR) */
95#define CKS UINT_C(0x03)
96#define MP UINT_C(0x04)
97#define STOP UINT_C(0x08)
98#define PM UINT_C(0x10)
99#define PE UINT_C(0x20)
100#define CHR UINT_C(0x40)
101#define CM UINT_C(0x80)
102#define ASYNC_7BIT UINT_C(0x00)
103#define ASYNC_8BIT UINT_C(0x40)
104
105/* シリアルコントロールレジスタ(SCR) */
106#define CKE UINT_C(0x03)
107#define TEIE UINT_C(0x04)
108#define RE UINT_C(0x10)
109#define TE UINT_C(0x20)
110#define RIE UINT_C(0x40)
111#define TIE UINT_C(0x80)
112
113/* シリアルステータスレジスタ(SSR) */
114#define TEND UINT_C(0x04)
115#define PER UINT_C(0x08)
116#define FER UINT_C(0x10)
117#define ORER UINT_C(0x20)
118
119/* スマートカードモードレジスタ(SCMR) */
120#define SMIF UINT_C(0x01)
121#define SINV UINT_C(0x04)
122#define SDIR UINT_C(0x08)
123#define BCP2 UINT_C(0x80)
124
125/* シリアル拡張モードレジスタ(SEMR) */
126#define ACS0 UINT_C(0x01)
127#define ABCS UINT_C(0x10)
128#define NFEN UINT_C(0x20)
129
130/* I2C モードレジスタ1(SIMR1) */
131#define IICM UINT_C(0x01)
132
133/* I2C モードレジスタ2(SIMR2) */
134#define IICINTM UINT_C(0x01)
135#define IICCSC UINT_C(0x02)
136#define IICACKT UINT_C(0x20)
137
138/* I2C モードレジスタ3(SIMR2) */
139#define IICSTAREQ UINT_C(0x01)
140#define IICRSTAREQ UINT_C(0x02)
141#define IICSTPREQ UINT_C(0x04)
142#define IICSTIF UINT_C(0x08)
143
144/* I2C ステータスレジスタ(SISR) */
145#define IICACKR UINT_C(0x01)
146
147/* SPI モードレジスタ(SPMR) */
148#define SSE UINT_C(0x01)
149#define CTSE UINT_C(0x02)
150#define MSS UINT_C(0x04)
151#define CKPOL UINT_C(0x40)
152#define CKPH UINT_C(0x80)
153
154#define SCI_SCR_FLG_ENABLE (RE | TE)
155#define SCI_SMR_FLG_ENABLE (STOP | PM | PE | CHR | CM)
156
157/*
158 * SCIレジスタの番地の定義
159 */
160#define SCI_SMR(base) ((uint8_t *)((intptr_t)base + 0x00U))
161#define SCI_BRR(base) ((uint8_t *)((intptr_t)base + 0x01U))
162#define SCI_SCR(base) ((uint8_t *)((intptr_t)base + 0x02U))
163#define SCI_TDR(base) ((uint8_t *)((intptr_t)base + 0x03U))
164#define SCI_SSR(base) ((uint8_t *)((intptr_t)base + 0x04U))
165#define SCI_RDR(base) ((uint8_t *)((intptr_t)base + 0x05U))
166#define SCI_SCMR(base) ((uint8_t *)((intptr_t)base + 0x06U))
167#define SCI_SEMR(base) ((uint8_t *)((intptr_t)base + 0x07U))
168#define SCI_SNFR(base) ((uint8_t *)((intptr_t)base + 0x08U))
169#define SCI_SIMR1(base) ((uint8_t *)((intptr_t)base + 0x09U))
170#define SCI_SIMR2(base) ((uint8_t *)((intptr_t)base + 0x0AU))
171#define SCI_SIMR3(base) ((uint8_t *)((intptr_t)base + 0x0BU))
172#define SCI_SISR(base) ((uint8_t *)((intptr_t)base + 0x0CU))
173#define SCI_SPMR(base) ((uint8_t *)((intptr_t)base + 0x0DU))
174
175#ifndef TOPPERS_MACRO_ONLY
176
177/*
178 * コールバックルーチンの識別番号
179 */
180#define SIO_RDY_SND (1U) /* 送信可能コールバック */
181#define SIO_RDY_RCV (2U) /* 受信通知コールバック */
182
183#endif /* TOPPERS_MACRO_ONLY */
184#endif /* TOPPERS_SCIF_H */
Note: See TracBrowser for help on using the repository browser.