update gencode

This commit is contained in:
Matthew GONG
2021-11-28 10:46:34 +08:00
parent 6f69da38f5
commit faf964370e
10 changed files with 614 additions and 568 deletions
+601 -555
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
@@ -693,8 +693,6 @@ static void SIL_sf_msg_send_cmd(void);
static void SIL_update_vert(ENUM_AFCS_VERT in, ENUM_AT in2, ENUM_AFCS_VERT *out,
ENUM_AT *out2);
static void SIL_parachute(void);
static void SIL_Idle(void);
static void SIL_Idle1(void);
static boolean_T SIL_sf_msg_pop_mission_item(void);
static void SIL_sf_msg_send_mission_ack(void);
static void SIL_sf_msg_send_mission_req_int(void);
@@ -762,7 +760,6 @@ static void SIL_sf_msg_discard_mission_req_int_queue(void);
static void SIL_sf_msg_discard_command_ack_queue(void);
static void SIL_sf_msg_discard_ap_ver_queue(void);
static void SIL_sf_msg_discard_serial_echoline(void);
static void SIL_work(void);
static void SIL_sf_msg_send_msgs(void);
static void rate_scheduler(void);
@@ -6474,45 +6471,6 @@ static void SIL_parachute(void)
}
}
/* Function for Chart: '<S693>/Chart' */
static void SIL_Idle(void)
{
if ((SIL_B.BusAssignment_i.recovery & 2U) != 0U) {
SIL_DW.is_c22_kb3_autopilot = SIL_IN_parachute;
SIL_DW.temporalCounter_i2 = 0U;
SIL_B.recovery_out = 3U;
SIL_DW.is_parachute = SIL_IN_one;
SIL_DW.temporalCounter_i1_ct = 0U;
SIL_B.ch_out = 3U;
SIL_B.peroid_out = 50U;
SIL_B.sw_out = 1U;
} else {
SIL_B.recovery_out = SIL_B.BusAssignment_i.recovery;
SIL_B.ch_out = SIL_B.BusAssignment_i.ccm_ch;
SIL_B.peroid_out = SIL_B.BusAssignment_i.ccm_period;
SIL_B.sw_out = SIL_B.BusAssignment_i.ccm_sw;
}
}
/* Function for Chart: '<S693>/Chart' */
static void SIL_Idle1(void)
{
if ((SIL_B.BusAssignment_i.recovery & 32U) != 0U) {
SIL_DW.is_c22_kb3_autopilot = SIL_IN_cut;
SIL_B.recovery_out = 63U;
SIL_DW.is_cut = SIL_IN_one;
SIL_DW.temporalCounter_i1_ct = 0U;
SIL_B.ch_out = 4U;
SIL_B.peroid_out = 50U;
SIL_B.sw_out = 1U;
} else {
SIL_B.recovery_out = SIL_B.BusAssignment_i.recovery;
SIL_B.ch_out = SIL_B.BusAssignment_i.ccm_ch;
SIL_B.peroid_out = SIL_B.BusAssignment_i.ccm_period;
SIL_B.sw_out = SIL_B.BusAssignment_i.ccm_sw;
}
}
int32_T SIL_pop_c02u1i(Queue_mavlink_mission_item_int_t *q,
Msg_mavlink_mission_item_int_t *elementOut)
{
@@ -8605,515 +8563,6 @@ static void SIL_sf_msg_discard_serial_echoline(void)
}
}
/* Function for Chart: '<S7>/rec_ctrl' */
static void SIL_work(void)
{
uint8_T tmp;
int32_T i;
switch (SIL_DW.is_a5Hz) {
case SIL_IN_idle_p:
if ((SIL_DW.temporalCounter_i3 >= 39U) && (!SIL_DW.act)) {
SIL_DW.is_a5Hz = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec5Hz' */
/* SignalConversion: '<S1323>/TmpSignal ConversionAtByte PackInport1' */
SIL_B.TmpSignalConversionAtBytePackInport1_l[0] = SIL_B.Merge.boot_time;
SIL_B.TmpSignalConversionAtBytePackInport1_l[1] =
SIL_B.BusAssignment_j.sensors_health;
SIL_B.TmpSignalConversionAtBytePackInport1_l[2] = SIL_B.value;
/* SignalConversion: '<S1323>/TmpSignal ConversionAtByte PackInport4' */
SIL_B.TmpSignalConversionAtBytePackInport4_b[0] = SIL_B.voltages[0];
SIL_B.TmpSignalConversionAtBytePackInport4_b[1] = SIL_B.voltages[1];
SIL_B.TmpSignalConversionAtBytePackInport4_b[2] = SIL_B.voltages[2];
SIL_B.TmpSignalConversionAtBytePackInport4_b[3] = SIL_B.voltages[3];
SIL_B.TmpSignalConversionAtBytePackInport4_b[4] = SIL_B.group_voltage_mv_g;
SIL_B.TmpSignalConversionAtBytePackInport4_b[5] = SIL_B.group_current_dA_c;
SIL_B.TmpSignalConversionAtBytePackInport4_b[6] = SIL_B.group_voltage_mv;
SIL_B.TmpSignalConversionAtBytePackInport4_b[7] = SIL_B.group_current_dA;
SIL_B.TmpSignalConversionAtBytePackInport4_b[8] = SIL_B.SFunction.RPM_mea;
SIL_B.TmpSignalConversionAtBytePackInport4_b[9] = SIL_B.SFunction.T5;
SIL_B.TmpSignalConversionAtBytePackInport4_b[10] = SIL_B.SFunction.Kfuel;
SIL_B.TmpSignalConversionAtBytePackInport4_b[11] = SIL_B.SFunction.RPM_des;
SIL_B.TmpSignalConversionAtBytePackInport4_b[12] =
SIL_B.SFunction.RPM_des_ap;
SIL_B.TmpSignalConversionAtBytePackInport4_b[13] = SIL_B.SFunction.RPM_bak;
SIL_B.TmpSignalConversionAtBytePackInport4_b[14] = SIL_B.SFunction.IOState;
SIL_B.TmpSignalConversionAtBytePackInport4_b[15] =
SIL_B.SFunction.SysState;
SIL_B.TmpSignalConversionAtBytePackInport4_b[16] = SIL_B.SFunction.Fault;
SIL_B.TmpSignalConversionAtBytePackInport4_b[17] = SIL_B.low_temp_degC_a;
/* SignalConversion: '<S1323>/TmpSignal ConversionAtByte PackInport5' */
SIL_B.TmpSignalConversionAtBytePackInport5_h[0] = SIL_B.SFunction.stage_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[1] = SIL_B.SFunction.temp_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[2] = SIL_B.SFunction.tas_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[3] = SIL_B.SFunction.asl_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[4] = SIL_B.SFunction.KabMain;
SIL_B.TmpSignalConversionAtBytePackInport5_h[5] = SIL_B.SFunction.KabFire;
SIL_B.TmpSignalConversionAtBytePackInport5_h[6] = SIL_B.SFunction.KDj;
SIL_B.TmpSignalConversionAtBytePackInport5_h[7] = SIL_B.SFunction.T1t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[8] = SIL_B.SFunction.P1t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[9] = SIL_B.SFunction.P3t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[10] = SIL_B.SFunction.P5t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[11] = SIL_B.SFunction.DJS;
SIL_B.TmpSignalConversionAtBytePackInport5_h[12] = SIL_B.SFunction.Vcc;
SIL_B.TmpSignalConversionAtBytePackInport5_h[13] = SIL_B.SFunction.Tbak;
SIL_B.TmpSignalConversionAtBytePackInport5_h[14] =
SIL_B.SFunction.CFuelMode;
SIL_B.TmpSignalConversionAtBytePackInport5_h[15] = SIL_B.SFunction.Cmd;
/* S-Function (any2byte): '<S1323>/Byte Pack' */
/* Pack: <S1323>/Byte Pack */
(void) memcpy(&SIL_B.BytePack_g[0],
&SIL_B.TmpSignalConversionAtBytePackInport1_l[0],
12);
(void) memcpy(&SIL_B.BytePack_g[12], &SIL_B.Merge.fuel_est,
4);
(void) memcpy(&SIL_B.BytePack_g[16], &SIL_B.temps[0],
8);
(void) memcpy(&SIL_B.BytePack_g[24],
&SIL_B.TmpSignalConversionAtBytePackInport4_b[0],
36);
(void) memcpy(&SIL_B.BytePack_g[60],
&SIL_B.TmpSignalConversionAtBytePackInport5_h[0],
16);
/* Sum: '<S1323>/Sum of Elements' */
tmp = 0U;
for (i = 0; i < 76; i++) {
tmp = (uint8_T)((uint32_T)tmp + SIL_B.BytePack_g[i]);
/* SignalConversion: '<S1318>/OutportBufferFordata' */
SIL_B.Merge_gk[i + 4] = SIL_B.BytePack_g[i];
}
/* SignalConversion: '<S1318>/OutportBufferFordata' incorporates:
* Constant: '<S1323>/id'
* Constant: '<S1323>/sync1'
* Constant: '<S1323>/sync2'
* Sum: '<S1323>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 2U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width_m;
SIL_B.Merge_gk[80] = tmp;
memset(&SIL_B.Merge_gk[81], 0, 179U * sizeof(uint8_T));
/* SignalConversion: '<S1318>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1_a;
/* End of Outputs for SubSystem: '<S7>/rec5Hz' */
}
break;
case SIL_IN_start:
if (SIL_DW.temporalCounter_i3 >= 4U) {
SIL_DW.is_a5Hz = SIL_IN_idle_p;
SIL_DW.temporalCounter_i3 = 0U;
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a5Hz = SIL_IN_idle_p;
SIL_DW.temporalCounter_i3 = 0U;
break;
}
switch (SIL_DW.is_a5Hz1) {
case SIL_IN_idle_p:
if ((SIL_DW.temporalCounter_i4 >= 39U) && (!SIL_DW.act)) {
SIL_DW.is_a5Hz1 = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec5Hz1' */
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport1' */
SIL_B.TmpSignalConversionAtBytePackInport1[0] = SIL_B.Merge.boot_time;
SIL_B.TmpSignalConversionAtBytePackInport1[1] =
SIL_B.BusAssignment_j.sensors_enabled;
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport2' incorporates:
* Constant: '<S1324>/Constant1'
* DataTypeConversion: '<S1324>/Data Type Conversion'
*/
SIL_B.TmpSignalConversionAtBytePackInport2_o[0] = SIL_B.Ps_m;
SIL_B.TmpSignalConversionAtBytePackInport2_o[1] = SIL_B.qbar_h;
SIL_B.TmpSignalConversionAtBytePackInport2_o[2] = SIL_B.Ps1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[3] = SIL_B.Ps2;
SIL_B.TmpSignalConversionAtBytePackInport2_o[4] = SIL_B.Qbar1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[5] = SIL_B.Temp_total;
SIL_B.TmpSignalConversionAtBytePackInport2_o[6] = SIL_B.Gain1_c;
SIL_B.TmpSignalConversionAtBytePackInport2_o[7] = SIL_B.Gain1_n;
SIL_B.TmpSignalConversionAtBytePackInport2_o[8] = SIL_B.Temp_ps1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[9] = SIL_B.Temp_qbar1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[10] = SIL_B.imu_temp_j;
SIL_B.TmpSignalConversionAtBytePackInport2_o[11] = SIL_P.use_deadbandComp;
SIL_B.TmpSignalConversionAtBytePackInport2_o[12] = (real32_T)SIL_B.add_m;
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport3' */
SIL_B.TmpSignalConversionAtBytePackInport3_p[0] = SIL_B.UnitDelay_i;
SIL_B.TmpSignalConversionAtBytePackInport3_p[1] = SIL_B.UnitDelay_i;
SIL_B.TmpSignalConversionAtBytePackInport3_p[2] = SIL_B.good_d;
SIL_B.TmpSignalConversionAtBytePackInport3_p[3] = SIL_B.good_l;
SIL_B.TmpSignalConversionAtBytePackInport3_p[4] = SIL_B.good_g;
SIL_B.TmpSignalConversionAtBytePackInport3_p[5] = SIL_B.good_m;
SIL_B.TmpSignalConversionAtBytePackInport3_p[6] = SIL_B.good;
SIL_B.TmpSignalConversionAtBytePackInport3_p[7] = SIL_B.good_f;
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport4' */
for (i = 0; i < 5; i++) {
SIL_B.TmpSignalConversionAtBytePackInport4_bx[i] = SIL_B.UnitDelay_f[i];
}
SIL_B.TmpSignalConversionAtBytePackInport4_bx[5] = SIL_B.Merge.USE_ADRC;
/* S-Function (any2byte): '<S1324>/Byte Pack' */
/* Pack: <S1324>/Byte Pack */
(void) memcpy(&SIL_B.BytePack[0],
&SIL_B.TmpSignalConversionAtBytePackInport1[0],
8);
(void) memcpy(&SIL_B.BytePack[8],
&SIL_B.TmpSignalConversionAtBytePackInport2_o[0],
52);
(void) memcpy(&SIL_B.BytePack[60],
&SIL_B.TmpSignalConversionAtBytePackInport3_p[0],
16);
(void) memcpy(&SIL_B.BytePack[76],
&SIL_B.TmpSignalConversionAtBytePackInport4_bx[0],
6);
/* Sum: '<S1324>/Sum of Elements' */
tmp = 0U;
for (i = 0; i < 82; i++) {
tmp = (uint8_T)((uint32_T)tmp + SIL_B.BytePack[i]);
/* SignalConversion: '<S1319>/OutportBufferFordata' */
SIL_B.Merge_gk[i + 4] = SIL_B.BytePack[i];
}
/* SignalConversion: '<S1319>/OutportBufferFordata' incorporates:
* Constant: '<S1324>/id'
* Constant: '<S1324>/sync1'
* Constant: '<S1324>/sync2'
* Sum: '<S1324>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 4U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width;
SIL_B.Merge_gk[86] = tmp;
memset(&SIL_B.Merge_gk[87], 0, 173U * sizeof(uint8_T));
/* SignalConversion: '<S1319>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1;
/* End of Outputs for SubSystem: '<S7>/rec5Hz1' */
}
break;
case SIL_IN_start:
if (SIL_DW.temporalCounter_i4 >= 6U) {
SIL_DW.is_a5Hz1 = SIL_IN_idle_p;
SIL_DW.temporalCounter_i4 = 0U;
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a5Hz1 = SIL_IN_idle_p;
SIL_DW.temporalCounter_i4 = 0U;
break;
}
switch (SIL_DW.is_a20Hz) {
case SIL_IN_delay_f:
if (SIL_DW.temporalCounter_i2_f >= 8U) {
SIL_DW.is_a20Hz = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i2_f = 0U;
}
break;
case SIL_IN_idle_mo:
if ((SIL_DW.temporalCounter_i2_f >= 9U) && (!SIL_DW.act)) {
SIL_DW.is_a20Hz = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec20Hz' */
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport1' */
SIL_B.TmpSignalConversionAtBytePackInport1_lf[0] = SIL_B.Merge.boot_time;
SIL_B.TmpSignalConversionAtBytePackInport1_lf[1] =
SIL_B.BusAssignment_j.TOW;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport2' */
SIL_B.TmpSignalConversionAtBytePackInport2[0] = SIL_B.BusAssignment_j.lat;
SIL_B.TmpSignalConversionAtBytePackInport2[1] = SIL_B.BusAssignment_j.lon;
SIL_B.TmpSignalConversionAtBytePackInport2[2] = SIL_B.LLA_i[0];
SIL_B.TmpSignalConversionAtBytePackInport2[5] = SIL_B.LLA[0];
SIL_B.TmpSignalConversionAtBytePackInport2[3] = SIL_B.LLA_i[1];
SIL_B.TmpSignalConversionAtBytePackInport2[6] = SIL_B.LLA[1];
SIL_B.TmpSignalConversionAtBytePackInport2[4] = SIL_B.LLA_i[2];
SIL_B.TmpSignalConversionAtBytePackInport2[7] = SIL_B.LLA[2];
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport3' incorporates:
* UnitDelay: '<S6>/Unit Delay'
*/
SIL_B.TmpSignalConversionAtBytePackInport3[0] = SIL_B.Merge.phi_c;
SIL_B.TmpSignalConversionAtBytePackInport3[1] = SIL_B.Merge.tht_c;
SIL_B.TmpSignalConversionAtBytePackInport3[2] =
SIL_DW.UnitDelay_DSTATE.bearing_baseline;
SIL_B.TmpSignalConversionAtBytePackInport3[3] = SIL_B.Merge.p_c;
SIL_B.TmpSignalConversionAtBytePackInport3[4] = SIL_B.Merge.q_c;
SIL_B.TmpSignalConversionAtBytePackInport3[5] = SIL_B.Merge.as_c;
SIL_B.TmpSignalConversionAtBytePackInport3[6] =
SIL_DW.UnitDelay_DSTATE.vert_offset;
SIL_B.TmpSignalConversionAtBytePackInport3[7] = SIL_B.Merge.hdot_c;
SIL_B.TmpSignalConversionAtBytePackInport3[8] =
SIL_DW.UnitDelay_DSTATE.horiz_offset;
SIL_B.TmpSignalConversionAtBytePackInport3[9] =
SIL_DW.UnitDelay_DSTATE.dist_offset;
SIL_B.TmpSignalConversionAtBytePackInport3[10] = SIL_B.Merge.del_c;
SIL_B.TmpSignalConversionAtBytePackInport3[11] = SIL_B.Merge.der_c;
SIL_B.TmpSignalConversionAtBytePackInport3[12] = SIL_B.Merge.dal_c;
SIL_B.TmpSignalConversionAtBytePackInport3[13] = SIL_B.Merge.dar_c;
SIL_B.TmpSignalConversionAtBytePackInport3[14] = SIL_B.Merge.dr_c;
SIL_B.TmpSignalConversionAtBytePackInport3[15] = SIL_B.Merge.throttle_c;
SIL_B.TmpSignalConversionAtBytePackInport3[16] = SIL_B.BusAssignment_j.phi;
SIL_B.TmpSignalConversionAtBytePackInport3[17] = SIL_B.BusAssignment_j.tht;
SIL_B.TmpSignalConversionAtBytePackInport3[18] = SIL_B.BusAssignment_j.p;
SIL_B.TmpSignalConversionAtBytePackInport3[19] = SIL_B.BusAssignment_j.q;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport4' incorporates:
* DataTypeConversion: '<S1321>/Data Type Conversion'
*/
SIL_B.TmpSignalConversionAtBytePackInport4[0] = (uint32_T)SIL_B.Merge.mode;
SIL_B.TmpSignalConversionAtBytePackInport4[1] = SIL_B.gps_pos_status_d;
SIL_B.TmpSignalConversionAtBytePackInport4[2] = SIL_B.gps_pos_status;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport5' */
SIL_B.TmpSignalConversionAtBytePackInport5[0] = SIL_B.Merge.WP_cur;
for (i = 0; i < 7; i++) {
SIL_B.TmpSignalConversionAtBytePackInport5[i + 1] = 0U;
}
SIL_B.TmpSignalConversionAtBytePackInport5[8] = SIL_B.SFunction.RPM_mea;
SIL_B.TmpSignalConversionAtBytePackInport5[9] = SIL_B.SFunction.Kfuel;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport6' incorporates:
* DataTypeConversion: '<S1321>/Data Type Conversion1'
* DataTypeConversion: '<S1321>/Data Type Conversion2'
*/
SIL_B.TmpSignalConversionAtBytePackInport6[0] = SIL_B.Merge.recovery;
SIL_B.TmpSignalConversionAtBytePackInport6[1] = SIL_B.Merge.ECU_CMD;
SIL_B.TmpSignalConversionAtBytePackInport6[2] = SIL_B.Merge.linked;
SIL_B.TmpSignalConversionAtBytePackInport6[3] = SIL_B.Merge.recovery;
SIL_B.TmpSignalConversionAtBytePackInport6[4] = (uint8_T)
SIL_B.BusAssignment_j.gps_fixtype;
SIL_B.TmpSignalConversionAtBytePackInport6[5] =
SIL_B.BusAssignment_j.satnum;
/* S-Function (any2byte): '<S1321>/Byte Pack' */
/* Pack: <S1321>/Byte Pack */
(void) memcpy(&SIL_B.BytePack_k[0],
&SIL_B.TmpSignalConversionAtBytePackInport1_lf[0],
8);
(void) memcpy(&SIL_B.BytePack_k[8],
&SIL_B.TmpSignalConversionAtBytePackInport2[0],
64);
(void) memcpy(&SIL_B.BytePack_k[72],
&SIL_B.TmpSignalConversionAtBytePackInport3[0],
80);
(void) memcpy(&SIL_B.BytePack_k[152],
&SIL_B.TmpSignalConversionAtBytePackInport4[0],
12);
(void) memcpy(&SIL_B.BytePack_k[164],
&SIL_B.TmpSignalConversionAtBytePackInport5[0],
20);
(void) memcpy(&SIL_B.BytePack_k[184],
&SIL_B.TmpSignalConversionAtBytePackInport6[0],
6);
/* Sum: '<S1321>/Sum of Elements' */
tmp = 0U;
for (i = 0; i < 190; i++) {
tmp = (uint8_T)((uint32_T)tmp + SIL_B.BytePack_k[i]);
/* SignalConversion: '<S1316>/OutportBufferFordata' */
SIL_B.Merge_gk[i + 4] = SIL_B.BytePack_k[i];
}
/* SignalConversion: '<S1316>/OutportBufferFordata' incorporates:
* Constant: '<S1321>/id'
* Constant: '<S1321>/sync1'
* Constant: '<S1321>/sync2'
* Sum: '<S1321>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 1U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width_b;
SIL_B.Merge_gk[194] = tmp;
memset(&SIL_B.Merge_gk[195], 0, 65U * sizeof(uint8_T));
/* SignalConversion: '<S1316>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1_i;
/* End of Outputs for SubSystem: '<S7>/rec20Hz' */
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a20Hz = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i2_f = 0U;
break;
}
switch (SIL_DW.is_a20Hz1) {
case SIL_IN_delay_f:
if (SIL_DW.temporalCounter_i1_mq >= 2U) {
SIL_DW.is_a20Hz1 = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i1_mq = 0U;
}
break;
case SIL_IN_idle_mo:
if ((SIL_DW.temporalCounter_i1_mq >= 9U) && (!SIL_DW.act)) {
SIL_DW.is_a20Hz1 = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec20Hz1' */
/* SignalConversion: '<S1322>/TmpSignal ConversionAtByte PackInport2' incorporates:
* UnitDelay: '<S6>/Unit Delay'
*/
SIL_B.TmpSignalConversionAtBytePackInport2_or[0] =
SIL_B.BusAssignment_j.qbar;
SIL_B.TmpSignalConversionAtBytePackInport2_or[1] =
SIL_B.BusAssignment_j.baro;
SIL_B.TmpSignalConversionAtBytePackInport2_or[2] =
SIL_B.BusAssignment_j.IAS;
SIL_B.TmpSignalConversionAtBytePackInport2_or[3] =
SIL_B.BusAssignment_j.alpha;
SIL_B.TmpSignalConversionAtBytePackInport2_or[4] =
SIL_B.BusAssignment_j.beta;
SIL_B.TmpSignalConversionAtBytePackInport2_or[5] =
SIL_B.BusAssignment_j.asl_baro;
SIL_B.TmpSignalConversionAtBytePackInport2_or[6] =
SIL_B.BusAssignment_j.msl;
SIL_B.TmpSignalConversionAtBytePackInport2_or[7] =
SIL_B.BusAssignment_j.v_n;
SIL_B.TmpSignalConversionAtBytePackInport2_or[8] =
SIL_B.BusAssignment_j.v_e;
SIL_B.TmpSignalConversionAtBytePackInport2_or[9] =
SIL_B.BusAssignment_j.v_d;
SIL_B.TmpSignalConversionAtBytePackInport2_or[10] =
SIL_DW.UnitDelay_DSTATE.v_g;
SIL_B.TmpSignalConversionAtBytePackInport2_or[11] =
SIL_DW.UnitDelay_DSTATE.psi_t;
SIL_B.TmpSignalConversionAtBytePackInport2_or[12] =
SIL_B.BusAssignment_j.Mach;
SIL_B.TmpSignalConversionAtBytePackInport2_or[13] =
SIL_B.BusAssignment_j.TAS;
SIL_B.TmpSignalConversionAtBytePackInport2_or[26] = SIL_B.Merge.r_c;
SIL_B.TmpSignalConversionAtBytePackInport2_or[27] =
SIL_B.BusAssignment_j.r;
SIL_B.TmpSignalConversionAtBytePackInport2_or[28] =
SIL_B.BusAssignment_j.ay;
SIL_B.TmpSignalConversionAtBytePackInport2_or[29] = SIL_B.Merge.ay_c;
SIL_B.TmpSignalConversionAtBytePackInport2_or[30] =
SIL_B.BusAssignment_j.ax;
SIL_B.TmpSignalConversionAtBytePackInport2_or[31] =
SIL_B.BusAssignment_j.az;
SIL_B.TmpSignalConversionAtBytePackInport2_or[32] =
SIL_B.BusAssignment_j.psi;
SIL_B.TmpSignalConversionAtBytePackInport2_or[14] = SIL_B.eulers[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[17] = SIL_B.vel_ned[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[20] = SIL_B.eulers_f[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[23] = SIL_B.vel_ned_ma[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[33] = SIL_B.Accels_f[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[36] = SIL_B.pqr_i[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[39] = SIL_B.Accels_a[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[42] = SIL_B.pqr_e[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[15] = SIL_B.eulers[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[18] = SIL_B.vel_ned[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[21] = SIL_B.eulers_f[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[24] = SIL_B.vel_ned_ma[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[34] = SIL_B.Accels_f[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[37] = SIL_B.pqr_i[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[40] = SIL_B.Accels_a[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[43] = SIL_B.pqr_e[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[16] = SIL_B.eulers[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[19] = SIL_B.vel_ned[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[22] = SIL_B.eulers_f[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[25] = SIL_B.vel_ned_ma[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[35] = SIL_B.Accels_f[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[38] = SIL_B.pqr_i[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[41] = SIL_B.Accels_a[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[44] = SIL_B.pqr_e[2];
/* S-Function (any2byte): '<S1322>/Byte Pack' */
/* Pack: <S1322>/Byte Pack */
(void) memcpy(&SIL_B.BytePack_i[0], &SIL_B.Merge.boot_time,
4);
(void) memcpy(&SIL_B.BytePack_i[4],
&SIL_B.TmpSignalConversionAtBytePackInport2_or[0],
180);
/* Sum: '<S1322>/Sum of Elements' */
tmp = 0U;
for (i = 0; i < 184; i++) {
tmp = (uint8_T)((uint32_T)tmp + SIL_B.BytePack_i[i]);
/* SignalConversion: '<S1317>/OutportBufferFordata' */
SIL_B.Merge_gk[i + 4] = SIL_B.BytePack_i[i];
}
/* SignalConversion: '<S1317>/OutportBufferFordata' incorporates:
* Constant: '<S1322>/id'
* Constant: '<S1322>/sync1'
* Constant: '<S1322>/sync2'
* Sum: '<S1322>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 3U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width_a;
SIL_B.Merge_gk[188] = tmp;
memset(&SIL_B.Merge_gk[189], 0, 71U * sizeof(uint8_T));
/* SignalConversion: '<S1317>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1_l;
/* End of Outputs for SubSystem: '<S7>/rec20Hz1' */
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a20Hz1 = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i1_mq = 0U;
break;
}
}
mavlink_message_t *SIL_allocMemPool_fu0hj(MemPool_mavlink_message_t *memPool)
{
mavlink_message_t *dataPtr;
@@ -21308,11 +20757,38 @@ void SIL_step(void)
} else {
switch (SIL_DW.is_c22_kb3_autopilot) {
case SIL_IN_Idle_l:
SIL_Idle();
if ((SIL_B.BusAssignment_i.recovery & 2U) != 0U) {
SIL_DW.is_c22_kb3_autopilot = SIL_IN_parachute;
SIL_DW.temporalCounter_i2 = 0U;
SIL_B.recovery_out = 3U;
SIL_DW.is_parachute = SIL_IN_one;
SIL_DW.temporalCounter_i1_ct = 0U;
SIL_B.ch_out = 3U;
SIL_B.peroid_out = 50U;
SIL_B.sw_out = 1U;
} else {
SIL_B.recovery_out = SIL_B.BusAssignment_i.recovery;
SIL_B.ch_out = SIL_B.BusAssignment_i.ccm_ch;
SIL_B.peroid_out = SIL_B.BusAssignment_i.ccm_period;
SIL_B.sw_out = SIL_B.BusAssignment_i.ccm_sw;
}
break;
case SIL_IN_Idle1:
SIL_Idle1();
if ((SIL_B.BusAssignment_i.recovery & 32U) != 0U) {
SIL_DW.is_c22_kb3_autopilot = SIL_IN_cut;
SIL_B.recovery_out = 63U;
SIL_DW.is_cut = SIL_IN_one;
SIL_DW.temporalCounter_i1_ct = 0U;
SIL_B.ch_out = 4U;
SIL_B.peroid_out = 50U;
SIL_B.sw_out = 1U;
} else {
SIL_B.recovery_out = SIL_B.BusAssignment_i.recovery;
SIL_B.ch_out = SIL_B.BusAssignment_i.ccm_ch;
SIL_B.peroid_out = SIL_B.BusAssignment_i.ccm_period;
SIL_B.sw_out = SIL_B.BusAssignment_i.ccm_sw;
}
break;
case SIL_IN_Idle2:
@@ -31079,7 +30555,577 @@ void SIL_step(void)
break;
default:
SIL_work();
switch (SIL_DW.is_a5Hz) {
case SIL_IN_idle_p:
if ((SIL_DW.temporalCounter_i3 >= 39U) && (!SIL_DW.act)) {
SIL_DW.is_a5Hz = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec5Hz' */
/* SignalConversion: '<S1323>/TmpSignal ConversionAtByte PackInport1' */
SIL_B.TmpSignalConversionAtBytePackInport1_l[0] =
SIL_B.Merge.boot_time;
SIL_B.TmpSignalConversionAtBytePackInport1_l[1] =
SIL_B.BusAssignment_j.sensors_health;
SIL_B.TmpSignalConversionAtBytePackInport1_l[2] = SIL_B.value;
/* SignalConversion: '<S1323>/TmpSignal ConversionAtByte PackInport4' */
SIL_B.TmpSignalConversionAtBytePackInport4_b[0] = SIL_B.voltages[0];
SIL_B.TmpSignalConversionAtBytePackInport4_b[1] = SIL_B.voltages[1];
SIL_B.TmpSignalConversionAtBytePackInport4_b[2] = SIL_B.voltages[2];
SIL_B.TmpSignalConversionAtBytePackInport4_b[3] = SIL_B.voltages[3];
SIL_B.TmpSignalConversionAtBytePackInport4_b[4] =
SIL_B.group_voltage_mv_g;
SIL_B.TmpSignalConversionAtBytePackInport4_b[5] =
SIL_B.group_current_dA_c;
SIL_B.TmpSignalConversionAtBytePackInport4_b[6] =
SIL_B.group_voltage_mv;
SIL_B.TmpSignalConversionAtBytePackInport4_b[7] =
SIL_B.group_current_dA;
SIL_B.TmpSignalConversionAtBytePackInport4_b[8] =
SIL_B.SFunction.RPM_mea;
SIL_B.TmpSignalConversionAtBytePackInport4_b[9] =
SIL_B.SFunction.T5;
SIL_B.TmpSignalConversionAtBytePackInport4_b[10] =
SIL_B.SFunction.Kfuel;
SIL_B.TmpSignalConversionAtBytePackInport4_b[11] =
SIL_B.SFunction.RPM_des;
SIL_B.TmpSignalConversionAtBytePackInport4_b[12] =
SIL_B.SFunction.RPM_des_ap;
SIL_B.TmpSignalConversionAtBytePackInport4_b[13] =
SIL_B.SFunction.RPM_bak;
SIL_B.TmpSignalConversionAtBytePackInport4_b[14] =
SIL_B.SFunction.IOState;
SIL_B.TmpSignalConversionAtBytePackInport4_b[15] =
SIL_B.SFunction.SysState;
SIL_B.TmpSignalConversionAtBytePackInport4_b[16] =
SIL_B.SFunction.Fault;
SIL_B.TmpSignalConversionAtBytePackInport4_b[17] =
SIL_B.low_temp_degC_a;
/* SignalConversion: '<S1323>/TmpSignal ConversionAtByte PackInport5' */
SIL_B.TmpSignalConversionAtBytePackInport5_h[0] =
SIL_B.SFunction.stage_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[1] =
SIL_B.SFunction.temp_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[2] =
SIL_B.SFunction.tas_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[3] =
SIL_B.SFunction.asl_ap;
SIL_B.TmpSignalConversionAtBytePackInport5_h[4] =
SIL_B.SFunction.KabMain;
SIL_B.TmpSignalConversionAtBytePackInport5_h[5] =
SIL_B.SFunction.KabFire;
SIL_B.TmpSignalConversionAtBytePackInport5_h[6] =
SIL_B.SFunction.KDj;
SIL_B.TmpSignalConversionAtBytePackInport5_h[7] =
SIL_B.SFunction.T1t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[8] =
SIL_B.SFunction.P1t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[9] =
SIL_B.SFunction.P3t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[10] =
SIL_B.SFunction.P5t;
SIL_B.TmpSignalConversionAtBytePackInport5_h[11] =
SIL_B.SFunction.DJS;
SIL_B.TmpSignalConversionAtBytePackInport5_h[12] =
SIL_B.SFunction.Vcc;
SIL_B.TmpSignalConversionAtBytePackInport5_h[13] =
SIL_B.SFunction.Tbak;
SIL_B.TmpSignalConversionAtBytePackInport5_h[14] =
SIL_B.SFunction.CFuelMode;
SIL_B.TmpSignalConversionAtBytePackInport5_h[15] =
SIL_B.SFunction.Cmd;
/* S-Function (any2byte): '<S1323>/Byte Pack' */
/* Pack: <S1323>/Byte Pack */
(void) memcpy(&SIL_B.BytePack_g[0],
&SIL_B.TmpSignalConversionAtBytePackInport1_l[0],
12);
(void) memcpy(&SIL_B.BytePack_g[12], &SIL_B.Merge.fuel_est,
4);
(void) memcpy(&SIL_B.BytePack_g[16], &SIL_B.temps[0],
8);
(void) memcpy(&SIL_B.BytePack_g[24],
&SIL_B.TmpSignalConversionAtBytePackInport4_b[0],
36);
(void) memcpy(&SIL_B.BytePack_g[60],
&SIL_B.TmpSignalConversionAtBytePackInport5_h[0],
16);
/* Sum: '<S1323>/Sum of Elements' */
rtb_Rem = 0U;
for (idx = 0; idx < 76; idx++) {
rtb_Rem = (uint8_T)((uint32_T)rtb_Rem + SIL_B.BytePack_g[idx]);
/* SignalConversion: '<S1318>/OutportBufferFordata' */
SIL_B.Merge_gk[idx + 4] = SIL_B.BytePack_g[idx];
}
/* SignalConversion: '<S1318>/OutportBufferFordata' incorporates:
* Constant: '<S1323>/id'
* Constant: '<S1323>/sync1'
* Constant: '<S1323>/sync2'
* Sum: '<S1323>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 2U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width_m;
SIL_B.Merge_gk[80] = rtb_Rem;
memset(&SIL_B.Merge_gk[81], 0, 179U * sizeof(uint8_T));
/* SignalConversion: '<S1318>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1_a;
/* End of Outputs for SubSystem: '<S7>/rec5Hz' */
}
break;
case SIL_IN_start:
if (SIL_DW.temporalCounter_i3 >= 4U) {
SIL_DW.is_a5Hz = SIL_IN_idle_p;
SIL_DW.temporalCounter_i3 = 0U;
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a5Hz = SIL_IN_idle_p;
SIL_DW.temporalCounter_i3 = 0U;
break;
}
switch (SIL_DW.is_a5Hz1) {
case SIL_IN_idle_p:
if ((SIL_DW.temporalCounter_i4 >= 39U) && (!SIL_DW.act)) {
SIL_DW.is_a5Hz1 = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec5Hz1' */
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport1' */
SIL_B.TmpSignalConversionAtBytePackInport1[0] =
SIL_B.Merge.boot_time;
SIL_B.TmpSignalConversionAtBytePackInport1[1] =
SIL_B.BusAssignment_j.sensors_enabled;
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport2' incorporates:
* Constant: '<S1324>/Constant1'
* DataTypeConversion: '<S1324>/Data Type Conversion'
*/
SIL_B.TmpSignalConversionAtBytePackInport2_o[0] = SIL_B.Ps_m;
SIL_B.TmpSignalConversionAtBytePackInport2_o[1] = SIL_B.qbar_h;
SIL_B.TmpSignalConversionAtBytePackInport2_o[2] = SIL_B.Ps1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[3] = SIL_B.Ps2;
SIL_B.TmpSignalConversionAtBytePackInport2_o[4] = SIL_B.Qbar1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[5] = SIL_B.Temp_total;
SIL_B.TmpSignalConversionAtBytePackInport2_o[6] = SIL_B.Gain1_c;
SIL_B.TmpSignalConversionAtBytePackInport2_o[7] = SIL_B.Gain1_n;
SIL_B.TmpSignalConversionAtBytePackInport2_o[8] = SIL_B.Temp_ps1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[9] = SIL_B.Temp_qbar1;
SIL_B.TmpSignalConversionAtBytePackInport2_o[10] =
SIL_B.imu_temp_j;
SIL_B.TmpSignalConversionAtBytePackInport2_o[11] =
SIL_P.use_deadbandComp;
SIL_B.TmpSignalConversionAtBytePackInport2_o[12] = (real32_T)
SIL_B.add_m;
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport3' */
SIL_B.TmpSignalConversionAtBytePackInport3_p[0] =
SIL_B.UnitDelay_i;
SIL_B.TmpSignalConversionAtBytePackInport3_p[1] =
SIL_B.UnitDelay_i;
SIL_B.TmpSignalConversionAtBytePackInport3_p[2] = SIL_B.good_d;
SIL_B.TmpSignalConversionAtBytePackInport3_p[3] = SIL_B.good_l;
SIL_B.TmpSignalConversionAtBytePackInport3_p[4] = SIL_B.good_g;
SIL_B.TmpSignalConversionAtBytePackInport3_p[5] = SIL_B.good_m;
SIL_B.TmpSignalConversionAtBytePackInport3_p[6] = SIL_B.good;
SIL_B.TmpSignalConversionAtBytePackInport3_p[7] = SIL_B.good_f;
/* SignalConversion: '<S1324>/TmpSignal ConversionAtByte PackInport4' */
for (idx = 0; idx < 5; idx++) {
SIL_B.TmpSignalConversionAtBytePackInport4_bx[idx] =
SIL_B.UnitDelay_f[idx];
}
SIL_B.TmpSignalConversionAtBytePackInport4_bx[5] =
SIL_B.Merge.USE_ADRC;
/* S-Function (any2byte): '<S1324>/Byte Pack' */
/* Pack: <S1324>/Byte Pack */
(void) memcpy(&SIL_B.BytePack[0],
&SIL_B.TmpSignalConversionAtBytePackInport1[0],
8);
(void) memcpy(&SIL_B.BytePack[8],
&SIL_B.TmpSignalConversionAtBytePackInport2_o[0],
52);
(void) memcpy(&SIL_B.BytePack[60],
&SIL_B.TmpSignalConversionAtBytePackInport3_p[0],
16);
(void) memcpy(&SIL_B.BytePack[76],
&SIL_B.TmpSignalConversionAtBytePackInport4_bx[0],
6);
/* Sum: '<S1324>/Sum of Elements' */
rtb_Rem = 0U;
for (idx = 0; idx < 82; idx++) {
rtb_Rem = (uint8_T)((uint32_T)rtb_Rem + SIL_B.BytePack[idx]);
/* SignalConversion: '<S1319>/OutportBufferFordata' */
SIL_B.Merge_gk[idx + 4] = SIL_B.BytePack[idx];
}
/* SignalConversion: '<S1319>/OutportBufferFordata' incorporates:
* Constant: '<S1324>/id'
* Constant: '<S1324>/sync1'
* Constant: '<S1324>/sync2'
* Sum: '<S1324>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 4U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width;
SIL_B.Merge_gk[86] = rtb_Rem;
memset(&SIL_B.Merge_gk[87], 0, 173U * sizeof(uint8_T));
/* SignalConversion: '<S1319>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1;
/* End of Outputs for SubSystem: '<S7>/rec5Hz1' */
}
break;
case SIL_IN_start:
if (SIL_DW.temporalCounter_i4 >= 6U) {
SIL_DW.is_a5Hz1 = SIL_IN_idle_p;
SIL_DW.temporalCounter_i4 = 0U;
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a5Hz1 = SIL_IN_idle_p;
SIL_DW.temporalCounter_i4 = 0U;
break;
}
switch (SIL_DW.is_a20Hz) {
case SIL_IN_delay_f:
if (SIL_DW.temporalCounter_i2_f >= 8U) {
SIL_DW.is_a20Hz = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i2_f = 0U;
}
break;
case SIL_IN_idle_mo:
if ((SIL_DW.temporalCounter_i2_f >= 9U) && (!SIL_DW.act)) {
SIL_DW.is_a20Hz = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec20Hz' */
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport1' */
SIL_B.TmpSignalConversionAtBytePackInport1_lf[0] =
SIL_B.Merge.boot_time;
SIL_B.TmpSignalConversionAtBytePackInport1_lf[1] =
SIL_B.BusAssignment_j.TOW;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport2' */
SIL_B.TmpSignalConversionAtBytePackInport2[0] =
SIL_B.BusAssignment_j.lat;
SIL_B.TmpSignalConversionAtBytePackInport2[1] =
SIL_B.BusAssignment_j.lon;
SIL_B.TmpSignalConversionAtBytePackInport2[2] = SIL_B.LLA_i[0];
SIL_B.TmpSignalConversionAtBytePackInport2[5] = SIL_B.LLA[0];
SIL_B.TmpSignalConversionAtBytePackInport2[3] = SIL_B.LLA_i[1];
SIL_B.TmpSignalConversionAtBytePackInport2[6] = SIL_B.LLA[1];
SIL_B.TmpSignalConversionAtBytePackInport2[4] = SIL_B.LLA_i[2];
SIL_B.TmpSignalConversionAtBytePackInport2[7] = SIL_B.LLA[2];
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport3' incorporates:
* UnitDelay: '<S6>/Unit Delay'
*/
SIL_B.TmpSignalConversionAtBytePackInport3[0] = SIL_B.Merge.phi_c;
SIL_B.TmpSignalConversionAtBytePackInport3[1] = SIL_B.Merge.tht_c;
SIL_B.TmpSignalConversionAtBytePackInport3[2] =
SIL_DW.UnitDelay_DSTATE.bearing_baseline;
SIL_B.TmpSignalConversionAtBytePackInport3[3] = SIL_B.Merge.p_c;
SIL_B.TmpSignalConversionAtBytePackInport3[4] = SIL_B.Merge.q_c;
SIL_B.TmpSignalConversionAtBytePackInport3[5] = SIL_B.Merge.as_c;
SIL_B.TmpSignalConversionAtBytePackInport3[6] =
SIL_DW.UnitDelay_DSTATE.vert_offset;
SIL_B.TmpSignalConversionAtBytePackInport3[7] = SIL_B.Merge.hdot_c;
SIL_B.TmpSignalConversionAtBytePackInport3[8] =
SIL_DW.UnitDelay_DSTATE.horiz_offset;
SIL_B.TmpSignalConversionAtBytePackInport3[9] =
SIL_DW.UnitDelay_DSTATE.dist_offset;
SIL_B.TmpSignalConversionAtBytePackInport3[10] = SIL_B.Merge.del_c;
SIL_B.TmpSignalConversionAtBytePackInport3[11] = SIL_B.Merge.der_c;
SIL_B.TmpSignalConversionAtBytePackInport3[12] = SIL_B.Merge.dal_c;
SIL_B.TmpSignalConversionAtBytePackInport3[13] = SIL_B.Merge.dar_c;
SIL_B.TmpSignalConversionAtBytePackInport3[14] = SIL_B.Merge.dr_c;
SIL_B.TmpSignalConversionAtBytePackInport3[15] =
SIL_B.Merge.throttle_c;
SIL_B.TmpSignalConversionAtBytePackInport3[16] =
SIL_B.BusAssignment_j.phi;
SIL_B.TmpSignalConversionAtBytePackInport3[17] =
SIL_B.BusAssignment_j.tht;
SIL_B.TmpSignalConversionAtBytePackInport3[18] =
SIL_B.BusAssignment_j.p;
SIL_B.TmpSignalConversionAtBytePackInport3[19] =
SIL_B.BusAssignment_j.q;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport4' incorporates:
* DataTypeConversion: '<S1321>/Data Type Conversion'
*/
SIL_B.TmpSignalConversionAtBytePackInport4[0] = (uint32_T)
SIL_B.Merge.mode;
SIL_B.TmpSignalConversionAtBytePackInport4[1] =
SIL_B.gps_pos_status_d;
SIL_B.TmpSignalConversionAtBytePackInport4[2] =
SIL_B.gps_pos_status;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport5' */
SIL_B.TmpSignalConversionAtBytePackInport5[0] = SIL_B.Merge.WP_cur;
for (idx = 0; idx < 7; idx++) {
SIL_B.TmpSignalConversionAtBytePackInport5[idx + 1] = 0U;
}
SIL_B.TmpSignalConversionAtBytePackInport5[8] =
SIL_B.SFunction.RPM_mea;
SIL_B.TmpSignalConversionAtBytePackInport5[9] =
SIL_B.SFunction.Kfuel;
/* SignalConversion: '<S1321>/TmpSignal ConversionAtByte PackInport6' incorporates:
* DataTypeConversion: '<S1321>/Data Type Conversion1'
* DataTypeConversion: '<S1321>/Data Type Conversion2'
*/
SIL_B.TmpSignalConversionAtBytePackInport6[0] =
SIL_B.Merge.recovery;
SIL_B.TmpSignalConversionAtBytePackInport6[1] =
SIL_B.Merge.ECU_CMD;
SIL_B.TmpSignalConversionAtBytePackInport6[2] = SIL_B.Merge.linked;
SIL_B.TmpSignalConversionAtBytePackInport6[3] =
SIL_B.Merge.recovery;
SIL_B.TmpSignalConversionAtBytePackInport6[4] = (uint8_T)
SIL_B.BusAssignment_j.gps_fixtype;
SIL_B.TmpSignalConversionAtBytePackInport6[5] =
SIL_B.BusAssignment_j.satnum;
/* S-Function (any2byte): '<S1321>/Byte Pack' */
/* Pack: <S1321>/Byte Pack */
(void) memcpy(&SIL_B.BytePack_k[0],
&SIL_B.TmpSignalConversionAtBytePackInport1_lf[0],
8);
(void) memcpy(&SIL_B.BytePack_k[8],
&SIL_B.TmpSignalConversionAtBytePackInport2[0],
64);
(void) memcpy(&SIL_B.BytePack_k[72],
&SIL_B.TmpSignalConversionAtBytePackInport3[0],
80);
(void) memcpy(&SIL_B.BytePack_k[152],
&SIL_B.TmpSignalConversionAtBytePackInport4[0],
12);
(void) memcpy(&SIL_B.BytePack_k[164],
&SIL_B.TmpSignalConversionAtBytePackInport5[0],
20);
(void) memcpy(&SIL_B.BytePack_k[184],
&SIL_B.TmpSignalConversionAtBytePackInport6[0],
6);
/* Sum: '<S1321>/Sum of Elements' */
rtb_Rem = 0U;
for (idx = 0; idx < 190; idx++) {
rtb_Rem = (uint8_T)((uint32_T)rtb_Rem + SIL_B.BytePack_k[idx]);
/* SignalConversion: '<S1316>/OutportBufferFordata' */
SIL_B.Merge_gk[idx + 4] = SIL_B.BytePack_k[idx];
}
/* SignalConversion: '<S1316>/OutportBufferFordata' incorporates:
* Constant: '<S1321>/id'
* Constant: '<S1321>/sync1'
* Constant: '<S1321>/sync2'
* Sum: '<S1321>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 1U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width_b;
SIL_B.Merge_gk[194] = rtb_Rem;
memset(&SIL_B.Merge_gk[195], 0, 65U * sizeof(uint8_T));
/* SignalConversion: '<S1316>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1_i;
/* End of Outputs for SubSystem: '<S7>/rec20Hz' */
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a20Hz = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i2_f = 0U;
break;
}
switch (SIL_DW.is_a20Hz1) {
case SIL_IN_delay_f:
if (SIL_DW.temporalCounter_i1_mq >= 2U) {
SIL_DW.is_a20Hz1 = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i1_mq = 0U;
}
break;
case SIL_IN_idle_mo:
if ((SIL_DW.temporalCounter_i1_mq >= 9U) && (!SIL_DW.act)) {
SIL_DW.is_a20Hz1 = SIL_IN_work_dr;
SIL_DW.act = true;
/* Outport: '<Root>/rec_seq' */
SIL_Y.rec_seq++;
/* Outputs for Function Call SubSystem: '<S7>/rec20Hz1' */
/* SignalConversion: '<S1322>/TmpSignal ConversionAtByte PackInport2' incorporates:
* UnitDelay: '<S6>/Unit Delay'
*/
SIL_B.TmpSignalConversionAtBytePackInport2_or[0] =
SIL_B.BusAssignment_j.qbar;
SIL_B.TmpSignalConversionAtBytePackInport2_or[1] =
SIL_B.BusAssignment_j.baro;
SIL_B.TmpSignalConversionAtBytePackInport2_or[2] =
SIL_B.BusAssignment_j.IAS;
SIL_B.TmpSignalConversionAtBytePackInport2_or[3] =
SIL_B.BusAssignment_j.alpha;
SIL_B.TmpSignalConversionAtBytePackInport2_or[4] =
SIL_B.BusAssignment_j.beta;
SIL_B.TmpSignalConversionAtBytePackInport2_or[5] =
SIL_B.BusAssignment_j.asl_baro;
SIL_B.TmpSignalConversionAtBytePackInport2_or[6] =
SIL_B.BusAssignment_j.msl;
SIL_B.TmpSignalConversionAtBytePackInport2_or[7] =
SIL_B.BusAssignment_j.v_n;
SIL_B.TmpSignalConversionAtBytePackInport2_or[8] =
SIL_B.BusAssignment_j.v_e;
SIL_B.TmpSignalConversionAtBytePackInport2_or[9] =
SIL_B.BusAssignment_j.v_d;
SIL_B.TmpSignalConversionAtBytePackInport2_or[10] =
SIL_DW.UnitDelay_DSTATE.v_g;
SIL_B.TmpSignalConversionAtBytePackInport2_or[11] =
SIL_DW.UnitDelay_DSTATE.psi_t;
SIL_B.TmpSignalConversionAtBytePackInport2_or[12] =
SIL_B.BusAssignment_j.Mach;
SIL_B.TmpSignalConversionAtBytePackInport2_or[13] =
SIL_B.BusAssignment_j.TAS;
SIL_B.TmpSignalConversionAtBytePackInport2_or[26] =
SIL_B.Merge.r_c;
SIL_B.TmpSignalConversionAtBytePackInport2_or[27] =
SIL_B.BusAssignment_j.r;
SIL_B.TmpSignalConversionAtBytePackInport2_or[28] =
SIL_B.BusAssignment_j.ay;
SIL_B.TmpSignalConversionAtBytePackInport2_or[29] =
SIL_B.Merge.ay_c;
SIL_B.TmpSignalConversionAtBytePackInport2_or[30] =
SIL_B.BusAssignment_j.ax;
SIL_B.TmpSignalConversionAtBytePackInport2_or[31] =
SIL_B.BusAssignment_j.az;
SIL_B.TmpSignalConversionAtBytePackInport2_or[32] =
SIL_B.BusAssignment_j.psi;
SIL_B.TmpSignalConversionAtBytePackInport2_or[14] = SIL_B.eulers[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[17] = SIL_B.vel_ned
[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[20] =
SIL_B.eulers_f[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[23] =
SIL_B.vel_ned_ma[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[33] =
SIL_B.Accels_f[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[36] = SIL_B.pqr_i[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[39] =
SIL_B.Accels_a[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[42] = SIL_B.pqr_e[0];
SIL_B.TmpSignalConversionAtBytePackInport2_or[15] = SIL_B.eulers[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[18] = SIL_B.vel_ned
[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[21] =
SIL_B.eulers_f[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[24] =
SIL_B.vel_ned_ma[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[34] =
SIL_B.Accels_f[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[37] = SIL_B.pqr_i[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[40] =
SIL_B.Accels_a[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[43] = SIL_B.pqr_e[1];
SIL_B.TmpSignalConversionAtBytePackInport2_or[16] = SIL_B.eulers[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[19] = SIL_B.vel_ned
[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[22] =
SIL_B.eulers_f[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[25] =
SIL_B.vel_ned_ma[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[35] =
SIL_B.Accels_f[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[38] = SIL_B.pqr_i[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[41] =
SIL_B.Accels_a[2];
SIL_B.TmpSignalConversionAtBytePackInport2_or[44] = SIL_B.pqr_e[2];
/* S-Function (any2byte): '<S1322>/Byte Pack' */
/* Pack: <S1322>/Byte Pack */
(void) memcpy(&SIL_B.BytePack_i[0], &SIL_B.Merge.boot_time,
4);
(void) memcpy(&SIL_B.BytePack_i[4],
&SIL_B.TmpSignalConversionAtBytePackInport2_or[0],
180);
/* Sum: '<S1322>/Sum of Elements' */
rtb_Rem = 0U;
for (idx = 0; idx < 184; idx++) {
rtb_Rem = (uint8_T)((uint32_T)rtb_Rem + SIL_B.BytePack_i[idx]);
/* SignalConversion: '<S1317>/OutportBufferFordata' */
SIL_B.Merge_gk[idx + 4] = SIL_B.BytePack_i[idx];
}
/* SignalConversion: '<S1317>/OutportBufferFordata' incorporates:
* Constant: '<S1322>/id'
* Constant: '<S1322>/sync1'
* Constant: '<S1322>/sync2'
* Sum: '<S1322>/Sum of Elements'
*/
SIL_B.Merge_gk[0] = 235U;
SIL_B.Merge_gk[1] = 144U;
SIL_B.Merge_gk[2] = 3U;
SIL_B.Merge_gk[3] = SIL_ConstB.Width_a;
SIL_B.Merge_gk[188] = rtb_Rem;
memset(&SIL_B.Merge_gk[189], 0, 71U * sizeof(uint8_T));
/* SignalConversion: '<S1317>/OutportBufferForlen' */
SIL_B.Merge1_e = SIL_ConstB.Width1_l;
/* End of Outputs for SubSystem: '<S7>/rec20Hz1' */
}
break;
default:
SIL_DW.act = false;
SIL_DW.is_a20Hz1 = SIL_IN_idle_mo;
SIL_DW.temporalCounter_i1_mq = 0U;
break;
}
break;
}
}
+1 -1
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
+5 -5
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
@@ -701,10 +701,10 @@ static rtwCAPI_ModelMappingStaticInfo mmiStatic = {
rtElementMap, rtSampleTimeMap, rtDimensionArray },
"float",
{ 1333753461U,
743005813U,
2716168661U,
1611918854U },
{ 1985259812U,
1161018554U,
894121781U,
1175298012U },
(NULL), 0,
0
};
+1 -1
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
+3 -3
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
@@ -958,7 +958,7 @@ const ConstP_SIL_T SIL_ConstP = {
{ 0.0F, 150.0F, 1.0F, 0.0F, 0.0F },
{ 408647182, 1093592834 }
}, { 3U,
}, { 0U,
16U,
1U,
@@ -1090,7 +1090,7 @@ const ConstP_SIL_T SIL_ConstP = {
{ 1500.0F, 0.0F, 0.0F, 0.0F, 1750.0F },
{ 408647182, 1095288419 }
{ 408647182, 1095238419 }
}, { 0U,
16U,
1U,
+1 -1
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
+1 -1
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
Binary file not shown.
+1 -1
View File
@@ -5,7 +5,7 @@
*
* Model version : 1.659
* Simulink Coder version : 9.0 (R2018b) 24-May-2018
* C/C++ source code generated on : Sat Nov 13 14:52:16 2021
* C/C++ source code generated on : Sun Nov 28 10:37:10 2021
*
* Target selection: ert_shrlib.tlc
* Embedded hardware selection: Intel->x86-64 (Windows64)
Binary file not shown.