Bonjour,
Je cherche à convertir un code matlab qui me sert à lire un fichier binaire.
Ce fichier est un log composé de 9 octets qui se suivent
Hour : uint8
Minute : uint8
Seconde : uint8
Voltage : float
Current : uint16
Il n'y a aucun espace entre les données ni entre les paquets.
avec Matlab je faisais
Mais avec scilab je ne sais pas comment découper la structure du fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 for i=1:fin Hour(i)=fread(fid2,1,'uint8',0,'l'); Minute(i)=fread(fid2,1,'uint8',0,'b'); Seconde(i)=fread(fid2,1,'uint8',0,'b'); Voltage(i)=fread(fid2,1,'float',0,'b'); Current(i)=fread(fid2,1,'uint16',0,'b'); end
Pour l'instant je le lis juste
Merci pour votre aide
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 clc(),scf(1), clf(1),predef(0); PathFileName=uigetfile(["*.bin"]) Fichier=mopen(PathFileName,'wb'); [n,m] = size(Fichier); fin = n/9; mclose(Fichier); // Hour(i)=fread(fid2,1,'uint8',0,'l'); // Minute(i)=fread(fid2,1,'uint8',0,'b'); // Seconde(i)=fread(fid2,1,'uint8',0,'b'); // Voltage(i)=fread(fid2,1,'float',0,'b'); // Current(i)=fread(fid2,1,'uint16',0,'b'); //plot(Voltage,'b'); //plot(Courant,'r');
Partager