From: Jeff E. <cv...@cv...> - 2007-11-29 03:22:56
|
Modified file emc2/src/emc/task/emccanon.cc Full file: <http://cvs.linuxcnc.org/cvs/emc2/src/emc/task/emccanon.cc?rev=1.115.2.2> Difference: <http://cvs.linuxcnc.org/cvs/emc2/src/emc/task/emccanon.cc.diff?r1=1.115.2.1;r2=1.115.2.2> Branch: v2_2_branch Log: revision 1.115.2.2 date: 2007/11/29 03:22:49; author: jepler; state: Exp; lines: +7 -1 from TRUNK: implement M66 E- (read analog value from gcode) --- emccanon.cc 2007/11/26 03:31:31 1.115.2.1 +++ emccanon.cc 2007/11/29 03:22:49 1.115.2.2 @@ -2424,7 +2424,13 @@ double GET_EXTERNAL_ANALOG_INPUT(int index) { /* returns current value of the analog input selected by index.*/ -// FIXME-AJ - implement Analog + if ((index < 0) || (index >= EMC_MAX_AIO)) + return -1; + + if (emcStatus->task.input_timeout == 1) + return -1; + + return emcStatus->motion.analog_input[index]; return 0; } Modified file emc2/src/emc/task/taskintf.cc Full file: <http://cvs.linuxcnc.org/cvs/emc2/src/emc/task/taskintf.cc?rev=1.81.2.1> Difference: <http://cvs.linuxcnc.org/cvs/emc2/src/emc/task/taskintf.cc.diff?r1=1.81;r2=1.81.2.1> Branch: v2_2_branch Log: revision 1.81.2.1 date: 2007/11/29 03:22:50; author: jepler; state: Exp; lines: +5 -1 from TRUNK: implement M66 E- (read analog value from gcode) --- taskintf.cc 2007/09/21 16:16:24 1.81 +++ taskintf.cc 2007/11/29 03:22:50 1.81.2.1 @@ -1403,7 +1403,7 @@ int axis; int error; int exec; - int dio; + int dio, aio; // read the emcmot status if (0 != usrmotReadEmcmotStatus(&emcmotStatus)) { @@ -1455,6 +1455,10 @@ for (dio = 0; dio < EMC_MAX_DIO; dio++) { stat->synch_di[dio] = emcmotStatus.synch_di[dio]; + } + + for (aio = 0; aio < EMC_MAX_AIO; aio++) { + stat->analog_input[aio] = emcmotStatus.analog_input[aio]; } for (axis = 0; axis < stat->traj.axes; axis++) { |