- rxFrame[++i] = '\0';\r
-\r
- // Cast to command and\r
- command_t *cmd = (command_t *)rxFrame;\r
-\r
- // Validate interval\r
- sns_t snsType = (sns_t )cmd->bits.sns;\r
- oper_t operType = (oper_t)cmd->bits.oper;\r
- float interval = CLAMP(cmd->interval, MIN_RATE, MAX_RATE);\r
-\r
- // Save value to global data\r
- switch(snsType){\r
- case ACC_SNS:\r
- switch(operType){\r
- case START: accEnable = true; break;\r
- case STOP: accEnable = false; break;\r
- case SET_INT: accTmr = interval; break;\r
- }\r
- break;\r
-\r
- case MAG_SNS:\r
- switch(operType){\r
- case START: magEnable = true; break;\r
- case STOP: magEnable = false; break;\r
- case SET_INT: magTmr = interval; break;\r
- }\r
- break;\r
-\r
- case LGT_SNS:\r
- switch(operType){\r
- case START: lgtEnable = true; break;\r
- case STOP: lgtEnable = false; break;\r
- case SET_INT: lgtTmr = interval; break;\r
- }\r
- break;\r
-\r
- case TCH_SNS:\r
- switch(operType){\r
- case START: tchEnable = true; break;\r
- case STOP: tchEnable = false; break;\r
- case SET_INT: tchTmr = interval; break;\r
- }\r
- break;\r
-\r
- case A2D_SNS:\r
- switch(operType){\r
- case START: a2dEnable = true; break;\r
- case STOP: a2dEnable = false; break;\r
- case SET_INT: a2dTmr = interval; break;\r
- }\r
- break;\r
- }\r
-\r
- clock1.attach(&clock1_interrupt, TIME_ACCURACY);\r