added short cmd, not tested
This commit is contained in:
@@ -84,11 +84,69 @@ static mcc_errcodes_t move2(double X, double Y){
|
||||
return MCC_E_OK;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief emstop - emergency stop
|
||||
* @return errcode
|
||||
*/
|
||||
static mcc_errcodes_t emstop(){
|
||||
if(!SSemergStop()) return MCC_E_FAILED;
|
||||
return MCC_E_OK;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief shortcmd - send and receive short binary command
|
||||
* @param cmd (io) - command
|
||||
* @return errcode
|
||||
*/
|
||||
static mcc_errcodes_t shortcmd(short_command_t *cmd){
|
||||
if(!cmd) return MCC_E_BADFORMAT;
|
||||
SSscmd s = {0};
|
||||
s.Xmot = X_RAD2MOT(cmd->Xmot);
|
||||
s.Ymot = Y_RAD2MOT(cmd->Ymot);
|
||||
s.Xspeed = X_RS2MOTSPD(cmd->Xspeed);
|
||||
s.Yspeed = Y_RS2MOTSPD(cmd->Yspeed);
|
||||
s.xychange = cmd->xychange;
|
||||
s.XBits = cmd->XBits;
|
||||
s.YBits = cmd->YBits;
|
||||
if(SScmdS(&s)) return MCC_E_FAILED;
|
||||
cmd->Xmot = X_MOT2RAD(s.Xmot);
|
||||
cmd->Ymot = Y_MOT2RAD(s.Ymot);
|
||||
cmd->Xspeed = X_MOTSPD2RS(s.Xspeed);
|
||||
cmd->Yspeed = Y_MOTSPD2RS(s.Yspeed);
|
||||
cmd->xychange = s.xychange;
|
||||
cmd->XBits = s.XBits;
|
||||
cmd->YBits = s.YBits;
|
||||
return MCC_E_OK;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief shortcmd - send and receive long binary command
|
||||
* @param cmd (io) - command
|
||||
* @return errcode
|
||||
*/
|
||||
static mcc_errcodes_t longcmd(long_command_t *cmd){
|
||||
if(!cmd) return MCC_E_BADFORMAT;
|
||||
SSlcmd l = {0};
|
||||
l.Xmot = X_RAD2MOT(cmd->Xmot);
|
||||
l.Ymot = Y_RAD2MOT(cmd->Ymot);
|
||||
l.Xspeed = X_RS2MOTSPD(cmd->Xspeed);
|
||||
l.Yspeed = Y_RS2MOTSPD(cmd->Yspeed);
|
||||
l.Xadder = X_RS2MOTSPD(cmd->Xadder);
|
||||
l.Yadder = Y_RS2MOTSPD(cmd->Yadder);
|
||||
l.Xatime = S2ADDER(cmd->Xatime);
|
||||
l.Yatime = S2ADDER(cmd->Yatime);
|
||||
if(SScmdL(&l)) return MCC_E_FAILED;
|
||||
cmd->Xmot = X_MOT2RAD(l.Xmot);
|
||||
cmd->Ymot = Y_MOT2RAD(l.Ymot);
|
||||
cmd->Xspeed = X_MOTSPD2RS(l.Xspeed);
|
||||
cmd->Yspeed = Y_MOTSPD2RS(l.Yspeed);
|
||||
cmd->Xadder = X_MOTSPD2RS(l.Xadder);
|
||||
cmd->Yadder = Y_MOTSPD2RS(l.Yadder);
|
||||
cmd->Xatime = ADDER2S(l.Xatime);
|
||||
cmd->Yatime = ADDER2S(l.Yatime);
|
||||
return MCC_E_OK;
|
||||
}
|
||||
|
||||
// init mount class
|
||||
mount_t Mount = {
|
||||
.init = init,
|
||||
@@ -96,4 +154,6 @@ mount_t Mount = {
|
||||
.getMountData = getMD,
|
||||
.moveTo = move2,
|
||||
.emergStop = emstop,
|
||||
.shortCmd = shortcmd,
|
||||
.longCmd = longcmd,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user