Control the Pololu SMC02B

Committer:
goncaloc
Date:
Mon Oct 11 18:38:26 2010 +0000
Revision:
0:33043894c6cb
Child:
1:683f2848e917
0v1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
goncaloc 0:33043894c6cb 1
goncaloc 0:33043894c6cb 2 #ifndef SMC02B_H
goncaloc 0:33043894c6cb 3 #define SMC02B_H
goncaloc 0:33043894c6cb 4 /**
goncaloc 0:33043894c6cb 5 * Includes
goncaloc 0:33043894c6cb 6 */
goncaloc 0:33043894c6cb 7 #include "mbed.h"
goncaloc 0:33043894c6cb 8
goncaloc 0:33043894c6cb 9 /**
goncaloc 0:33043894c6cb 10 * Defines
goncaloc 0:33043894c6cb 11 */
goncaloc 0:33043894c6cb 12 #define SMC02B_START_BYTE 0x80
goncaloc 0:33043894c6cb 13 #define SMC02B_CONFIG_BYTE 0x02
goncaloc 0:33043894c6cb 14 #define SMC02B_DEVICE_ID 0x00
goncaloc 0:33043894c6cb 15 #define SMC02B_BYTE3 0x00
goncaloc 0:33043894c6cb 16 #define SMC02B_BYTE4 0x00
goncaloc 0:33043894c6cb 17 #define SMC02B_MOTOR1_DIR 0x00
goncaloc 0:33043894c6cb 18 #define SMC02B_MOTOR1_SPEED 0x00
goncaloc 0:33043894c6cb 19 #define SMC02B_MOTOR1_NUMBER 0x00
goncaloc 0:33043894c6cb 20 #define SMC02B_MOTOR2_DIR 0x00
goncaloc 0:33043894c6cb 21 #define SMC02B_MOTOR2_SPEED 0x00
goncaloc 0:33043894c6cb 22 #define SMC02B_MOTOR2_NUMBER 0x00
goncaloc 0:33043894c6cb 23
goncaloc 0:33043894c6cb 24 class SMC02B
goncaloc 0:33043894c6cb 25 {
goncaloc 0:33043894c6cb 26 public:
goncaloc 0:33043894c6cb 27 SMC02B(PinName tx, PinName rx, PinName pin);
goncaloc 0:33043894c6cb 28 void SMC02B_RST(void);
goncaloc 0:33043894c6cb 29 void SMC02B_MOTOR_SET( char motor, char direction, char speed );
goncaloc 0:33043894c6cb 30 void SMC02B_MOTOR_BRAKE( char motor );
goncaloc 0:33043894c6cb 31 void SMC02B_MOTOR_COAST( char motor );
goncaloc 0:33043894c6cb 32 void SMC02B_CONFIG( char mode, char motor );
goncaloc 0:33043894c6cb 33
goncaloc 0:33043894c6cb 34 private:
goncaloc 0:33043894c6cb 35 DigitalOut _rst;
goncaloc 0:33043894c6cb 36 Serial* _SMC02B;
goncaloc 0:33043894c6cb 37
goncaloc 0:33043894c6cb 38 };
goncaloc 0:33043894c6cb 39
goncaloc 0:33043894c6cb 40 #endif