/************************************************************************** Description: ������� ��� ����� � ������ ����������. �����: ���������� �.�. ���� ���������� ����������: 2021.11.08 **************************************************************************/ #include "app_io.h" #include "pwm_sim.h" int Unites[UNIT_QUA_UNITS][UNIT_LEN]; int CAN_timeout[UNIT_QUA]; RS_DATA_STRUCT rs_a = RS_DATA_STRUCT_DEFAULT, rs_b = RS_DATA_STRUCT_DEFAULT; // �������� �������� ��������� void readInputParameters(const real_T* u) { int nn = 0; iq_norm_ADC[0][0] = _IQ(u[nn++] / NORMA_ACP); iq_norm_ADC[0][1] = _IQ(u[nn++] / NORMA_ACP); iq_norm_ADC[0][2] = _IQ(u[nn++] / NORMA_ACP); iq_norm_ADC[0][3] = _IQ(u[nn++] / NORMA_ACP); iq_norm_ADC[0][4] = _IQ(u[nn++] / NORMA_ACP); iq_norm_ADC[0][5] = _IQ(u[nn++] / NORMA_ACP); iq_norm_ADC[0][6] = _IQ(u[nn++] / NORMA_ACP); iq_norm_ADC[0][7] = _IQ(u[nn++] / NORMA_ACP); WRotor.iqWRotorCalcBeforeRegul1 = _IQ(u[nn++] / (PI*2) / NORMA_FROTOR); u[nn++]; edrk.Go = u[nn++]; u[nn++]; } //void input_param(unsigned short num, unsigned short val) void writeOutputParameters(real_T* xD) { int nn = 0; //xD[nn++] = t2sim.ciA; //xD[nn++] = t1sim.ciA; //xD[nn++] = t2sim.ciB; //xD[nn++] = t1sim.ciB; // //xD[nn++] = t4sim.ciA; //xD[nn++] = t3sim.ciA; //xD[nn++] = t4sim.ciB; //xD[nn++] = t3sim.ciB; // //xD[nn++] = t6sim.ciA; //xD[nn++] = t5sim.ciA; //xD[nn++] = t6sim.ciB; //xD[nn++] = t5sim.ciB; //xD[nn++] = t1sim.ciB; //xD[nn++] = t2sim.ciB; //xD[nn++] = t1sim.ciA; //xD[nn++] = t2sim.ciA; //xD[nn++] = t3sim.ciB; //xD[nn++] = t4sim.ciB; //xD[nn++] = t3sim.ciA; //xD[nn++] = t4sim.ciA; // //xD[nn++] = t5sim.ciB; //xD[nn++] = t6sim.ciB; //xD[nn++] = t5sim.ciA; //xD[nn++] = t6sim.ciA; xD[nn++] = PWMPhaseA1.pwmOut.ci1A; xD[nn++] = PWMPhaseA1.pwmOut.ci2A; xD[nn++] = PWMPhaseA1.pwmOut.ci1B; xD[nn++] = PWMPhaseA1.pwmOut.ci2B; xD[nn++] = PWMPhaseB1.pwmOut.ci1A; xD[nn++] = PWMPhaseB1.pwmOut.ci2A; xD[nn++] = PWMPhaseB1.pwmOut.ci1B; xD[nn++] = PWMPhaseB1.pwmOut.ci2B; xD[nn++] = PWMPhaseC1.pwmOut.ci1A; xD[nn++] = PWMPhaseC1.pwmOut.ci2A; xD[nn++] = PWMPhaseC1.pwmOut.ci1B; xD[nn++] = PWMPhaseC1.pwmOut.ci2B; xD[nn++] = PWMPhaseA2.pwmOut.ci1A; xD[nn++] = PWMPhaseA2.pwmOut.ci2A; xD[nn++] = PWMPhaseA2.pwmOut.ci1B; xD[nn++] = PWMPhaseA2.pwmOut.ci2B; xD[nn++] = PWMPhaseB2.pwmOut.ci1A; xD[nn++] = PWMPhaseB2.pwmOut.ci2A; xD[nn++] = PWMPhaseB2.pwmOut.ci1B; xD[nn++] = PWMPhaseB2.pwmOut.ci2B; xD[nn++] = PWMPhaseC2.pwmOut.ci1A; xD[nn++] = PWMPhaseC2.pwmOut.ci2A; xD[nn++] = PWMPhaseC2.pwmOut.ci1B; xD[nn++] = PWMPhaseC2.pwmOut.ci2B; // ������ ��� ��������� xD[nn++] = xpwm_time.Ta0_0; xD[nn++] = xpwm_time.Ta0_1; xD[nn++] = xpwm_time.Ta1_0; xD[nn++] = xpwm_time.Ta1_1; xD[nn++] = xpwm_time.Tb0_0; xD[nn++] = xpwm_time.Tb0_1; xD[nn++] = xpwm_time.Tb1_0; xD[nn++] = xpwm_time.Tb1_1; xD[nn++] = xpwm_time.Tc0_0; xD[nn++] = xpwm_time.Tc0_1; xD[nn++] = xpwm_time.Tc1_0; xD[nn++] = xpwm_time.Tc1_1; }