Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: experiment_example motor_shield_example Position_ctrl Lab3_experiment_example ... more
Diff: MotorShield.h
- Revision:
- 3:2f46953e7c8b
- Parent:
- 1:4c3c2b7337a6
- Child:
- 5:d2dffc88e94d
--- a/MotorShield.h Wed Aug 26 00:24:51 2020 +0000
+++ b/MotorShield.h Wed Aug 26 02:43:57 2020 +0000
@@ -1,33 +1,22 @@
/* Library to interface with 2.74 Motor Shield
-** Uses a modified version of FastPWM library to improve PWM accuracy
+** Uses low level HAL libraries to enable high speed PWM
*/
-
-
class MotorShield {
public:
- /** Receives two PinName variables.
- * @param echoPin mbed pin to which the echo signal is connected to
- * @param triggerPin mbed pin to which the trigger signal is connected to
- */
- MotorShield(PinName forwardPin, PinName reversePin);
-
- /** Calculates the distance in cm, with the calculation time of 25 ms.
- * @returns distance of the measuring object in cm.
- */
- void write(double duty_cycle);
- void period(double period);
- void direction(int direction);
+ MotorShield(int periodTicks);
+ void motorAWrite(double duty_cycle, int direction);
+ void motorBWrite(double duty_cycle, int direction);
+ void motorCWrite(double duty_cycle, int direction);
+ void motorDWrite(double duty_cycle, int direction);
+ void changePeriod(int periodTicks);
private:
- int direction_val;
- double duty_cycle_val;
- double period_val;
+ int periodTickVal;
+ void init();
- void init();
- void writePWM();
};