source: autosar_os_training/trunk/driver/device.h@ 124

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

AUTOSAR OS教材用のファイルをコミット.

File size: 2.1 KB
Line 
1/*
2 *
3 * デバイス操作関数群の外部宣言
4 *
5 */
6#ifndef _DEVICE_H_
7#define _DEVICE_H_
8
9#include "Os.h"
10
11/*
12 * LEDのON/OFFパターン
13 */
14#define LED1 0x01
15#define LED2 0x02
16#define LED3 0x04
17#define LED4 0x08
18#define LED_OFF 0x00
19
20/*
21 * LED接続ポート初期化
22 */
23extern void led_init(void);
24
25/*
26 * LED接続ポート書き込み
27 */
28extern void led_out(uint8 led_data);
29
30
31/*
32 * DIPスイッチ接続ビット
33 */
34#define DSW1 0x01
35#define DSW2 0x02
36#define DSW3 0x04
37#define DSW4 0x08
38
39
40/*
41 * DIPスイッチ接続ポート初期化
42 */
43extern void switch_dip_init(void);
44
45/*
46 * DIPスイッチ状態の読み込み
47 */
48extern uint8 switch_dip_sense(void);
49
50/*
51 * ポート1のPUSHスイッチ接続ビット
52 */
53#define PSW1 0x01
54#define PSW2 0x02
55#define PSW_MASK (PSW2|PSW1)
56
57/*
58 * PUSHスイッチ接続ポート初期化
59 */
60extern void switch_push_init(void);
61
62/*
63 * PUSHスイッチ状態の読み込み
64 */
65extern uint8 switch_push_sense(void);
66
67
68
69/*
70 * INT3(PSW2)割込み番号
71 */
72#define INT3_INHNO 4
73#define SW9_INHNO 4
74
75
76/*
77 * PSW2割込み初期化
78 */
79extern void sw9_int_init(void);
80
81/*
82 * PSW1割込み番号
83 */
84#define INT4_INHNO 9
85#define SW8_INHNO 9
86
87
88/*
89 * INT4(PSW1)割込み初期化
90 */
91extern void sw8_int_init(void);
92
93/*
94 * LEDとスイッチの状態マクロ
95 */
96#define ON 1 /* LEDやスイッチON状態 */
97#define OFF 0 /* LEDやスイッチOFF状態 */
98
99
100/*
101 * LEDとスイッチの個別設定・読み込み関数群
102 */
103extern void set_led1_state(unsigned char state);
104extern void set_led2_state(unsigned char state);
105extern void set_led3_state(unsigned char state);
106extern void set_led4_state(unsigned char state);
107extern unsigned char get_sw1_state(void);
108extern unsigned char get_sw2_state(void);
109extern unsigned char get_sw3_state(void);
110extern unsigned char get_sw4_state(void);
111extern unsigned char get_sw7_state(void);
112extern unsigned char get_sw8_state(void);
113
114#endif /* _DEVICE_H_ */
Note: See TracBrowser for help on using the repository browser.