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.
Fork of TB6612FNG2 by
Revision 1:051a7ecff13e, committed 2012-11-12
- Comitter:
- jksoft
- Date:
- Mon Nov 12 16:39:11 2012 +0000
- Parent:
- 0:810f315ba3dc
- Child:
- 2:73cbc6028f7a
- Commit message:
- API??????
Changed in this revision
| TB6612.cpp | Show annotated file Show diff for this revision Revisions of this file |
| TB6612.h | Show annotated file Show diff for this revision Revisions of this file |
--- a/TB6612.cpp Tue Oct 23 15:24:30 2012 +0000
+++ b/TB6612.cpp Mon Nov 12 16:39:11 2012 +0000
@@ -17,29 +17,22 @@
_rev = 0;
_pwm = 0.0;
_pwm.period(0.001);
-
- bspeed = 0.0;
- timer_flag = false;
}
// Speed Control
// arg
-// float speed -1.0 - 0.0 - 1.0
-void TB6612::speed(float speed) {
-
- if( timer_flag == true ) return;
-
- bspeed = speed;
-
- if( speed > 0.0 )
+// int speed -100 -- 0 -- 100
+void TB6612::speed(int speed) {
+
+ if( speed > 0 )
{
- _pwm = speed;
+ _pwm = ((float)speed) / 100.0;
_fwd = 1;
_rev = 0;
}
- else if( speed < 0.0 )
+ else if( speed < 0 )
{
- _pwm = -speed;
+ _pwm = -((float)speed) / 100.0;
_fwd = 0;
_rev = 1;
}
@@ -53,19 +46,10 @@
// Speed Control with time-out
// arg
-// float sspeed:-1.0 - 0.0 - 1.0
-// float time :0.0-
-void TB6612::move(float sspeed , float time)
+// int speed -100 -- 0 -- 100
+// int time 0
+void TB6612::move(int sspeed , int time)
{
speed(sspeed);
- timer_flag = true;
- timer.attach(this,&TB6612::timeout,time);
+ wait_ms(time);
}
-
-
-void TB6612::timeout()
-{
- timer_flag = false;
- speed(bspeed);
-}
-
--- a/TB6612.h Tue Oct 23 15:24:30 2012 +0000
+++ b/TB6612.h Mon Nov 12 16:39:11 2012 +0000
@@ -14,9 +14,9 @@
class TB6612 {
public:
TB6612(PinName pwm, PinName fwd, PinName rev);
- void speed(float speed);
- void move(float speed , float time);
- void operator= ( float value )
+ void speed(int speed);
+ void move(int speed , int time);
+ void operator= ( int value )
{
speed(value);
}
@@ -25,11 +25,6 @@
PwmOut _pwm;
DigitalOut _fwd;
DigitalOut _rev;
- Timeout timer;
- float bspeed;
- bool timer_flag;
- void timeout();
-
};
#endif
