Choco OS  V.0.16.9.0
Join to the chocolate world
oc_channels_defs.h
1 
28 #ifndef SYSTEM_PORTABLE_INC_TI_LM4F_LM4F120H5QR_OC_CHANNELS_DEFS_H_
29 #define SYSTEM_PORTABLE_INC_TI_LM4F_LM4F120H5QR_OC_CHANNELS_DEFS_H_
30 
31 #include <oc_1word.h>
32 
33 #define oC_MODULE_CHANNELS_(MODULE_NAME) oC_1WORD_FROM_2(oC_MODULE_CHANNELS_ , MODULE_NAME )
34 
35 #define oC_CHANNEL_MASK_WIDTH 9ULL
36 
37 // par1 name par2 base address param3 rmapsdefs
38 
39 #define oC_MODULE_CHANNELS_GPIO(MAKE_CHANNEL) \
40  MAKE_CHANNEL( PORTA , PORTA , GPIO ) \
41  MAKE_CHANNEL( PORTB , PORTB , GPIO ) \
42  MAKE_CHANNEL( PORTC , PORTC , GPIO ) \
43  MAKE_CHANNEL( PORTD , PORTD , GPIO ) \
44  MAKE_CHANNEL( PORTE , PORTE , GPIO ) \
45  MAKE_CHANNEL( PORTF , PORTF , GPIO ) \
46 
47 
48 #define oC_MODULE_CHANNELS_DMA(MAKE_CHANNEL) \
49  MAKE_CHANNEL( uDMA0 , uDMA0, DMA ) \
50  MAKE_CHANNEL( uDMA1 , uDMA0, DMA ) \
51  MAKE_CHANNEL( uDMA2 , uDMA0, DMA ) \
52  MAKE_CHANNEL( uDMA3 , uDMA0, DMA ) \
53  MAKE_CHANNEL( uDMA4 , uDMA0, DMA ) \
54  MAKE_CHANNEL( uDMA5 , uDMA0, DMA ) \
55  MAKE_CHANNEL( uDMA6 , uDMA0, DMA ) \
56  MAKE_CHANNEL( uDMA7 , uDMA0, DMA ) \
57  MAKE_CHANNEL( uDMA8 , uDMA0, DMA ) \
58  MAKE_CHANNEL( uDMA9 , uDMA0, DMA ) \
59  MAKE_CHANNEL( uDMA10 , uDMA0, DMA ) \
60  MAKE_CHANNEL( uDMA11 , uDMA0, DMA ) \
61  MAKE_CHANNEL( uDMA12 , uDMA0, DMA ) \
62  MAKE_CHANNEL( uDMA13 , uDMA0, DMA ) \
63  MAKE_CHANNEL( uDMA14 , uDMA0, DMA ) \
64  MAKE_CHANNEL( uDMA15 , uDMA0, DMA ) \
65  MAKE_CHANNEL( uDMA16 , uDMA0, DMA ) \
66  MAKE_CHANNEL( uDMA17 , uDMA0, DMA ) \
67  MAKE_CHANNEL( uDMA18 , uDMA0, DMA ) \
68  MAKE_CHANNEL( uDMA19 , uDMA0, DMA ) \
69  MAKE_CHANNEL( uDMA20 , uDMA0, DMA ) \
70  MAKE_CHANNEL( uDMA21 , uDMA0, DMA ) \
71  MAKE_CHANNEL( uDMA22 , uDMA0, DMA ) \
72  MAKE_CHANNEL( uDMA23 , uDMA0, DMA ) \
73  MAKE_CHANNEL( uDMA24 , uDMA0, DMA ) \
74  MAKE_CHANNEL( uDMA25 , uDMA0, DMA ) \
75  MAKE_CHANNEL( uDMA26 , uDMA0, DMA ) \
76  MAKE_CHANNEL( uDMA27 , uDMA0, DMA ) \
77  MAKE_CHANNEL( uDMA28 , uDMA0, DMA ) \
78  MAKE_CHANNEL( uDMA29 , uDMA0, DMA ) \
79  MAKE_CHANNEL( uDMA30 , uDMA0, DMA ) \
80  MAKE_CHANNEL( uDMA31 , uDMA0, DMA ) \
81 
82 
83 #define oC_MODULE_CHANNELS_TIMER(MAKE_CHANNEL) \
84  MAKE_CHANNEL( Timer0 , Timer0 , TIMER ) \
85  MAKE_CHANNEL( Timer1 , Timer1 , TIMER ) \
86  MAKE_CHANNEL( Timer2 , Timer2 , TIMER ) \
87  MAKE_CHANNEL( Timer3 , Timer3 , TIMER ) \
88  MAKE_CHANNEL( Timer4 , Timer4 , TIMER ) \
89  MAKE_CHANNEL( Timer5 , Timer5 , TIMER ) \
90  MAKE_CHANNEL( WideTimer0 , WideTimer0 , TIMER ) \
91  MAKE_CHANNEL( WideTimer1 , WideTimer1 , TIMER ) \
92  MAKE_CHANNEL( WideTimer2 , WideTimer2 , TIMER ) \
93  MAKE_CHANNEL( WideTimer3 , WideTimer3 , TIMER ) \
94  MAKE_CHANNEL( WideTimer4 , WideTimer4 , TIMER ) \
95  MAKE_CHANNEL( WideTimer5 , WideTimer5 , TIMER ) \
96 
97 
98 #define oC_MODULE_CHANNELS_WDG(MAKE_CHANNEL) \
99  MAKE_CHANNEL( WDT0 , WDT0 , WDGTIMER ) \
100  MAKE_CHANNEL( WDT1 , WDT1 , WDGTIMER ) \
101 
102 
103 #define oC_MODULE_CHANNELS_ADC(MAKE_CHANNEL) \
104  MAKE_CHANNEL( ADC0 , ADC0 , ADC ) \
105  MAKE_CHANNEL( ADC1 , ADC1 , ADC ) \
106 
107 
108 #define oC_MODULE_CHANNELS_UART(MAKE_CHANNEL) \
109  MAKE_CHANNEL( UART0 , UART0 , UART ) \
110  MAKE_CHANNEL( UART1 , UART1 , UART ) \
111  MAKE_CHANNEL( UART2 , UART2 , UART ) \
112  MAKE_CHANNEL( UART3 , UART3 , UART ) \
113  MAKE_CHANNEL( UART4 , UART4 , UART ) \
114  MAKE_CHANNEL( UART5 , UART5 , UART ) \
115  MAKE_CHANNEL( UART6 , UART6 , UART ) \
116  MAKE_CHANNEL( UART7 , UART7 , UART ) \
117 
118 
119 #define oC_MODULE_CHANNELS_SPI(MAKE_CHANNEL) \
120  MAKE_CHANNEL( SSI0 , SSI0 , SPI ) \
121  MAKE_CHANNEL( SSI1 , SSI1 , SPI ) \
122  MAKE_CHANNEL( SSI2 , SSI2 , SPI ) \
123  MAKE_CHANNEL( SSI3 , SSI3 , SPI ) \
124 
125 
126 #define oC_MODULE_CHANNELS_I2C(MAKE_CHANNEL) \
127  MAKE_CHANNEL( I2C0 , I2C0 , I2C ) \
128  MAKE_CHANNEL( I2C1 , I2C1 , I2C ) \
129  MAKE_CHANNEL( I2C2 , I2C2 , I2C ) \
130  MAKE_CHANNEL( I2C3 , I2C3 , I2C ) \
131 
132 
133 #define oC_MODULE_CHANNELS_CAN(MAKE_CHANNEL) \
134  MAKE_CHANNEL( CAN0 , CAN0 , CAN ) \
135 
136 
137 #define oC_MODULE_CHANNELS_USB(MAKE_CHANNEL) \
138  MAKE_CHANNEL( USB0 , USB0 , USB ) \
139 
140 
141 #define oC_MODULE_CHANNELS_ACOM(MAKE_CHANNEL) \
142  MAKE_CHANNEL( ACOM0 , ACOM0 , ACOM ) \
143 
144 #define oC_MODULES_LIST(MAKE_MODULE_CHANNELS) \
145  MAKE_MODULE_CHANNELS( GPIO ) \
146  MAKE_MODULE_CHANNELS( DMA ) \
147  MAKE_MODULE_CHANNELS( TIMER ) \
148  MAKE_MODULE_CHANNELS( WDG ) \
149  MAKE_MODULE_CHANNELS( ADC ) \
150  MAKE_MODULE_CHANNELS( UART ) \
151  MAKE_MODULE_CHANNELS( SPI ) \
152  MAKE_MODULE_CHANNELS( I2C ) \
153  MAKE_MODULE_CHANNELS( CAN ) \
154  MAKE_MODULE_CHANNELS( USB ) \
155  MAKE_MODULE_CHANNELS( ACOM ) \
156 
157 
158 #endif /* SYSTEM_PORTABLE_INC_TI_LM4F_LM4F120H5QR_OC_BA_DEFS_H_ */
Contains macros for creating one word from more words in macros.