currently i working on plotting a graph of rpm sensor on matlab but unfortunately when i run the plotting coding in Matlab it was failed.It said 'Warning: Unsuccessful read: Matching failure in format.' please help me,i dont know what is the problem
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
volatile int rpmcount = 0;
int rpm = 0;
unsigned long lastmillis = 0;
void setup(){
Serial.begin(9600);
attachInterrupt(0, rpm_car, FALLING);//interrupt cero (0) is on pin two(2).
}
void loop(){
if (millis() - lastmillis == 1000){ //Uptade every one second, this will be equal to reading frecuency (Hz).
detachInterrupt(0); //Disable interrupt when calculating
rpm = rpmcount * 60; // Convert frecuency to RPM, note: this works for one interruption per full rotation. For two interrups per full rotation use rpmcount * 30.
Serial.print("RPM =\t"); //print the word "RPM" and tab.
Serial.print(rpm); // print the rpm value.
Serial.print("\t Hz=\t"); //print the word "Hz".
Serial.println(rpmcount); //print revolutions per second or Hz. And print new line or enter.
rpmcount = 0; // Restart the RPM counter
lastmillis = millis(); // Uptade lasmillis
attachInterrupt(0, rpm_car, FALLING); //enable interrupt
}
}
void rpm_car(){ // this code will be executed every time the interrupt 0 (pin2) gets low.
rpmcount++;
}
0 Kommentare
Antworten (2)
Image Analyst
am 11 Nov. 2014
This is C or Java code, not MATLAB code. Use MATLAB instead.
4 Kommentare
Walter Roberson
am 3 Jun. 2018
You have the Arduino sending "RPM =" and "Hz=" but your MATLAB code is expecting only numeric values.
Osama Yassin
am 3 Jun. 2018
Hi, Nazrin Zaini .. did get the solution about attachInterrupt function in matlab?
0 Kommentare
Siehe auch
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!