Mercurial > public > ostc4
comparison Small_CPU/Src/scheduler.c @ 969:81049905d829 Evo_2_23
Zusammenf?hren
| author | heinrichsweikamp |
|---|---|
| date | Sun, 19 Jan 2025 12:02:59 +0100 |
| parents | 9b29995d6619 |
| children | d9290c76b840 |
comparison
equal
deleted
inserted
replaced
| 968:b9a1710522b1 | 969:81049905d829 |
|---|---|
| 340 externalInface_SetSensorMap(global.dataSendToSlave.data.externalInterface_SensorMap); | 340 externalInface_SetSensorMap(global.dataSendToSlave.data.externalInterface_SensorMap); |
| 341 if(global.dataSendToSlave.data.externalInterface_Cmd & 0x00FF) /* lowest nibble for commands */ | 341 if(global.dataSendToSlave.data.externalInterface_Cmd & 0x00FF) /* lowest nibble for commands */ |
| 342 { | 342 { |
| 343 externalInterface_ExecuteCmd(global.dataSendToSlave.data.externalInterface_Cmd); | 343 externalInterface_ExecuteCmd(global.dataSendToSlave.data.externalInterface_Cmd); |
| 344 } | 344 } |
| 345 #ifdef ENABLE_GPIO_V2 | |
| 346 GPIO_HandleBuzzer(); | |
| 347 #endif | |
| 345 | 348 |
| 346 | 349 |
| 347 #if 0 | 350 #if 0 |
| 348 //TODO: Temporary placed here. Duration ~210 ms. | 351 //TODO: Temporary placed here. Duration ~210 ms. |
| 349 if (global.I2C_SystemStatus != HAL_OK) { | 352 if (global.I2C_SystemStatus != HAL_OK) { |
| 1789 global.dataSendToMaster.boolADCO2Data |= boolCO2Buffer; | 1792 global.dataSendToMaster.boolADCO2Data |= boolCO2Buffer; |
| 1790 } | 1793 } |
| 1791 | 1794 |
| 1792 void copyGNSSdata(void) | 1795 void copyGNSSdata(void) |
| 1793 { | 1796 { |
| 1797 RTC_TimeTypeDef sTimeNow; | |
| 1798 | |
| 1794 global.dataSendToMaster.data[0].gnssInfo.coord.fLat = GNSS_Handle.fLat; | 1799 global.dataSendToMaster.data[0].gnssInfo.coord.fLat = GNSS_Handle.fLat; |
| 1795 global.dataSendToMaster.data[0].gnssInfo.coord.fLon = GNSS_Handle.fLon; | 1800 global.dataSendToMaster.data[0].gnssInfo.coord.fLon = GNSS_Handle.fLon; |
| 1796 global.dataSendToMaster.data[0].gnssInfo.fixType = GNSS_Handle.fixType; | 1801 global.dataSendToMaster.data[0].gnssInfo.fixType = GNSS_Handle.fixType; |
| 1797 global.dataSendToMaster.data[0].gnssInfo.numSat = GNSS_Handle.numSat; | 1802 global.dataSendToMaster.data[0].gnssInfo.numSat = GNSS_Handle.numSat; |
| 1798 global.dataSendToMaster.data[0].gnssInfo.DateTime.year = (uint8_t) (GNSS_Handle.year - 2000); | 1803 global.dataSendToMaster.data[0].gnssInfo.DateTime.year = (uint8_t) (GNSS_Handle.year - 2000); |
| 1802 global.dataSendToMaster.data[0].gnssInfo.DateTime.min = GNSS_Handle.min; | 1807 global.dataSendToMaster.data[0].gnssInfo.DateTime.min = GNSS_Handle.min; |
| 1803 global.dataSendToMaster.data[0].gnssInfo.DateTime.sec = GNSS_Handle.sec; | 1808 global.dataSendToMaster.data[0].gnssInfo.DateTime.sec = GNSS_Handle.sec; |
| 1804 | 1809 |
| 1805 global.dataSendToMaster.data[0].gnssInfo.alive = GNSS_Handle.alive; | 1810 global.dataSendToMaster.data[0].gnssInfo.alive = GNSS_Handle.alive; |
| 1806 | 1811 |
| 1812 if(( GNSS_Handle.fixType < 2) && (GNSS_Handle.alive & GNSS_ALIVE_BACKUP_POS)) /* fallback to last known position ? */ | |
| 1813 { | |
| 1814 RTC_GetTime(&sTimeNow); | |
| 1815 if(GNSS_Handle.last_hour > sTimeNow.Hours) | |
| 1816 { | |
| 1817 sTimeNow.Hours += 24; /* compensate date change */ | |
| 1818 } | |
| 1819 if(sTimeNow.Hours - GNSS_Handle.last_hour > 2) | |
| 1820 { | |
| 1821 GNSS_Handle.alive &= ~GNSS_ALIVE_BACKUP_POS; /* position outdated */ | |
| 1822 } | |
| 1823 else | |
| 1824 { | |
| 1825 global.dataSendToMaster.data[0].gnssInfo.coord.fLat = GNSS_Handle.last_fLat; | |
| 1826 global.dataSendToMaster.data[0].gnssInfo.coord.fLon = GNSS_Handle.last_fLon; | |
| 1827 } | |
| 1828 } | |
| 1807 memcpy(&global.dataSendToMaster.data[0].gnssInfo.signalQual,&GNSS_Handle.statSat, sizeof(GNSS_Handle.statSat)); | 1829 memcpy(&global.dataSendToMaster.data[0].gnssInfo.signalQual,&GNSS_Handle.statSat, sizeof(GNSS_Handle.statSat)); |
| 1808 } | 1830 } |
| 1809 | 1831 |
| 1810 | 1832 |
| 1811 typedef enum | 1833 typedef enum |
