I messed up the merge, so pushing it over to another repo so I don't lose it. Will tidy up and remove later
Dependencies: BufferedSerial FatFileSystemCpp mbed
LTCApp.h@82:ee6eed2a51bd, 22 months ago (annotated)
- Committer:
- AndyA
- Date:
- Mon Nov 14 14:53:12 2022 +0000
- Revision:
- 82:ee6eed2a51bd
- Parent:
- 81:aee60dcce61b
First pass at adding PNT position source support.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
AndyA | 0:97661408d0f9 | 1 | #ifndef __LTCApp_h__ |
AndyA | 0:97661408d0f9 | 2 | #define __LTCApp_h__ |
AndyA | 0:97661408d0f9 | 3 | |
AndyA | 0:97661408d0f9 | 4 | #include "mbed.h" |
AndyA | 0:97661408d0f9 | 5 | #include "LTCDecode.h" |
AndyA | 0:97661408d0f9 | 6 | #include "VIPSSerialProtocol.h" |
AndyA | 82:ee6eed2a51bd | 7 | #include "PNTSerial.h" |
AndyA | 0:97661408d0f9 | 8 | #include "frameRates.h" |
AndyA | 0:97661408d0f9 | 9 | #include "BufferedSerial.h" |
AndyA | 16:a8d3a0dbe4bf | 10 | #include "FIZ_DISNEY.h" |
AndyA | 16:a8d3a0dbe4bf | 11 | #include "FIZ_digiPower.h" |
AndyA | 19:08e6a2283d58 | 12 | #include "FIZDigiPowerActive.h" |
JamieB | 29:b0eaeefa4e63 | 13 | #include "FIZCanon.h" |
AndyA | 62:dcb92159ac8e | 14 | #include "FIZ_ArriCmotion.h" |
AndyA | 9:7214e3c3e5f8 | 15 | #include "frameclock.h" |
JamieB | 20:ce1d8fbff68f | 16 | #include "FreeD.h" |
AndyA | 0:97661408d0f9 | 17 | #include <stdint.h> |
JamieB | 78:8e1170e18a2d | 18 | #include <vector> |
AndyA | 0:97661408d0f9 | 19 | |
AndyA | 0:97661408d0f9 | 20 | extern volatile uint32_t VBOXTicks; |
AndyA | 0:97661408d0f9 | 21 | extern volatile bool ppsActive; |
AndyA | 0:97661408d0f9 | 22 | |
AndyA | 0:97661408d0f9 | 23 | extern BufferedSerial pc; |
AndyA | 0:97661408d0f9 | 24 | |
AndyA | 0:97661408d0f9 | 25 | extern frameRates detectedRate; |
AndyA | 0:97661408d0f9 | 26 | |
AndyA | 0:97661408d0f9 | 27 | extern Timer TimeSinceLastFrame; |
AndyA | 0:97661408d0f9 | 28 | extern uint32_t TimeSinceLastFrameWrap; |
AndyA | 14:76083dc18b0d | 29 | extern DigitalOut led1; |
AndyA | 0:97661408d0f9 | 30 | |
AndyA | 16:a8d3a0dbe4bf | 31 | extern void vipsBypassRx(char byte); |
AndyA | 16:a8d3a0dbe4bf | 32 | |
AndyA | 82:ee6eed2a51bd | 33 | enum positionSource_e {VIPSSource, PNTSource}; |
AndyA | 82:ee6eed2a51bd | 34 | |
AndyA | 35:7ecf25d9c414 | 35 | typedef struct UserSettings_s { |
AndyA | 35:7ecf25d9c414 | 36 | int FIZmode; |
AndyA | 35:7ecf25d9c414 | 37 | int SerialOutMode; |
JamieB | 42:9653486372a6 | 38 | int FreeDPort; |
JamieB | 73:89f799500055 | 39 | int DataOutPort; |
JamieB | 42:9653486372a6 | 40 | int VipsUDPPort; |
AndyA | 68:9e68287f0ab7 | 41 | int SettingsPort; |
AndyA | 35:7ecf25d9c414 | 42 | char IPAddress[32]; |
AndyA | 35:7ecf25d9c414 | 43 | char Gateway[32]; |
AndyA | 35:7ecf25d9c414 | 44 | char Subnet[32]; |
AndyA | 35:7ecf25d9c414 | 45 | int FilterOrder; |
AndyA | 35:7ecf25d9c414 | 46 | float FilterFreq; |
AndyA | 35:7ecf25d9c414 | 47 | float FilterRate; |
AndyA | 35:7ecf25d9c414 | 48 | bool FilterXY; |
AndyA | 35:7ecf25d9c414 | 49 | bool FilterZ; |
AndyA | 35:7ecf25d9c414 | 50 | bool FilterRoll; |
AndyA | 35:7ecf25d9c414 | 51 | bool FilterPitch; |
AndyA | 35:7ecf25d9c414 | 52 | bool FilterYaw; |
JamieB | 46:432d63e8fe64 | 53 | bool AutoHyperSmooth; |
AndyA | 44:fe7fcf62c75d | 54 | bool FlexibleVIPSOut; |
AndyA | 50:d6c56eccf56a | 55 | float SerialTxDelayMS; |
AndyA | 50:d6c56eccf56a | 56 | float UDPTxDelayMS; |
AndyA | 50:d6c56eccf56a | 57 | float SerialTxDelayFrame; |
AndyA | 50:d6c56eccf56a | 58 | float UDPTxDelayFrame; |
JamieB | 72:da2f1df6a50d | 59 | float InterpolationOffset_uS; |
JamieB | 72:da2f1df6a50d | 60 | float InterpolationOffsetFrame; |
AndyA | 51:d4a5151af5af | 61 | bool InvertRoll; |
AndyA | 51:d4a5151af5af | 62 | bool InvertPitch; |
AndyA | 51:d4a5151af5af | 63 | bool InvertYaw; |
AndyA | 55:ee36cab19a58 | 64 | int OffsetRoll; |
AndyA | 55:ee36cab19a58 | 65 | int OffsetPitch; |
AndyA | 55:ee36cab19a58 | 66 | int OffsetYaw; |
AndyA | 52:adbbaadca0a9 | 67 | int bypassBaud; |
JamieB | 60:899862db7f2a | 68 | bool ForcePPF; |
JamieB | 61:e734e86661b0 | 69 | bool HalfRate; |
JamieB | 71:7305a35cee58 | 70 | float focus_scale; |
JamieB | 71:7305a35cee58 | 71 | float focus_offset; |
JamieB | 71:7305a35cee58 | 72 | float iris_scale; |
JamieB | 71:7305a35cee58 | 73 | float iris_offset; |
JamieB | 71:7305a35cee58 | 74 | float zoom_scale; |
JamieB | 71:7305a35cee58 | 75 | float zoom_offset; |
JamieB | 80:0b7f1b85b626 | 76 | bool low_zoom_precision; |
JamieB | 81:aee60dcce61b | 77 | bool absolute_focus; |
JamieB | 81:aee60dcce61b | 78 | bool absolute_iris; |
JamieB | 81:aee60dcce61b | 79 | bool absolute_zoom; |
AndyA | 82:ee6eed2a51bd | 80 | enum positionSource_e PositionSource; |
AndyA | 82:ee6eed2a51bd | 81 | double originLat; |
AndyA | 82:ee6eed2a51bd | 82 | double originLon; |
AndyA | 82:ee6eed2a51bd | 83 | float originAlt; |
JamieB | 80:0b7f1b85b626 | 84 | vector<unsigned int> focus_encoder_map; |
JamieB | 80:0b7f1b85b626 | 85 | vector<unsigned int> focus_absolute_map; |
JamieB | 80:0b7f1b85b626 | 86 | vector<unsigned int> iris_encoder_map; |
JamieB | 80:0b7f1b85b626 | 87 | vector<unsigned int> iris_absolute_map; |
JamieB | 80:0b7f1b85b626 | 88 | vector<unsigned int> zoom_encoder_map; |
JamieB | 80:0b7f1b85b626 | 89 | vector<unsigned int> zoom_absolute_map; |
AndyA | 35:7ecf25d9c414 | 90 | } UserSettings_t; |
AndyA | 35:7ecf25d9c414 | 91 | |
JamieB | 46:432d63e8fe64 | 92 | extern UserSettings_t UserSettings; |
JamieB | 46:432d63e8fe64 | 93 | |
JamieB | 80:0b7f1b85b626 | 94 | // extern int pos_upper; |
JamieB | 80:0b7f1b85b626 | 95 | // extern int pos_lower; |
JamieB | 80:0b7f1b85b626 | 96 | // extern int pos_value; |
JamieB | 80:0b7f1b85b626 | 97 | |
AndyA | 0:97661408d0f9 | 98 | #endif |