|
7#
樓主 |
發表於 2012-8-10 13:43:13
|
只看該作者
版主你好
我有嘗試用pulseIn() 這功能,可是在馬達轉速固定之下
讀出來的時間 卻會有很大的差異
不知道是哪邊有問題
請版主 幫我看一下囉
---------------------------------------------------------
int encoderPin = 2;
int var;
unsigned long time ;
double rpm ;
void setup()
{
Serial.begin(9600);
pinMode(encoderPin,INPUT);
pinMode(13,OUTPUT);
}
void loop()
{
var = digitalRead(encoderPin);
time = pulseIn(encoderPin,HIGH,3000000);
unsigned long time3 ;
time3 = time *4 *6 ;
rpm = 60000000/ time3 ;
Serial.print("time:") ;
Serial.println(time3);
Serial.print("rpm:") ;
Serial.println(rpm);
} |
|