FreeHIL
Loading...
Searching...
No Matches
FH_AO_Configs.h
Go to the documentation of this file.
1/**
2 * @file
3 * @brief
4 * <b>File Map:</b>\n
5 * <b>FH_Root</b>, Section <b>FH_Perif</b>, <b>FH_AO</b> (Analog Output), <b>FH_AO_Configs</b>\n
6 * In this file, different configurations of <b>FH_AO</b> (Analog Output) could be set
7 *
8 * @attention <b>FH</b> user could left this file intact
9 *
10 *******************************************************************************
11 * SPDX-License-Identifier: Apache-2.0
12 *
13 * Copyright 2026 Vahid Hasirchi
14 *
15 * Licensed under the Apache License, Version 2.0 (the "License");
16 * you may not use this file except in compliance with the License.
17 * You may obtain a copy of the License at
18 *
19 * http://www.apache.org/licenses/LICENSE-2.0
20 *
21 * Unless required by applicable law or agreed to in writing, software
22 * distributed under the License is distributed on an "AS IS" BASIS,
23 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
24 * See the License for the specific language governing permissions and
25 * limitations under the License.
26 ********************************************************************************
27
28 *
29 * <b>For more information refer to FreeHIL.com</b>
30 *
31*/
32/* Define to prevent recursive inclusion -------------------------------------*/
33#ifndef FH_AO_Configs_H
34#define FH_AO_Configs_H
35
36/* Includes ------------------------------------------------------------------*/
40
41/*!
42 <b>FH_AO01 - FH_AO64</b> shall be defined here to be utilized in different parts of the <b>FH</b> source code\n
43 <b>FH_AO_MaxPeripheralNumber</b> is the maximum number of the <b>FH_AO</b> (Analog Output)
44*/
45
46#if FH_AO_MaxPeripheralNumber > 0
47#define FH_AO01
48#endif
49#if FH_AO_MaxPeripheralNumber > 1
50#define FH_AO02
51#endif
52#if FH_AO_MaxPeripheralNumber > 2
53#define FH_AO03
54#endif
55#if FH_AO_MaxPeripheralNumber > 3
56#define FH_AO04
57#endif
58#if FH_AO_MaxPeripheralNumber > 4
59#define FH_AO05
60#endif
61#if FH_AO_MaxPeripheralNumber > 5
62#define FH_AO06
63#endif
64#if FH_AO_MaxPeripheralNumber > 6
65#define FH_AO07
66#endif
67#if FH_AO_MaxPeripheralNumber > 7
68#define FH_AO08
69#endif
70#if FH_AO_MaxPeripheralNumber > 8
71#define FH_AO09
72#endif
73#if FH_AO_MaxPeripheralNumber > 9
74#define FH_AO10
75#endif
76#if FH_AO_MaxPeripheralNumber > 10
77#define FH_AO11
78#endif
79#if FH_AO_MaxPeripheralNumber > 11
80#define FH_AO12
81#endif
82#if FH_AO_MaxPeripheralNumber > 12
83#define FH_AO13
84#endif
85#if FH_AO_MaxPeripheralNumber > 13
86#define FH_AO14
87#endif
88#if FH_AO_MaxPeripheralNumber > 14
89#define FH_AO15
90#endif
91#if FH_AO_MaxPeripheralNumber > 15
92#define FH_AO16
93#endif
94#if FH_AO_MaxPeripheralNumber > 16
95#define FH_AO17
96#endif
97#if FH_AO_MaxPeripheralNumber > 17
98#define FH_AO18
99#endif
100#if FH_AO_MaxPeripheralNumber > 18
101#define FH_AO19
102#endif
103#if FH_AO_MaxPeripheralNumber > 19
104#define FH_AO20
105#endif
106#if FH_AO_MaxPeripheralNumber > 20
107#define FH_AO21
108#endif
109#if FH_AO_MaxPeripheralNumber > 21
110#define FH_AO22
111#endif
112#if FH_AO_MaxPeripheralNumber > 22
113#define FH_AO23
114#endif
115#if FH_AO_MaxPeripheralNumber > 23
116#define FH_AO24
117#endif
118#if FH_AO_MaxPeripheralNumber > 24
119#define FH_AO25
120#endif
121#if FH_AO_MaxPeripheralNumber > 25
122#define FH_AO26
123#endif
124#if FH_AO_MaxPeripheralNumber > 26
125#define FH_AO27
126#endif
127#if FH_AO_MaxPeripheralNumber > 27
128#define FH_AO28
129#endif
130#if FH_AO_MaxPeripheralNumber > 28
131#define FH_AO29
132#endif
133#if FH_AO_MaxPeripheralNumber > 29
134#define FH_AO30
135#endif
136#if FH_AO_MaxPeripheralNumber > 30
137#define FH_AO31
138#endif
139#if FH_AO_MaxPeripheralNumber > 31
140#define FH_AO32
141#endif
142#if FH_AO_MaxPeripheralNumber > 32
143#define FH_AO33
144#endif
145#if FH_AO_MaxPeripheralNumber > 33
146#define FH_AO34
147#endif
148#if FH_AO_MaxPeripheralNumber > 34
149#define FH_AO35
150#endif
151#if FH_AO_MaxPeripheralNumber > 35
152#define FH_AO36
153#endif
154#if FH_AO_MaxPeripheralNumber > 36
155#define FH_AO37
156#endif
157#if FH_AO_MaxPeripheralNumber > 37
158#define FH_AO38
159#endif
160#if FH_AO_MaxPeripheralNumber > 38
161#define FH_AO39
162#endif
163#if FH_AO_MaxPeripheralNumber > 39
164#define FH_AO40
165#endif
166#if FH_AO_MaxPeripheralNumber > 40
167#define FH_AO41
168#endif
169#if FH_AO_MaxPeripheralNumber > 41
170#define FH_AO42
171#endif
172#if FH_AO_MaxPeripheralNumber > 42
173#define FH_AO43
174#endif
175#if FH_AO_MaxPeripheralNumber > 43
176#define FH_AO44
177#endif
178#if FH_AO_MaxPeripheralNumber > 44
179#define FH_AO45
180#endif
181#if FH_AO_MaxPeripheralNumber > 45
182#define FH_AO46
183#endif
184#if FH_AO_MaxPeripheralNumber > 46
185#define FH_AO47
186#endif
187#if FH_AO_MaxPeripheralNumber > 47
188#define FH_AO48
189#endif
190#if FH_AO_MaxPeripheralNumber > 48
191#define FH_AO49
192#endif
193#if FH_AO_MaxPeripheralNumber > 49
194#define FH_AO50
195#endif
196#if FH_AO_MaxPeripheralNumber > 50
197#define FH_AO51
198#endif
199#if FH_AO_MaxPeripheralNumber > 51
200#define FH_AO52
201#endif
202#if FH_AO_MaxPeripheralNumber > 52
203#define FH_AO53
204#endif
205#if FH_AO_MaxPeripheralNumber > 53
206#define FH_AO54
207#endif
208#if FH_AO_MaxPeripheralNumber > 54
209#define FH_AO55
210#endif
211#if FH_AO_MaxPeripheralNumber > 55
212#define FH_AO56
213#endif
214#if FH_AO_MaxPeripheralNumber > 56
215#define FH_AO57
216#endif
217#if FH_AO_MaxPeripheralNumber > 57
218#define FH_AO58
219#endif
220#if FH_AO_MaxPeripheralNumber > 58
221#define FH_AO59
222#endif
223#if FH_AO_MaxPeripheralNumber > 59
224#define FH_AO60
225#endif
226#if FH_AO_MaxPeripheralNumber > 60
227#define FH_AO61
228#endif
229#if FH_AO_MaxPeripheralNumber > 61
230#define FH_AO62
231#endif
232#if FH_AO_MaxPeripheralNumber > 62
233#define FH_AO63
234#endif
235#if FH_AO_MaxPeripheralNumber > 63
236#define FH_AO64
237#endif
238
239#if FH_AO_MaxPeripheralNumber > 0 // If at least one <b>FH_AO</b> (Analog Output) is defined
240
241/*!
242 <b>FH_AO_Init_FuncPtrModel</b> Function pointer definition
243*/
245
246/*!
247<b>FH_AO_SetStatus_FuncPtrModel</b> Function pointer definition
248*/
250
251/*!
252 Different commands for <b>AO</b> (Analog Output) Function
253*/
259
260/*!
261 Minimum size of the <b>Data</b> part in the message frame (<b>FH_RFCommunication_Message</b>) for the <b>Init</b> command of <b>AO</b> Function, are defined here
262*/
263#define FH_AO_MinCommandSize_Init 1
264
265/*!
266 Minimum size of the <b>Data</b> part in the message frame (<b>FH_RFCommunication_Message</b>) for the <b>SetStatus</b> command of <b>AO</b> Function, are defined here
267*/
268#define FH_AO_MinCommandSize_SetStatus 5
269
270/*!
271 Different elements of the Data part in the message frame (<b>FH_RFCommunication_Message</b>) for the Init command of <b>AO</b> Function, are defined here
272*/
277
278/*!
279 Different elements of the Data part in the message frame (<b>FH_RFCommunication_Message</b>) for the SetStatus command of <b>AO</b> Function, are defined here
280*/
289
290#endif
291
292#endif