% function name: serialcomm(samples to take, repeats) % author: Brody Radford % version: 20051226 function serialcomm(numSamples, reps) %%%%%%%%%%%%%%%%%%%%%%%%%%% % SETUP %%%%%%%%%%%%%%%%%%%%%%%%%%% %comm port port = 'COM1'; BaudRate = 38400; %get serial port handle serialPort = serial(port, 'baudRate', BaudRate,'Terminator',0); %terminator not used in binary fread() %open serial port fopen(serialPort); %%%%%%%%%%%%%%%%%%%%%%%%%%%% % Get streaming data from serial port %%%%%%%%%%%%%%%%%%%%%%%%%%%% %initialise data vectors msmt1 = ones([1,numSamples]); Ts = .0128; %i'm prob not correct t = (1:numSamples)*Ts; try for count = 1:reps clf fwrite(serialPort,'S'); %start msmt1 = fread(serialPort, numSamples); msmt1(248) = mean(msmt1(50:150)); figure(gcf) plot(msmt1) ylim([0 256]) pause(.01) end %%%%%%%%%%%%%%%%%%%%%%%%%%%% % MAKE SURE PORT IS CLOSED %%%%%%%%%%%%%%%%%%%%%%%%%%%% fclose(serialPort); delete(serialPort); catch fclose(serialPort); delete(serialPort); lasterr %display error end %%%%%%%%%%%%%%%%%%%%%%%%%%%% % END %%%%%%%%%%%%%%%%%%%%%%%%%%%%