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 vues (au cours des 30 derniers jours)
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. :)

Réponses (1)

Sudhakar Shinde
Sudhakar Shinde le 6 Oct 2020
Modifié(e) : Sudhakar Shinde le 6 Oct 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 commentaires
Wei Wei Gan
Wei Wei Gan le 6 Oct 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 le 6 Oct 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);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Variables dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by