void right_turn ()
{
	float speed1 = mraa_pwm_read(pwm1);
	float speed2 = mraa_pwm_read(pwm2);

	if (speed1 == speed2) {
		mraa_pwm_write(pwm2, speed2/3);
	}

	else if (speed2 > speed1) {
		mraa_pwm_write(pwm1, speed2);
		mraa_pwm_write(pwm2, speed1);
	}
}
Esempio n. 2
0
FskErr mraaPWMGetDutyCycleAndPeriod(FskPinPWM pin, UInt8 *dutyCycle, UInt8 *period)
{
	mraaPWM mpwm = (mraaPWM)pin;
	float value, dc;

	value = mraa_pwm_read(mpwm->context);
	dc = mpwm->period * value;
	*dutyCycle = dc;
	*period = mpwm->period;

	return kFskErrNone;
}
Esempio n. 3
0
 /**
  * Read the ouput duty-cycle percentage, as a float
  *
  * @return A floating-point value representing percentage of
  * output. The value should lie between 0.0f (representing on 0%) and
  * 1.0f Values above or below this range will be set at either 0.0f or
  * 1.0f
  */
 float
 read()
 {
     return mraa_pwm_read(m_pwm);
 }
Esempio n. 4
0
FskErr mraaPWMGetDutyCycle(FskPinPWM pin, double *value)
{
	mraaPWM mpwm = (mraaPWM)pin;
	*value = mraa_pwm_read(mpwm->context);
	return kFskErrNone;
}