J'ai un fichier XML contenant des paramètres de configuration. Comment puis-je générer automatiquement des fichiers .h and.c qui contiennent les structures de données équivalentes à celles du fichier XML? Le code c généré, doit initialiser les structures avec de les valeurs correspondantes du fichier XML?
Par exemple, si j'ai un fichier XML comme ceci:
Le code doit générer automatiquement une structure et initialiser la structure:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <ADC instance=ADC1> <init> < ClockPrescaler>ADC_CLOCKPRESCALER_PCLK_DIV4</ClockPrescaler> <Resolution>12b</Resolution> < ScanConvMode> DISABLE < /ScanConvMode> < NbrOfConversion>1</NbrOfConversion> </init> </ADC>
Comment je dois procéder? Générer automatiquement le code selon le contenu fichier xml? Est ce qu'il de librarie ou un outil à utiliser?Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 typedef struct { uint32_t ClockPrescaler; uint32_t Resolution; uint32_t ScanConvMode; uint32_t NbrOfConversion; uint32_t EOCSelection; uint32_t ContinuousConvMode; uint32_t DiscontinuousConvMode; uint32_t DataAlign; uint32_t NbrOfDiscConversion; }ADC_InitTypeDef; typedef struct { char Instance; ADC_InitTypeDef Init; }ADC_HandleTypeDef ADC_HandleTypeDef hadc1; int main(void) { void MX_ADC1_Init(void) /* ADC1 init function */ { /**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion) */ hadc1.Instance = ADC1; hadc1.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV4; hadc1.Init.Resolution = 12b; hadc1.Init.ScanConvMode = DISABLE; hadc1.Init.ContinuousConvMode = DISABLE; hadc1.Init.DiscontinuousConvMode = DISABLE; hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; hadc1.Init.NbrOfConversion = 1;
Partager