j'ai un projet a réaliser, je dois lire l'heure qui est dans un fichier. Enfaite, on capture des données réceptionnées par un GPS, elles sont codées en ASCII donc lisible, on obtient toute une série de valeurs car on fait une acquisition toutes les secondes du style:

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
38
39
40
41
42
43
44
45
46
#1034111111001*#2035111114002*#2036111126003*#2037111134004*#2038111145005*#2044111166006*#2055111214007*#2066111224008*#2012111334009*#2015111345010*#2025111356011*$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.31,0.84,1.00*0E
$GPGSV,3,1,12,14,74,119,00,16,69,322,50,22,69,142,48,21,68,069,00*7F
$GPGSV,3,2,12,24,29,004,,09,23,257,,05,17,325,,18,15,197,*7F
$GPGSV,3,3,12,23,13,041,,06,11,100,,17,,237,,04,,050,*7A
$GPRMC,144546,V,0333.8418,N,01135.7782,E,0.000,0.0,121206,2.5,W*7E
$PRWIZCH,22,4,21,0,21,0,21,0,21,0,16,6,21,0,21,0,21,0,21,0,21,0,14,0*4E
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.31,0.84,1.00*0E
$GPRMC,144547,V,0333.6349,N,01135.6696,E,0.000,0.0,121206,2.5,W*77
$PRWIZCH,22,4,21,0,21,0,21,0,21,0,16,6,21,0,21,0,21,0,21,0,21,0,14,0*4E
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.31,0.84,1.00*0E
$GPGSV,3,1,12,14,74,119,,16,69,322,50,22,69,142,48,21,68,069,00*7F
$GPGSV,3,2,12,24,29,004,,09,23,257,,05,17,325,,18,15,197,*7F
$GPGSV,3,3,12,23,13,041,,06,11,100,,17,,237,,04,,050,*7A
$GPRMC,144548,V,0333.4281,N,01135.5610,E,0.000,0.0,121206,2.5,W*72
$PRWIZCH,22,4,21,0,21,0,21,0,21,0,16,6,21,0,21,0,21,0,21,0,21,0,21,0*48
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.28,0.81,1.00*03
$GPRMC,144549,V,0333.2212,N,01135.4524,E,0.000,0.0,121206,2.5,W*7A
$PRWIZCH,22,4,21,0,21,0,21,0,21,0,16,6,21,0,21,0,21,0,21,0,21,0,21,0*48
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.28,0.81,1.00*03
$GPGSV,3,1,12,14,74,119,,16,69,322,50,22,69,142,48,21,68,069,00*7F
$GPGSV,3,2,12,07,30,075,00,24,29,004,,09,23,257,,05,17,325,*7B
$GPGSV,3,3,12,18,15,197,,23,13,041,,06,11,100,,17,,237,*79
$GPRMC,144550,V,0333.0144,N,01135.3438,E,0.000,0.0,121206,2.5,W*7B
$PRWIZCH,22,4,21,0,21,0,21,0,21,0,16,6,21,0,21,0,21,0,21,0,21,0,21,0*48
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.28,0.81,1.00*03
$GPRMC,144551,V,0332.8075,N,01135.2352,E,0.000,0.0,121206,2.5,W*7A
$PRWIZCH,22,4,21,0,21,0,07,0,21,0,16,6,21,0,21,0,21,0,21,0,21,0,21,0*4C
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.28,0.81,1.00*03
$GPGSV,3,1,12,14,74,119,,16,69,322,50,22,69,142,47,21,68,069,00*70
$GPGSV,3,2,12,07,30,075,00,24,29,004,,09,23,257,,05,17,325,*7B
$GPGSV,3,3,12,18,15,197,,23,13,041,,06,11,100,,17,,237,*79
$GPRMC,144552,V,0332.6007,N,01135.1266,E,0.000,0.0,121206,2.5,W*77
$PRWIZCH,22,4,07,0,07,0,07,0,07,0,16,6,07,0,07,0,07,0,07,0,07,0,21,0*4C
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.28,0.81,1.00*03
$GPRMC,144553,V,0332.3938,N,01135.0180,E,0.000,0.0,121206,2.5,W*7C
$PRWIZCH,22,4,07,0,07,0,07,0,07,0,16,6,07,0,07,0,07,0,07,0,07,0,21,0*4C
$GPGGA,,,,,,0,00,,,,,,,*66
$GPGSA,A,1,,,,,,,,,,,,,1.28,0.81,1.00*03
l'heure est placée après $GPRMC, les 6 chiffres qui suivent comme 144553 correspondent à l'heure 14h45min et 53sec, le reste, on s'en occupe pas.
On doit donc créer un programme qui permet de voir l'heure,à l'écran, située dans le fichier d'acquisition, toute les secondes.
Je suis nouveau dans le langage C, si quelqu'un peut me donner une ébauche de programme ou des indications pour me guider, ça serait simpa !
Merci