Library for MAX14871 Shield, MAXREFDES89#
Dependents: MAXREFDES89_MAX14871_Shield_Demo MAXREFDES89_Test_Program Line_Following_Bot Line_Following_Bot_Pololu
Revision 6:dc06cc75c1c8, committed 2016-05-13
- Comitter:
- j3
- Date:
- Fri May 13 00:03:32 2016 +0000
- Parent:
- 5:a206f6505109
- Child:
- 7:c0bee1397f3e
- Commit message:
- updated docs
Changed in this revision
--- a/MAX5387.lib Tue Dec 22 04:24:07 2015 +0000 +++ b/MAX5387.lib Fri May 13 00:03:32 2016 +0000 @@ -1,1 +1,1 @@ -https://developer.mbed.org/teams/Maxim-Integrated/code/MAX5387/#25deebfe51ba +https://developer.mbed.org/teams/Maxim-Integrated/code/MAX5387/#89d2f70616ee
--- a/MAX7300.lib Tue Dec 22 04:24:07 2015 +0000 +++ b/MAX7300.lib Fri May 13 00:03:32 2016 +0000 @@ -1,1 +1,1 @@ -https://developer.mbed.org/teams/Maxim-Integrated/code/MAX7300/#3674af0a03cf +https://developer.mbed.org/teams/Maxim-Integrated/code/MAX7300/#e75913818f75
--- a/max14871_shield.cpp Tue Dec 22 04:24:07 2015 +0000 +++ b/max14871_shield.cpp Fri May 13 00:03:32 2016 +0000 @@ -1,16 +1,5 @@ /******************************************************************//** * @file max14871_shield.cpp -* -* @author Justin Jordan -* -* @version 0.0 -* -* Started: 18JUL15 -* -* Updated: -* -* @brief Source file for Max14871_Shield class -*********************************************************************** * Copyright (C) 2015 Maxim Integrated Products, Inc., All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a
--- a/max14871_shield.h Tue Dec 22 04:24:07 2015 +0000
+++ b/max14871_shield.h Fri May 13 00:03:32 2016 +0000
@@ -1,16 +1,5 @@
/******************************************************************//**
* @file max14871_shield.h
-*
-* @author Justin Jordan
-*
-* @version 0.0
-*
-* Started: 18JUL15
-*
-* Updated:
-*
-* @brief Header file for Max14871_Shield class
-***********************************************************************
* Copyright (C) 2015 Maxim Integrated Products, Inc., All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
@@ -51,10 +40,33 @@
#include "max5387.h"
+/**
+* @brief MAX14871 Full-Bridge DC Motor Driver MBED Shield Library
+*
+* @details The MAXREFDES89# provides an ideal interface for anyone
+* developing with brushed DC motors. The design is an
+* mbed®-compatible, Arduino® form factor shield for the rapid
+* development of brushed DC motor applications. The shield contains
+* four MAX14871 full-bridge DC motor drivers for driving up to 4
+* motors. A MAX17501 DC-DC converter allows the system to operate
+* from a single 7 to 36VDC power supply. Four MAX4704 4:1
+* multiplexers permit setting the current regulation mode of the
+* MAX14871, while two MAX5387 digital potentiometers provide the
+* ability to set the motor current limit. A MAX7300 GPIO expander
+* supports interfacing each motor driver circuit to the
+* mbed-enabled microcontroller platform.
+*
+* @code
+* @endcode
+*/
class Max14871_Shield
{
public:
+ /**
+ * @brief Motor driver channels
+ * @details Simple enumeration of channels available on the shield
+ */
typedef enum
{
MD1 = 1,
@@ -64,6 +76,10 @@
}max14871_motor_driver_t;
+ /**
+ * @brief Operating modes
+ * @details Motor operating modes offered on each channel
+ */
typedef enum
{
COAST = 1,
@@ -73,6 +89,12 @@
}max14871_operating_mode_t;
+ /**
+ * @brief Current regulation modes
+ * @details Three different current regulation modes offered with
+ * either an internal or external reference for setting the regulation limit.
+ * This is not the fault current which is fixed, see datasheet.
+ */
typedef enum
{
RIPPLE_25_INTERNAL_REF = 1,
@@ -95,7 +117,8 @@
* pwm channels and I2C addressing
*
* On Exit:
- * @return none
+ *
+ * @return None
**************************************************************/
Max14871_Shield(I2C *i2c_bus, bool default_config);
@@ -113,7 +136,8 @@
* pwm channels and I2C addressing
*
* On Exit:
- * @return none
+ *
+ * @return None
**************************************************************/
Max14871_Shield(PinName sda, PinName scl, bool default_config);
@@ -126,7 +150,8 @@
* On Entry:
*
* On Exit:
- * @return none
+ *
+ * @return None
**************************************************************/
~Max14871_Shield();
@@ -142,7 +167,8 @@
* @param[in] mode - 1 of 4 operating modes of the motor driver
*
* On Exit:
- * @return 0 on success, non-0 on failure
+ *
+ * @return 0 on success, non-0 on failure
**************************************************************/
int16_t set_operating_mode(max14871_motor_driver_t md,
max14871_operating_mode_t mode);
@@ -160,7 +186,8 @@
* @param[in] vref - sets maximum motor current, Max of 2.0V
*
* On Exit:
- * @return 0 on success, non-0 on failure
+ *
+ * @return 0 on success, non-0 on failure
**************************************************************/
int16_t set_current_regulation_mode(max14871_motor_driver_t md,
max14871_current_regulation_mode_t mode,
@@ -180,7 +207,8 @@
* @param[in] ch - PWM channel using Arduino naming convention
*
* On Exit:
- * @return 0 on success, non-0 on failure
+ *
+ * @return 0 on success, non-0 on failure
**************************************************************/
int16_t set_pwm_channel(max14871_motor_driver_t md, PinName ch);
@@ -195,7 +223,8 @@
* @param[in] period - PWM period specified in seconds
*
* On Exit:
- * @return 0 on success, non-0 on failure
+ *
+ * @return 0 on success, non-0 on failure
**************************************************************/
int16_t set_pwm_period(max14871_motor_driver_t md, float period);
@@ -211,7 +240,8 @@
* as a percentage
*
* On Exit:
- * @return 0 on success, non-0 on failure
+ *
+ * @return 0 on success, non-0 on failure
**************************************************************/
int16_t set_pwm_duty_cycle(max14871_motor_driver_t md, float duty_cycle);
@@ -225,7 +255,8 @@
* @param[in] md - 1 of 4 motor drivers on the shield
*
* On Exit:
- * @return operating mode of selected motor driver
+ *
+ * @return Operating mode of selected motor driver
**************************************************************/
max14871_operating_mode_t get_operating_mode(max14871_motor_driver_t md);
@@ -239,7 +270,8 @@
* @param[in] md - 1 of 4 motor drivers on the shield
*
* On Exit:
- * @return current regulation mode of selected motor driver
+ *
+ * @return Current regulation mode of selected motor driver
**************************************************************/
max14871_current_regulation_mode_t get_current_regulation_mode(max14871_motor_driver_t md);
@@ -253,7 +285,8 @@
* @param[in] md - 1 of 4 motor drivers on the shield
*
* On Exit:
- * @return duty cycle of selected motor driver
+ *
+ * @return Duty cycle of selected motor driver
**************************************************************/
float get_pwm_duty_cycle(max14871_motor_driver_t md);
@@ -267,7 +300,8 @@
* @param[in] md - 1 of 4 motor drivers on the shield
*
* On Exit:
- * @return pwm period of selected motor driver
+ *
+ * @return pwm period of selected motor driver
**************************************************************/
float get_pwm_period(max14871_motor_driver_t md);
@@ -281,7 +315,8 @@
* @param[in] md - 1 of 4 motor drivers on the shield
*
* On Exit:
- * @return external voltage reference of selected motor driver
+ *
+ * @return External voltage reference of selected motor driver
**************************************************************/
float get_external_voltage_ref(max14871_motor_driver_t md);
MAXREFDES89#-MAX14871