close all

% Inicialização da comunicação
h=initcom(1,115200);

% Leitura da string introdutória (nada de importante)
s=cportgetline(h,-1,'\r\n',-1)

% Inicialização do array que conterá os dados
array=[];

fprintf('Preparado para sacar valores...\n');

while (1)

    input('Pressione ENTER...');
    
    % Envio do caracter 'C' pela porta série
    % Este comando indicará ao PIC que pode aplicar o degrau
    nc=cportwrite(h,'C');
    % Verificação do envio com sucesso
    if (nc~=1)
        error('myfunction:teste','Error sending character to PIC');
    end

    % Leitura do valor do ângulo solicitado
    ang=cportgetline(h,-1,'\r\n',-1);
    
    % Verificação de fim das medidas
    if (length(ang)==5)
        if (ang(1:3)=='END'), break, end
    end
    
    % Leitura do valor da tensão medida
    voltage=cportgetline(h,-1,'\r\n',-1);
    % Leitura do valor da tensão medida
    position=cportgetline(h,-1,'\r\n',-1);
    
    %[ang, voltage, position]
    fprintf('Angulo=%s\tVoltage=%s\tPosition=%s\n',ang,voltage,position);

    % Armazenamento dos valores
    array=[array; str2num(ang) str2num(voltage) str2num(position)];
end

% Encerramento das comunicações
killcom(h);

fprintf('Done!\n');

% Salvaguarda dos resultados em ficheiro
save control.txt array -ASCII -TABS

plot(array(:,1),array(:,3))