Added HOMED MSTA bit support to header files and Asyn layer.

This commit is contained in:
mp49
2008-11-14 14:27:41 +00:00
parent 7bbbc2e422
commit 3d908ae91c
4 changed files with 16 additions and 11 deletions
+5 -4
View File
@@ -19,9 +19,9 @@
* of this distribution.
* ************************************************************************
*
* Version: $Revision: 1.20 $
* Modified by: $Author: peterd $
* Last Modified: $Date: 2008-05-20 15:39:58 $
* Version: $Revision: 1.21 $
* Modified by: $Author: mp49 $
* Last Modified: $Date: 2008-11-14 14:27:41 $
*
* Original Author: Peter Denison
* Current Author: Peter Denison
@@ -102,6 +102,7 @@ static motorCommandStruct motorCommands[] = {
{motorStatusGainSupport, "STATUS_GAINSUPPORT"},
{motorStatusCommsError, "STATUS_COMMSERROR"},
{motorStatusLowLimit, "STATUS_LOWLIMIT"},
{motorStatusHomed, "STATUS_HOMED"},
};
typedef enum{typeInt32, typeFloat64, typeFloat64Array} dataType;
@@ -799,7 +800,7 @@ static void intCallback(void *axisPvt, unsigned int nChanged,
correct */
for (i = 0; i < nChanged; i++) {
if (changed[i] >= motorAxisDirection &&
changed[i] <= motorAxisLowHardLimit) {
changed[i] <= motorAxisHomed) {
bit_num = changed[i] - motorAxisDirection;
changedmask |= (1 << bit_num);
(*pPvt->drvset->getInteger)(pAxis->axis, changed[i], &ivalue);
+1 -1
View File
@@ -40,7 +40,7 @@ typedef enum {
motorStatusSlip, motorStatusPowerOn, motorStatusFollowingError,
motorStatusHome, motorStatusHasEncoder, motorStatusProblem,
motorStatusMoving, motorStatusGainSupport, motorStatusCommsError,
motorStatusLowLimit, motorStatusLast
motorStatusLowLimit, motorStatusHomed, motorStatusLast
} motorCommand;
#endif
+7 -5
View File
@@ -3,9 +3,9 @@ FILENAME... motor.h
USAGE... Definitions and structures common to all levels of motorRecord
support (i.e., record, device and driver).
Version: $Revision: 1.18 $
Modified By: $Author: sluiter $
Last Modified: $Date: 2006-06-02 21:19:09 $
Version: $Revision: 1.19 $
Modified By: $Author: mp49 $
Last Modified: $Date: 2008-11-14 14:27:40 $
*/
/*
@@ -141,7 +141,8 @@ typedef union
struct
{
#ifdef MSB_First
unsigned int na :18;/* N/A bits */
unsigned int na :17;/* N/A bits */
unsigned int RA_HOMED :1; /* Axis has been homed.*/
unsigned int RA_MINUS_LS :1; /* minus limit switch has been hit */
unsigned int CNTRL_COMM_ERR :1; /* Controller communication error. */
unsigned int GAIN_SUPPORT :1; /* Motor supports closed-loop position control. */
@@ -171,7 +172,8 @@ typedef union
unsigned int GAIN_SUPPORT :1; /* Motor supports closed-loop position control. */
unsigned int CNTRL_COMM_ERR :1; /* Controller communication error. */
unsigned int RA_MINUS_LS :1; /* minus limit switch has been hit */
unsigned int na :18;/* N/A bits */
unsigned int RA_HOMED :1; /* Axis has been homed.*/
unsigned int na :17;/* N/A bits */
#endif
} Bits;
} msta_field;
+3 -1
View File
@@ -325,6 +325,7 @@ typedef enum
motorAxisHasClosedLoop, /**< Motor supports closed-loop position control. */
motorAxisCommError, /**< Controller communication error. */
motorAxisLowHardLimit, /**< minus limit switch has been hit */
motorAxisHomed, /**< Motor has been homed.*/
motorAxisDeferMoves, /**< Moves are not executed immediately, but are deferred until this parameter is set to zero */
motorAxisLastParam
} motorAxisParam_t;
@@ -519,6 +520,7 @@ typedef int (*motorAxisSetIntegerFunc)( AXIS_HDL pAxis, motorAxisParam_t, int )
*/
#ifdef DEFINE_MOTOR_PROTOTYPES
/* XXXX Change the motorAxisParam_t to int */
static int motorAxisSetInteger( AXIS_HDL pAxis, motorAxisParam_t function, int value );
#endif
@@ -670,7 +672,7 @@ typedef int (*motorAxisProfileMoveFunc)( AXIS_HDL pAxis, int npoints, double pos
The motion along the profile will not start until triggered. If
the relative parameter is zero (i.e. the positions indicated are
absolute), then the controller should immediately move the the
absolute), then the controller should immediately move to the
first position and stop awaiting the trigger.
The trigger parameter defines when to initiate the motion along