Cosmetics
This commit is contained in:
@@ -776,10 +776,7 @@ void menuModelSetup(event_t event)
|
||||
if (menuHorizontalPosition == 0) {
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[INTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_MAX, EE_MODEL, isInternalModuleAvailable);
|
||||
if (checkIncDec_Ret) {
|
||||
// TODO this code should be common, in module.h (X10_new_UI branch)
|
||||
memclear(&g_model.moduleData[INTERNAL_MODULE], sizeof(ModuleData));
|
||||
g_model.moduleData[INTERNAL_MODULE].type = moduleType;
|
||||
g_model.moduleData[INTERNAL_MODULE].channelsCount = defaultModuleChannels_M8(INTERNAL_MODULE);
|
||||
setModuleType(INTERNAL_MODULE, moduleType);
|
||||
}
|
||||
}
|
||||
else if (isModuleXJT(INTERNAL_MODULE)) {
|
||||
@@ -849,22 +846,9 @@ void menuModelSetup(event_t event)
|
||||
switch (menuHorizontalPosition) {
|
||||
case 0:
|
||||
{
|
||||
uint8_t moduleType = checkIncDec(event,
|
||||
g_model.moduleData[EXTERNAL_MODULE].type,
|
||||
MODULE_TYPE_NONE,
|
||||
IS_TRAINER_EXTERNAL_MODULE() ? MODULE_TYPE_NONE :
|
||||
MODULE_TYPE_COUNT - 1,
|
||||
EE_MODEL,
|
||||
isExternalModuleAvailable);
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[EXTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_MAX, EE_MODEL, isExternalModuleAvailable);
|
||||
if (checkIncDec_Ret) {
|
||||
// TODO this code should be common, in module.h (X10_new_UI branch)
|
||||
memclear(&g_model.moduleData[EXTERNAL_MODULE], sizeof(ModuleData));
|
||||
g_model.moduleData[EXTERNAL_MODULE].type = moduleType;
|
||||
g_model.moduleData[EXTERNAL_MODULE].channelsCount = defaultModuleChannels_M8(EXTERNAL_MODULE);
|
||||
if (isModuleSBUS(EXTERNAL_MODULE))
|
||||
g_model.moduleData[EXTERNAL_MODULE].sbus.refreshRate = -31;
|
||||
else if (isModulePPM(EXTERNAL_MODULE))
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(EXTERNAL_MODULE);
|
||||
setModuleType(EXTERNAL_MODULE, moduleType);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1090,7 +1074,7 @@ void menuModelSetup(event_t event)
|
||||
case 1:
|
||||
CHECK_INCDEC_MODELVAR_CHECK(event, moduleData.channelsCount, -4, min<int8_t>(maxModuleChannels_M8(moduleIdx), 32-8-moduleData.channelsStart), moduleData.type == MODULE_TYPE_ISRM_PXX2 ? isPxx2IsrmChannelsCountAllowed : nullptr);
|
||||
if (checkIncDec_Ret && moduleData.type == MODULE_TYPE_PPM) {
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(moduleIdx);
|
||||
setDefaultPpmFrameLength(moduleIdx);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1562,11 +1546,11 @@ void menuModelSetup(event_t event)
|
||||
switch (menuHorizontalPosition) {
|
||||
case 0:
|
||||
CHECK_INCDEC_MODELVAR_ZERO(event, g_model.moduleData[1].channelsStart, 32-8-g_model.moduleData[1].channelsCount);
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(1);
|
||||
setDefaultPpmFrameLength(1);
|
||||
break;
|
||||
case 1:
|
||||
CHECK_INCDEC_MODELVAR(event, g_model.moduleData[1].channelsCount, -4, min<int8_t>(8, 32-8-g_model.moduleData[1].channelsStart));
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(1);
|
||||
setDefaultPpmFrameLength(1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -763,10 +763,7 @@ void menuModelSetup(event_t event)
|
||||
if (menuHorizontalPosition == 0) {
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[INTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_MAX, EE_MODEL, isInternalModuleAvailable);
|
||||
if (checkIncDec_Ret) {
|
||||
// TODO this code should be common, in module.h (X10_new_UI branch)
|
||||
memclear(&g_model.moduleData[INTERNAL_MODULE], sizeof(ModuleData));
|
||||
g_model.moduleData[INTERNAL_MODULE].type = moduleType;
|
||||
g_model.moduleData[INTERNAL_MODULE].channelsCount = defaultModuleChannels_M8(INTERNAL_MODULE);
|
||||
setModuleType(INTERNAL_MODULE, moduleType);
|
||||
}
|
||||
}
|
||||
else if (isModuleXJT(INTERNAL_MODULE)) {
|
||||
@@ -839,16 +836,9 @@ void menuModelSetup(event_t event)
|
||||
switch (menuHorizontalPosition) {
|
||||
case 0:
|
||||
{
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[EXTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_COUNT - 1, EE_MODEL,
|
||||
isExternalModuleAvailable);
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[EXTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_MAX, EE_MODEL, isExternalModuleAvailable);
|
||||
if (checkIncDec_Ret) {
|
||||
memclear(&g_model.moduleData[EXTERNAL_MODULE], sizeof(g_model.moduleData[EXTERNAL_MODULE]));
|
||||
g_model.moduleData[EXTERNAL_MODULE].type = moduleType;
|
||||
g_model.moduleData[EXTERNAL_MODULE].channelsCount = defaultModuleChannels_M8(EXTERNAL_MODULE);
|
||||
if (isModuleSBUS(EXTERNAL_MODULE))
|
||||
g_model.moduleData[EXTERNAL_MODULE].sbus.refreshRate = -31;
|
||||
else if (isModulePPM(EXTERNAL_MODULE))
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(EXTERNAL_MODULE);
|
||||
setModuleType(EXTERNAL_MODULE, moduleType);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1043,7 +1033,7 @@ void menuModelSetup(event_t event)
|
||||
case 1:
|
||||
CHECK_INCDEC_MODELVAR_CHECK(event, moduleData.channelsCount, -4, min<int8_t>(maxModuleChannels_M8(moduleIdx), 32-8-moduleData.channelsStart), moduleData.type == MODULE_TYPE_ISRM_PXX2 ? isPxx2IsrmChannelsCountAllowed : nullptr);
|
||||
if (checkIncDec_Ret && moduleData.type == MODULE_TYPE_PPM) {
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(moduleIdx);
|
||||
setDefaultPpmFrameLength(moduleIdx);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -950,10 +950,7 @@ bool menuModelSetup(event_t event)
|
||||
if (menuHorizontalPosition == 0) {
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[INTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_MAX, EE_MODEL, isInternalModuleAvailable);
|
||||
if (checkIncDec_Ret) {
|
||||
// TODO this code should be common, in module.h (X10_new_UI branch)
|
||||
memclear(&g_model.moduleData[INTERNAL_MODULE], sizeof(ModuleData));
|
||||
g_model.moduleData[INTERNAL_MODULE].type = moduleType;
|
||||
g_model.moduleData[INTERNAL_MODULE].channelsCount = defaultModuleChannels_M8(INTERNAL_MODULE);
|
||||
setModuleType(INTERNAL_MODULE, moduleType);
|
||||
}
|
||||
}
|
||||
else if (isModuleXJT(INTERNAL_MODULE)) {
|
||||
@@ -1021,16 +1018,9 @@ bool menuModelSetup(event_t event)
|
||||
switch (menuHorizontalPosition) {
|
||||
case 0:
|
||||
{
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[EXTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_COUNT - 1, EE_MODEL,
|
||||
isExternalModuleAvailable);
|
||||
uint8_t moduleType = checkIncDec(event, g_model.moduleData[EXTERNAL_MODULE].type, MODULE_TYPE_NONE, MODULE_TYPE_MAX, EE_MODEL, isExternalModuleAvailable);
|
||||
if (checkIncDec_Ret) {
|
||||
memclear(&g_model.moduleData[EXTERNAL_MODULE], sizeof(g_model.moduleData[EXTERNAL_MODULE]));
|
||||
g_model.moduleData[EXTERNAL_MODULE].type = moduleType;
|
||||
g_model.moduleData[EXTERNAL_MODULE].channelsCount = defaultModuleChannels_M8(EXTERNAL_MODULE);
|
||||
if (isModuleSBUS(EXTERNAL_MODULE))
|
||||
g_model.moduleData[EXTERNAL_MODULE].sbus.refreshRate = -31;
|
||||
else if (isModulePPM(EXTERNAL_MODULE))
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(EXTERNAL_MODULE);
|
||||
setModuleType(EXTERNAL_MODULE, moduleType);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1133,7 +1123,7 @@ bool menuModelSetup(event_t event)
|
||||
case 1:
|
||||
CHECK_INCDEC_MODELVAR_CHECK(event, moduleData.channelsCount, -4, min<int8_t>(maxModuleChannels_M8(moduleIdx), 32-8-moduleData.channelsStart), moduleData.type == MODULE_TYPE_ISRM_PXX2 ? isPxx2IsrmChannelsCountAllowed : nullptr);
|
||||
if (checkIncDec_Ret && moduleData.type == MODULE_TYPE_PPM) {
|
||||
SET_DEFAULT_PPM_FRAME_LENGTH(moduleIdx);
|
||||
setDefaultPpmFrameLength(moduleIdx);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* Copyright (C) OpenTX
|
||||
*
|
||||
* Based on code named
|
||||
* th9x - http://code.google.com/p/th9x
|
||||
* er9x - http://code.google.com/p/er9x
|
||||
* gruvin9x - http://code.google.com/p/gruvin9x
|
||||
*
|
||||
* License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef _HELPERS_H_
|
||||
#define _HELPERS_H_
|
||||
|
||||
template<class t> inline t min(t a, t b) { return a<b?a:b; }
|
||||
template<class t> inline t max(t a, t b) { return a>b?a:b; }
|
||||
template<class t> inline t sgn(t a) { return a>0 ? 1 : (a < 0 ? -1 : 0); }
|
||||
template<class t> inline t limit(t mi, t x, t ma) { return min(max(mi,x),ma); }
|
||||
template<class t> inline void SWAP(t & a, t & b) { t tmp = b; b = a; a = tmp; }
|
||||
|
||||
#endif // _HELPERS_H_
|
||||
@@ -32,7 +32,6 @@
|
||||
#define GET_SBUS_POLARITY(idx) g_model.moduleData[idx].sbus.noninverted
|
||||
#define GET_MODULE_PPM_DELAY(idx) (g_model.moduleData[idx].ppm.delay * 50 + 300)
|
||||
#define GET_TRAINER_PPM_DELAY() (g_model.trainerData.delay * 50 + 300)
|
||||
#define SET_DEFAULT_PPM_FRAME_LENGTH(idx) g_model.moduleData[idx].ppm.frameLength = 4 * max((int8_t)0, g_model.moduleData[idx].channelsCount)
|
||||
|
||||
#if defined(PCBHORUS)
|
||||
#define IS_TRAINER_EXTERNAL_MODULE() false
|
||||
|
||||
+2
-11
@@ -624,12 +624,9 @@ void checkAll();
|
||||
void getADC();
|
||||
static inline void GET_ADC_IF_MIXER_NOT_RUNNING()
|
||||
{
|
||||
do {
|
||||
if (s_pulses_paused) {
|
||||
getADC();
|
||||
}
|
||||
if (s_pulses_paused) {
|
||||
getADC();
|
||||
}
|
||||
while(0);
|
||||
}
|
||||
|
||||
#include "sbus.h"
|
||||
@@ -640,12 +637,6 @@ void doLoopCommonActions();
|
||||
|
||||
#define BITMASK(bit) (1<<(bit))
|
||||
|
||||
template<class t> inline t min(t a, t b) { return a<b?a:b; }
|
||||
template<class t> inline t max(t a, t b) { return a>b?a:b; }
|
||||
template<class t> inline t sgn(t a) { return a>0 ? 1 : (a < 0 ? -1 : 0); }
|
||||
template<class t> inline t limit(t mi, t x, t ma) { return min(max(mi,x),ma); }
|
||||
template<class t> inline void SWAP(t & a, t & b) { t tmp = b; b = a; a = tmp; }
|
||||
|
||||
uint16_t isqrt32(uint32_t n);
|
||||
|
||||
#if defined(BOOT)
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
|
||||
#include "bitfield.h"
|
||||
#include "definitions.h"
|
||||
#include "helpers.h"
|
||||
#include "telemetry/telemetry.h"
|
||||
#if defined(MULTIMODULE)
|
||||
#include "telemetry/multi.h"
|
||||
@@ -121,19 +122,15 @@ inline bool isExtraModule(uint8_t)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(INTERNAL_MODULE_PPM)
|
||||
inline bool isModuleTypePPM(uint8_t type)
|
||||
{
|
||||
return type == MODULE_TYPE_PPM;
|
||||
}
|
||||
|
||||
inline bool isModulePPM(uint8_t idx)
|
||||
{
|
||||
return (idx == INTERNAL_MODULE && g_model.moduleData[INTERNAL_MODULE].type == MODULE_TYPE_PPM) ||
|
||||
(idx == EXTERNAL_MODULE && g_model.moduleData[EXTERNAL_MODULE].type == MODULE_TYPE_PPM);
|
||||
return isModuleTypePPM(g_model.moduleData[idx].type);
|
||||
}
|
||||
#else
|
||||
inline bool isModulePPM(uint8_t idx)
|
||||
{
|
||||
return isExtraModule(idx) ||
|
||||
(idx == EXTERNAL_MODULE && g_model.moduleData[EXTERNAL_MODULE].type == MODULE_TYPE_PPM);
|
||||
}
|
||||
#endif
|
||||
|
||||
inline bool isModuleTypeR9MNonAccess(uint8_t type)
|
||||
{
|
||||
@@ -479,4 +476,21 @@ inline void removePXX2ReceiverIfEmpty(uint8_t moduleIdx, uint8_t receiverIdx)
|
||||
}
|
||||
}
|
||||
|
||||
inline void setDefaultPpmFrameLength(uint8_t moduleIdx)
|
||||
{
|
||||
g_model.moduleData[moduleIdx].ppm.frameLength = 4 * max<int>(0, g_model.moduleData[moduleIdx].channelsCount);
|
||||
}
|
||||
|
||||
inline void setModuleType(uint8_t moduleIdx, uint8_t moduleType)
|
||||
{
|
||||
ModuleData & moduleData = g_model.moduleData[moduleIdx];
|
||||
memclear(&moduleData, sizeof(ModuleData));
|
||||
moduleData.type = moduleType;
|
||||
moduleData.channelsCount = defaultModuleChannels_M8(EXTERNAL_MODULE);
|
||||
if (isModuleSBUS(moduleIdx))
|
||||
moduleData.sbus.refreshRate = -31;
|
||||
else if (isModuleTypePPM(moduleData.type))
|
||||
setDefaultPpmFrameLength(EXTERNAL_MODULE);
|
||||
}
|
||||
|
||||
#endif // _MODULES_HELPERS_H_
|
||||
|
||||
@@ -754,6 +754,10 @@ void rtcInit()
|
||||
{
|
||||
}
|
||||
|
||||
void rtcGetTime(struct gtm * t)
|
||||
{
|
||||
}
|
||||
|
||||
void rtcSetTime(const struct gtm * t)
|
||||
{
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user