function H=initCom

globalVar;

% Verifica��o dos argumentos de sa�da
if (nargout==0)
    error('myfunction:initComm:outargs','� necess�rio definir uma vari�vel de sa�da: port');
end

% Cria��o de um objecto serial
H=serial(PORT);

H.ByteOrder = 'littleEndian';   %littleEndian/bigEndia
%H.BytesAvailableFcn = @readMessage;    %Fun��o executada quando existe 1byte dispon�vel no buffer
%H.BytesAvailableFcnCount = RX_LENGTH;   %RX_LENGTH = 2;
H.BytesAvailableFcnMode = 'byte';
H.InputBufferSize = 512;
H.OutputBufferSize = 512;
H.Timeout = 0.1;                %tempo de espera para que a opera��o de escrita/leitura seja completada
H.BaudRate = BAUD;              %BAUD = 19200
H.DataBits = DATABITS;          %DATABITS = 8
H.DataTerminalReady = 'off';    %estado do pin DTR
H.FlowControl = HANDSHAKE;      %m�todo de controlo do fluxo de dados
                                %HANDSHAKE = 'none'
H.Parity = PARITY;              %PARITY = 'none'
H.ReadAsyncMode = 'continuous'; %leitura do buffer de entrada (continuo/manual)
H.RequestToSend = 'off';        %estado do pin RTS
H.StopBits = STOPBITS;          %STOPBITS = 2
H.Terminator = 'LF';            %terminador LF = \n -> line feed

%H.ErrorFcn = @killCom;     %Fun��o executada quando um evento de
%erro ocorre
%H.OutputEmptyFcn               %opera��o a executar qd o buffer de sa�da
%est� vazio
%H.RecordDetail: [ {compact} | verbose ]
%H.RecordMode: [ {overwrite} | append | index ]
%H.RecordName
%H.UserData
%H.BreakInterruptFcn = ;        %

fopen(H);