I am new to matlab and have a sample data(shown on pic) with many values inside. I need to multiply each values with its different conversion coefficient. How can I do that?

2 Ansichten (letzte 30 Tage)
CONV_COEFF = [0.0023394775; 0.0030514578; 0.0023394775; 0.0015258789; 0.0024414063; ...
0.0006103516; 0.0006103516; 0.0024414063; 0.0006103516; 0.0006103516; ...
0.0024414063; 0.0006103516; 0.0006103516; 0.0020345052; 0.0020345052; ...
1; 1; 0.0006103516; 0.00390625; 0.00390625; 0.00390625; 0.00390625; ...
1; 1; 1; 1; 1; 1; 0.00390625; 0.00390625; 0.00390625; 0.00390625; 0.00390625; ...
0.00390625; 0.00390625; 0.00390625; 1];
So for example, the value at 1 will need to multiply by 0.0023394775, value at 2 needs to mulitply by 0.0030514578, and so for.
I need to code to read this data from serial port and with the values I need to multiply each with its respective conversion coefficient. I need to run 100 samples.
Please help. :)

Antworten (1)

Sudhakar Shinde
Sudhakar Shinde am 6 Okt. 2020
Bearbeitet: Sudhakar Shinde am 6 Okt. 2020
You could use 'serialport' and 'read' functions to read data from serial port.
for more info:
%Example reading 16 values
s = serialport("COM3",9600,"Timeout",5);
data = read(s,16,"uint32");
%Then use dot multiplication:
data.*CONV_COEFF
  2 Kommentare
Wei Wei Gan
Wei Wei Gan am 6 Okt. 2020
But i need to get 100 samples of that as the data inside will keep changing so do i just use loop? By the way how do u get "16,"uint32"
Wei Wei Gan
Wei Wei Gan am 6 Okt. 2020
I also have a question. Why do i have missing data when I fscanf(s) the serial port? some times it reflect the values from 1-5 and sometimes 11-20.
s=serial('COM23','BaudRate',57600);
fopen(s);
fscanf(s)
fclose(s);
However, when I use the following code, it reflect all the values from 1-25 and 48.
s=serial('COM23','BaudRate',57600,'TimeOut',10,'Terminator','LF');
fopen(s);
received=fgets(s);
fscanf(s)
fclose(s);

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Variables finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by