#define DCSBIOS_IRQ_SERIAL #include "DcsBios.h" int SaspYawSasL_Coil = 11; // Magnetic coil CH4 int SaspYawSasR_Coil = 10; // Magnetic coil CH3 int SaspPitchSasL_Coil = 9; // Magnetic coil CH2 int SaspPitchSasR_Coil = 8; // Magnetic coil CH1 DcsBios::Switch3Pos saspMonitorTest("SASP_MONITOR_TEST", 6, 5); DcsBios::Switch2Pos saspToTrim("SASP_TO_TRIM", A4); DcsBios::Switch2Pos saspYawSasL("SASP_YAW_SAS_L", A3); DcsBios::Switch2Pos saspYawSasR("SASP_YAW_SAS_R", A2); DcsBios::Switch2Pos saspPitchSasL("SASP_PITCH_SAS_L", A1); DcsBios::Switch2Pos saspPitchSasR("SASP_PITCH_SAS_R", A0); // Yaw SAS Left void onSaspYawSasLChange(unsigned int newCoilValue) { switch (newCoilValue){ case 0: digitalWrite(SaspYawSasL_Coil, LOW); break; case 1: digitalWrite(SaspYawSasL_Coil, HIGH); break; } } DcsBios::IntegerBuffer saspYawSasLBuffer(0x1108, 0x0400, 10, onSaspYawSasLChange); // Yaw SAS Right void onSaspYawSasRChange(unsigned int newCoilValue) { switch (newCoilValue){ case 0: digitalWrite(SaspYawSasR_Coil, LOW); break; case 1: digitalWrite(SaspYawSasR_Coil, HIGH); break; } } DcsBios::IntegerBuffer saspYawSasRBuffer(0x1108, 0x0800, 11, onSaspYawSasRChange); // Pitch SAS Left void onSaspPitchSasLChange(unsigned int newCoilValue) { switch (newCoilValue){ case 0: digitalWrite(SaspPitchSasL_Coil, LOW); break; case 1: digitalWrite(SaspPitchSasL_Coil, HIGH); break; } } DcsBios::IntegerBuffer saspPitchSasLBuffer(0x1108, 0x1000, 12, onSaspPitchSasLChange); // Pitch SAS Right void onSaspPitchSasRChange(unsigned int newCoilValue) { switch (newCoilValue){ case 0: digitalWrite(SaspPitchSasR_Coil, LOW); break; case 1: digitalWrite(SaspPitchSasR_Coil, HIGH); break; } } DcsBios::IntegerBuffer saspPitchSasRBuffer(0x1108, 0x2000, 13, onSaspPitchSasRChange); void setup() { DcsBios::setup(); pinMode (SaspPitchSasR_Coil, OUTPUT); pinMode (SaspPitchSasL_Coil, OUTPUT); pinMode (SaspYawSasR_Coil, OUTPUT); pinMode (SaspYawSasL_Coil, OUTPUT); } void loop() { DcsBios::loop(); }