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 47 48 49 50 51
| c'est mon programme sous matlab:
----------------------------------------------------------------------
%capsec.m
function []=capsec()
%paramètres de connexion
bytecount = 13; % nb d'octets à recevoir avant callback
%création d'un objet TCP/IP
t = tcpip('localhost', 9001);
%spécifie la taille du buffer de réception
set(t, 'InputBufferSize', bytecount);
%définition des paramètres du callback
t.BytesAvailableFcnCount = bytecount;
t.BytesAvailableFcnMode = 'byte';
t.BytesAvailableFcn = @callback;
while(1)
%la connexion avec le serveur
fopen(t);
%on attend la réception du code d'identification de la station de base
while t.BytesAvailable==0
end
fread(t,t.BytesAvailable); % lecture bidon pour vider le buffer
pause(.2)
%on transmet le code d'identification au serveur
%(mica2 avec protocole de connection version 1)
fprintf(t, 'T');
%tempo attente réception
pause(.5)
%déconnexion et fermeture de la connexion
fclose(t);
end
delete(t);
clear t
--------------------------------------------------------------------------%callback.m
function callback(obj,event)
%boucle principale de traitement
data = fread(obj,obj.BytesAvailable)'
------------------------------------------------------------------------- |
Partager