Filter löschen
Filter löschen

reading data with serial communication between arduino and matlab problem

2 Ansichten (letzte 30 Tage)
Hi
I want to read position of encoder which is coded in Arduino program with serial communication in Matlab
the code in arduino program is:
int counter = 0;
int aState;
int aLastState;
void setup() {
pinMode (outputA, INPUT);
pinMode (outputB, INPUT);
Serial.begin(9600);
aLastState = digitalRead(outputA);
}
void loop() {
aState = digitalRead(outputA);
if (aState != aLastState) {
if (digitalRead(outputB) != aState) {
counter ++;
} else {
counter --;
}
Serial.print("Position: ");
Serial.println(counter);
}
aLastState = aState;
}
}
and the code of Matlab is:
s=serial('COM3');
fopen(s);
a=fscanf(s)
the problem is when the position is changed for example from 0 to 12 , when I use a=fscanf(s) it shows each values from 0 to 12 each times when I run this order I mean at the first time it shows 0 at the 2nd time it shows 1 at the3rd time it shows 2 etc.but I want to read the value of the position in real time how could I get this value?

Antworten (0)

Kategorien

Mehr zu MATLAB Support Package for Arduino Hardware finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by