]> rtime.felk.cvut.cz Git - pes-rpp/rpp-test-sw.git/blob - include/mout.h
Added command to set and read HOUT port
[pes-rpp/rpp-test-sw.git] / include / mout.h
1 /** @file mout.h
2 *   @brief MOUT port header file
3 *   @date 29.August.2012
4 *
5 *  Aliases, constants and function prototype relevant for HOUT port
6 *
7 */
8
9 #ifndef MOUT_H_
10 #define MOUT_H_
11 /* Include files */
12 #include "gio.h"
13 #include "het.h"
14 #include "mibspi.h"
15
16 /** @brief Alias for getBit function */
17 #define MOUTGetBit( port, bit ) gioGetBit(port, bit)
18 /** @brief Alias for setBit function */
19 #define MOUTSetBit( port, bit, value ) gioSetBit(port, bit, value)
20
21 /** @brief Alias port address used by MOUT port */
22 #define MOUT_PORT_GIO   gioPORTB
23 /** @brief Alias port address used by MOUT port */
24 #define MOUT_PORT_SPI   mibspiPORT5
25 /** @brief Alias port address used by MOUT port */
26 #define  MOUT_PORT_HET  hetPORT1
27
28 /** @brief Constant for MOUT bit index in DOUT register */
29 #define MOUT6_EN_BIT    0
30 /** @brief Constant for MOUT bit index in DOUT register */
31 #define MOUT5_EN_BIT    1
32 /** @brief Constant for MOUT bit index in DOUT register */
33 #define MOUT6_IN_BIT    2
34 /** @brief Constant for MOUT bit index in DOUT register */
35 #define MOUT5_IN_BIT    3
36 /** @brief Constant for MOUT bit index in DOUT register */
37 #define MOUT4_EN_BIT    4
38 /** @brief Constant for MOUT bit index in DOUT register */
39 #define MOUT3_EN_BIT    5
40 /** @brief Constant for MOUT bit index in DOUT register */
41 #define MOUT4_IN_BIT    6
42 /** @brief Constant for MOUT bit index in DOUT register */
43 #define MOUT3_IN_BIT    7
44 /** @brief Constant for MOUT bit index in DOUT register */
45 #define MOUT2_EN_BIT    PIN_SIMO_2
46 /** @brief Constant for MOUT bit index in DOUT register */
47 #define MOUT1_EN_BIT    PIN_SIMO_1
48 /** @brief Constant for MOUT bit index in DOUT register */
49 #define MOUT2_IN_BIT    PIN_HET_14
50 /** @brief Constant for MOUT bit index in DOUT register */
51 #define MOUT1_IN_BIT    PIN_HET_9
52
53 /** @brief Alias for pair PORT, BIT which defines pin for access */
54 #define MOUT6_EN        MOUT_PORT_GIO,MOUT6_EN_BIT
55 /** @brief Alias for pair PORT, BIT which defines pin for access */
56 #define MOUT5_EN        MOUT_PORT_GIO,MOUT5_EN_BIT
57 /** @brief Alias for pair PORT, BIT which defines pin for access */
58 #define MOUT6_IN        MOUT_PORT_GIO,MOUT6_IN_BIT
59 /** @brief Alias for pair PORT, BIT which defines pin for access */
60 #define MOUT5_IN        MOUT_PORT_GIO,MOUT5_IN_BIT
61 /** @brief Alias for pair PORT, BIT which defines pin for access */
62 #define MOUT4_EN        MOUT_PORT_GIO,MOUT4_EN_BIT
63 /** @brief Alias for pair PORT, BIT which defines pin for access */
64 #define MOUT3_EN        MOUT_PORT_GIO,MOUT3_EN_BIT
65 /** @brief Alias for pair PORT, BIT which defines pin for access */
66 #define MOUT4_IN        MOUT_PORT_GIO,MOUT4_IN_BIT
67 /** @brief Alias for pair PORT, BIT which defines pin for access */
68 #define MOUT3_IN        MOUT_PORT_GIO,MOUT3_IN_BIT
69 /** @brief Alias for pair PORT, BIT which defines pin for access */
70 #define MOUT2_EN        MOUT_PORT_DMM,MOUT2_EN_BIT
71 /** @brief Alias for pair PORT, BIT which defines pin for access */
72 #define MOUT1_EN        MOUT_PORT_DMM,MOUT1_EN_BIT
73 /** @brief Alias for pair PORT, BIT which defines pin for access */
74 #define MOUT2_IN        MOUT_PORT_HET,MOUT2_IN_BIT
75 /** @brief Alias for pair PORT, BIT which defines pin for access */
76 #define MOUT1_IN        MOUT_PORT_HET,MOUT1_IN_BIT
77
78 /** Set value to ports connected to MOUT
79 *   @param[in] value to write to port
80 *                       - bit 0 - MOUT1_IN - defined as output port HETPORT1
81 *                       - bit 1 - MOUT2_IN - defined as output port HETPORT1
82 *                       - bit 2 - MOUT3_IN - defined as output port GIOB
83 *                       - bit 3 - MOUT4_IN - defined as output port GIOB
84 *                       - bit 4 - MOUT5_IN - defined as output port GIOB
85 *                       - bit 5 - MOUT6_IN - defined as output port GIOB
86 *                       - bit 6 - MOUT1_EN - defined as input port SPIPORT
87 *                       - bit 7 - MOUT2_EN - defined as input port SPIPORT
88 *                       - bit 8 - MOUT3_EN - defined as input port GIOB
89 *                       - bit 9 - MOUT4_EN - defined as input port GIOB
90 *                       - bit 10 - MOUT5_EN - defined as input port GIOB
91 *                       - bit 11 - MOUT6_EN - defined as input port GIOB
92 *   Set value to whole MOUT port. Setting values to bits connected with ports defined as output makes no effect.
93 */
94 void moutSetPort(uint32_t value);
95 /** @brief Get value from ports connected to MOUT
96 *                       - bit 0 - MOUT1_IN - defined as output port HETPORT1
97 *                       - bit 1 - MOUT2_IN - defined as output port HETPORT1
98 *                       - bit 2 - MOUT3_IN - defined as output port GIOB
99 *                       - bit 3 - MOUT4_IN - defined as output port GIOB
100 *                       - bit 4 - MOUT5_IN - defined as output port GIOB
101 *                       - bit 5 - MOUT6_IN - defined as output port GIOB
102 *                       - bit 6 - MOUT1_EN - defined as input port SPIPORT
103 *                       - bit 7 - MOUT2_EN - defined as input port SPIPORT
104 *                       - bit 8 - MOUT3_EN - defined as input port GIOB
105 *                       - bit 9 - MOUT4_EN - defined as input port GIOB
106 *                       - bit 10 - MOUT5_EN - defined as input port GIOB
107 *                       - bit 11 - MOUT6_EN - defined as input port GIOB
108 *   Get value from whole MOUT port. Getting values from ports defined as output returns values last asserted by Controller itself.
109 *   @return Value of port
110 */
111 uint32_t moutGetPort();
112
113 #endif /* MOUT_H_ */