Library to handle the X-NUCLEO-IHM01A1 Motor Control Expansion Board based on the L6474 component.

Dependencies:   X_NUCLEO_COMMON ST_INTERFACES

Dependents:   Stepper_Matlab_Control SunTracker_BLE Stepper_Matlab_Control MemsMotorControl ... more

Fork of X_NUCLEO_IHM01A1 by ST Expansion SW Team

Motor Control Library

Introduction

Library to handle the X-NUCLEO-IHM01A1 Motor Control Expansion Board based on the the L6474 component.

Daisy-Chain Configuration

This board can be stacked up to three times so that the L6474 components will be connected in daisy-chain configuration. For this purpose, some resistors must be correctly connected on the boards as depicted here below:

/media/uploads/Davidroid/daisychaintable.png

Platform compatibility

  • NUCLEO boards have been tested with the default configuration provided by the HelloWorld_IHM01A1 example.
  • LPCXpresso11U68 board has been tested with the following patch:
    • to connect with a wire from the LPCX’s D4 pin to the IHM01A1’s D9 pin;
    • to initialize the pwm PinName variable with D4 rather than D9.
  • FRDM-K64F board has been tested with the following patch:
    • to connect with a wire from the FRDM’s D4 pin to the IHM01A1’s D8 pin;
    • to initialize the standby_reset PinName variable with D4 rather than D8.

Example Applications

Revision:
23:58264db10a17
Parent:
22:ed3a6990a6eb
Child:
24:258f0f60d30c
--- a/Components/l6474/l6474.h	Tue Feb 09 10:53:31 2016 +0000
+++ b/Components/l6474/l6474.h	Mon Feb 15 15:54:56 2016 +0000
@@ -557,9 +557,10 @@
  */
 
 /* ACTION --------------------------------------------------------------------*
- * Declare here extern I/O and interrupt related functions you might need,    *
- * and implemented then in a glue logic file on the target environment, for   *
- * example within the "x_nucleo_board.c" file., e.g.:                         *
+ * Declare here extern platform-dependent APIs you might need (e.g.: I/O and  *
+ * interrupt related functions), and implement them in a glue-logic file on   *
+ * the target environment, for example within the "x_nucleo_board.c" file.    *
+ * E.g.:                                                                      *
  *   extern Status_t COMPONENT_IO_Init (void *handle);                        *
  *   extern Status_t COMPONENT_IO_Read (handle, buf, regadd, bytes);          *
  *   extern Status_t COMPONENT_IO_Write(handle, buf, regadd, bytes);          *