Skip to content

Commit

Permalink
Координаты от рации вывел в debug-can и записываю в логи
Browse files Browse the repository at this point in the history
  • Loading branch information
iamsaywhat committed Mar 24, 2020
1 parent f883173 commit ffd3292
Show file tree
Hide file tree
Showing 8 changed files with 117 additions and 45 deletions.
51 changes: 33 additions & 18 deletions BUP.uvoptx
Original file line number Diff line number Diff line change
Expand Up @@ -144,50 +144,50 @@
<Bp>
<Number>0</Number>
<Type>0</Type>
<LineNumber>56</LineNumber>
<LineNumber>444</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>0</Address>
<Address>134245508</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>.\main.c</Filename>
<BreakIfRCount>1</BreakIfRCount>
<Filename>.\selftesting.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
<Bp>
<Number>1</Number>
<Type>0</Type>
<LineNumber>36</LineNumber>
<LineNumber>34</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>0</Address>
<Address>134269830</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<BreakIfRCount>1</BreakIfRCount>
<Filename>.\main.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
</Bp>
<Bp>
<Number>2</Number>
<Type>0</Type>
<LineNumber>341</LineNumber>
<LineNumber>132</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>0</Address>
<Address>134246322</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>0</BreakIfRCount>
<Filename>.\custom.drivers\radiostation.c</Filename>
<BreakIfRCount>1</BreakIfRCount>
<Filename>.\taskmanager.c</Filename>
<ExecCommand></ExecCommand>
<Expression></Expression>
<Expression>\\BK_BRPU\taskmanager.c\132</Expression>
</Bp>
</Breakpoint>
<WatchWindow1>
Expand All @@ -211,6 +211,11 @@
<WinNumber>1</WinNumber>
<ItemText>systemTime,0x10</ItemText>
</Ww>
<Ww>
<count>4</count>
<WinNumber>1</WinNumber>
<ItemText>bupDataStorage</ItemText>
</Ww>
</WatchWindow1>
<WatchWindow2>
<Ww>
Expand Down Expand Up @@ -298,12 +303,22 @@
<WinNumber>2</WinNumber>
<ItemText>sdsList</ItemText>
</Ww>
<Ww>
<count>17</count>
<WinNumber>2</WinNumber>
<ItemText>globalTimeout</ItemText>
</Ww>
<Ww>
<count>18</count>
<WinNumber>2</WinNumber>
<ItemText>_currentBaudrate,0x0A</ItemText>
</Ww>
</WatchWindow2>
<MemoryWindow1>
<Mm>
<WinNumber>1</WinNumber>
<SubType>0</SubType>
<ItemText>0x20000270</ItemText>
<SubType>8</SubType>
<ItemText>0x20000445</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow1>
Expand Down Expand Up @@ -455,7 +470,7 @@
<GroupNumber>1</GroupNumber>
<FileNumber>9</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<Focus>0</Focus>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
Expand Down Expand Up @@ -536,7 +551,7 @@

<Group>
<GroupName>math.model</GroupName>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
Expand Down Expand Up @@ -570,7 +585,7 @@
<GroupNumber>4</GroupNumber>
<FileNumber>16</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<Focus>0</Focus>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
Expand Down Expand Up @@ -755,7 +770,7 @@
<GroupNumber>6</GroupNumber>
<FileNumber>29</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<Focus>0</Focus>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
Expand Down
29 changes: 27 additions & 2 deletions bupdatastorage.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,31 @@ const BupFirmwareVersion bupFirmwareVersion = {0, // Старшая в
BupDataStorage bupDataStorage;


/***************************************************************************
Функции доступа к данным БУП
***************************************************************************/
double Bup_getTouchdownLatitude(void) { return bupDataStorage.touchdownLatitude;}
double Bup_getTouchdownLongitude(void) { return bupDataStorage.touchdownLongitude;}
double Bup_getTouchdownAltitude(void) { return bupDataStorage.touchdownAltitude;}
double Bup_getLatitude(void) { return bupDataStorage.latitude;}
double Bup_getLongitude(void) { return bupDataStorage.longitude;}
double Bup_getAltitude(void) { return bupDataStorage.altitude;}
double Bup_getHeadingTrue(void) { return bupDataStorage.headingTrue;}
double Bup_getHeadingMgn(void) { return bupDataStorage.headingMgn;}
double Bup_getVelocityLatitude(void) { return bupDataStorage.velocityLatitude;}
double Bup_getVelocityLongitude(void) { return bupDataStorage.velocityLongitude;}
double Bup_getVelocityAltitude(void) { return bupDataStorage.velocityAltitude;}
double Bup_getPitch(void) { return bupDataStorage.pitch;}
double Bup_getRoll(void) { return bupDataStorage.roll;}
double Bup_getCourse(void) { return bupDataStorage.course;}
short Bup_getReliefHeight(void) { return bupDataStorage.reliefHeight;}
short Bup_getReliefHeightOnTDP(void) { return bupDataStorage.reliefOnTDP;}
float Bup_getBatteryVoltage(void) { return bupDataStorage.battery50V; }
uint32_t Bup_getControlTime (void) { return bupDataStorage.controlSecond;}
double Bup_getRadioLatitude(void) { return bupDataStorage.radioLatitude; }
double Bup_getRadioLongitude(void) { return bupDataStorage.radioLongitude; }
uint8_t Bup_getRadioUpdateIndex(void) { return bupDataStorage.radioUpdateIndex; }


/**************************************************************************************************************
Bup_initialize - Инициализация хранилища данных
Expand All @@ -54,7 +79,7 @@ void Bup_initialize (void)
bupDataStorage.controlSecond = 0;
bupDataStorage.radioLatitude = 0;
bupDataStorage.radioLongitude = 0;
bupDataStorage.radioUpdated = 0;
bupDataStorage.radioUpdateIndex = 0;

// Определим высоту рельефа в точке приземления
bupDataStorage.reliefOnTDP = getHeightOnThisPoint(bupDataStorage.touchdownLongitude,
Expand Down Expand Up @@ -91,7 +116,7 @@ void Bup_updateData (void)
// Спрашиваем радиостанцию, и если есть новые данные, то поднимаем флаг, что они обновились
if(Radiostation.autoChecker(&bupDataStorage.radioLatitude,
&bupDataStorage.radioLongitude) == RADIO_GOT_NEW_COORDINATES)
bupDataStorage.radioUpdated = 1;
bupDataStorage.radioUpdateIndex++;

// Рассчитываем по полученным данным высоту рельефа в точке
bupDataStorage.reliefHeight = getHeightOnThisPoint(bupDataStorage.longitude,
Expand Down
46 changes: 24 additions & 22 deletions bupdatastorage.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,9 @@ typedef struct{
short reliefOnTDP; // Высота рельефа в точке приземления, метры
float battery50V; // Напряжение на секции 50 Вольт АКБ
uint32_t controlSecond; // Системное время БУП
double radioLatitude; //
double radioLongitude; //
uint8_t radioUpdated; //
double radioLatitude; // Широта точки приземления поченные от радиостанции
double radioLongitude; // Долгота точки приземления поченные от радиостанции
uint8_t radioUpdateIndex; // Индекс проверки обновления
}BupDataStorage;


Expand Down Expand Up @@ -124,24 +124,26 @@ void Bup_updateDataFromSWS (void);
/***************************************************************************
Функции доступа к данным БУП
***************************************************************************/
inline double Bup_getTouchdownLatitude(void) { return bupDataStorage.touchdownLatitude;}
inline double Bup_getTouchdownLongitude(void) { return bupDataStorage.touchdownLongitude;}
inline double Bup_getTouchdownAltitude(void) { return bupDataStorage.touchdownAltitude;}
inline double Bup_getLatitude(void) { return bupDataStorage.latitude;}
inline double Bup_getLongitude(void) { return bupDataStorage.longitude;}
inline double Bup_getAltitude(void) { return bupDataStorage.altitude;}
inline double Bup_getHeadingTrue(void) { return bupDataStorage.headingTrue;}
inline double Bup_getHeadingMgn(void) { return bupDataStorage.headingMgn;}
inline double Bup_getVelocityLatitude(void) { return bupDataStorage.velocityLatitude;}
inline double Bup_getVelocityLongitude(void) { return bupDataStorage.velocityLongitude;}
inline double Bup_getVelocityAltitude(void) { return bupDataStorage.velocityAltitude;}
inline double Bup_getPitch(void) { return bupDataStorage.pitch;}
inline double Bup_getRoll(void) { return bupDataStorage.roll;}
inline double Bup_getCourse(void) { return bupDataStorage.course;}
inline short Bup_getReliefHeight(void) { return bupDataStorage.reliefHeight;}
inline short Bup_getReliefHeightOnTDP(void) { return bupDataStorage.reliefOnTDP;}
inline uint32_t Bup_getControlTime (void) { return bupDataStorage.controlSecond;}
inline double Bup_getRadioLatitude(void) { return bupDataStorage.radioLatitude; }
inline double Bup_getRadioLongitude(void) { return bupDataStorage.radioLongitude; }
inline double Bup_getTouchdownLatitude(void);
inline double Bup_getTouchdownLongitude(void);
inline double Bup_getTouchdownAltitude(void);
inline double Bup_getLatitude(void);
inline double Bup_getLongitude(void);
inline double Bup_getAltitude(void);
inline double Bup_getHeadingTrue(void);
inline double Bup_getHeadingMgn(void);
inline double Bup_getVelocityLatitude(void);
inline double Bup_getVelocityLongitude(void);
inline double Bup_getVelocityAltitude(void);
inline double Bup_getPitch(void);
inline double Bup_getRoll(void);
inline double Bup_getCourse(void);
inline short Bup_getReliefHeight(void);
inline short Bup_getReliefHeightOnTDP(void);
inline float Bup_getBatteryVoltage(void);
inline uint32_t Bup_getControlTime (void);
inline double Bup_getRadioLatitude(void);
inline double Bup_getRadioLongitude(void);
inline uint8_t Bup_getRadioUpdateIndex(void);

#endif
7 changes: 7 additions & 0 deletions debug.c
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,10 @@ void debug_can_full_struct (void)
debug_can(0x523, &debug_vars.rtU_XYZi_Alt, 8);
debug_can(0x526, &debug_vars.Relief_height, 2);
debug_can(0x527, &debug_vars.SysState, 2);

debug_can(0x532, &debug_vars.radioLatitude, 8);
debug_can(0x533, &debug_vars.radioLongitude, 8);
debug_can(0x534, &debug_vars.radioUpdatedIndex, 1);
}

/*********************************************************************************************************
Expand Down Expand Up @@ -153,6 +157,9 @@ void debug_prepare_data (void)
debug_vars.rtU_XYZi_Alt = Bup_getAltitude(); // Высота преобразованная в метры
debug_vars.Relief_height = Bup_getReliefHeight(); // Высота рельефа под нами в метрах
debug_vars.SysState = systemState; // Состояние системы (из SelfTesing)
debug_vars.radioLatitude = Bup_getRadioLatitude(); // Широта точки приземления от радиостанции
debug_vars.radioLongitude = Bup_getRadioLongitude(); // Долгота точки приземления от радиостанции
debug_vars.radioUpdatedIndex = Bup_getRadioUpdateIndex(); // Индекс обновления координат от радиостанции
}


Expand Down
3 changes: 3 additions & 0 deletions debug.h
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,9 @@ typedef struct
double rtU_XYZi_Alt; // Зарезервирован адрес CAN 0x523
int16_t Relief_height; // Зарезервирован адрес CAN 0x526
uint16_t SysState; // Зарезервирован адрес CAN 0x527
double radioLatitude; // Зарезервирован адрес CAN 0x532
double radioLongitude; // Зарезервирован адрес CAN 0x533
uint8_t radioUpdatedIndex; // Зарезервирован адрес CAN 0x534
}debug_output;

// Глобальный экземпляр отладочной структуры
Expand Down
2 changes: 1 addition & 1 deletion loger.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ void loger_initmsg (void)
************************************************************************************/
void loger_periodprint (void)
{
printf("\nTimestamp, sec: %d\n", bupDataStorage.controlSecond); // Метку времени в ЛОГ
printf("\nTimestamp, sec: %d\n", Bup_getControlTime()); // Метку времени в ЛОГ
printf("SNS_Lat: %llu\n", SNS_position.Struct.Pos_lat);
printf("SNS_Lon: %llu\n", SNS_position.Struct.Pos_lon);
printf("SNS_Alt: %llu\n", SNS_position.Struct.Pos_alt);
Expand Down
22 changes: 21 additions & 1 deletion taskmanager.c
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,7 @@ void task_loger (void)
{
case 0:
{
printf("\nTimestamp, sec: %d\n", bupDataStorage.controlSecond);
printf("\nTimestamp, sec: %d\n", Bup_getControlTime());
TaskManager.Task_LogerStage++; break;
}
case 1:
Expand Down Expand Up @@ -453,6 +453,26 @@ void task_loger (void)
#endif //************************************************************************** !flightRegulatorCFB
TaskManager.Task_LogerStage++; break;
}
case 32:
{
static uint8_t lastUpdateIndex = 0;
if(lastUpdateIndex != Bup_getRadioUpdateIndex())
{
printf("Radio_lat: %f\n", Bup_getRadioLatitude());
lastUpdateIndex = Bup_getRadioUpdateIndex();
}
TaskManager.Task_LogerStage++; break;
}
case 33:
{
static uint8_t lastUpdateIndex = 0;
if(lastUpdateIndex != Bup_getRadioUpdateIndex())
{
printf("Radio_lon: %f\n", Bup_getRadioLongitude());
lastUpdateIndex = Bup_getRadioUpdateIndex();
}
TaskManager.Task_LogerStage++; break;
}
default:
{
// Сбрасываем этап выполнения данной задачи
Expand Down
2 changes: 1 addition & 1 deletion zpz.c
Original file line number Diff line number Diff line change
Expand Up @@ -1859,7 +1859,7 @@ static void ZPZ_Response_SYSTEM_STATE (uint16_t NumPacket)
/* Кладём состояние системы в буфер */
*((uint16_t*)buffer) = systemState;
/* Кладём заряд батареи */
*((float*)((uint8_t*)buffer+2)) = bupDataStorage.battery50V;
*((float*)((uint8_t*)buffer+2)) = Bup_getBatteryVoltage();
/* Кладём версию прошивки */
*((uint8_t*)buffer+6) = bupFirmwareVersion.microFirmware;
*((uint8_t*)buffer+7) = bupFirmwareVersion.minorFirmware;
Expand Down

0 comments on commit ffd3292

Please sign in to comment.