Куча всего.
Добавлена интерполяция по таблице датчиков Структурирован проект в матлаб
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
|
||||
#define PIN_READ(_verbname_) (_verbname_##_GPIO_Port->ODR & (_verbname_##_Pin)) ? 1 : 0
|
||||
|
||||
void ThyristorWrite(real_T* Buffer)
|
||||
void Write_Thyristors(real_T* Buffer, int ind_port)
|
||||
{
|
||||
int pwm1_pin = PIN_READ(PWM1);
|
||||
int pwm2_pin = PIN_READ(PWM2);
|
||||
@@ -18,14 +18,38 @@ void ThyristorWrite(real_T* Buffer)
|
||||
int pwm6_pin = PIN_READ(PWM6);
|
||||
|
||||
|
||||
WriteOutputArray(pwm1_pin, 0, 0);
|
||||
WriteOutputArray(pwm2_pin, 0, 1);
|
||||
WriteOutputArray(pwm3_pin, 0, 2);
|
||||
WriteOutputArray(pwm4_pin, 0, 3);
|
||||
WriteOutputArray(pwm5_pin, 0, 4);
|
||||
WriteOutputArray(pwm6_pin, 0, 5);
|
||||
WriteOutputArray(pwm1_pin, ind_port, 0);
|
||||
WriteOutputArray(pwm2_pin, ind_port, 1);
|
||||
WriteOutputArray(pwm3_pin, ind_port, 2);
|
||||
WriteOutputArray(pwm4_pin, ind_port, 3);
|
||||
WriteOutputArray(pwm5_pin, ind_port, 4);
|
||||
WriteOutputArray(pwm6_pin, ind_port, 5);
|
||||
}
|
||||
|
||||
void Write_PowerMonitor(real_T* Buffer, int ind_port)
|
||||
{
|
||||
int nn = 0;
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.U[i], ind_port, nn++);
|
||||
}
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.ZC_Detected[i], ind_port, nn++);
|
||||
}
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.F[i], ind_port, nn++);
|
||||
}
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.I[i], ind_port, nn++);
|
||||
}
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
WriteOutputArray(pm.T[i], ind_port, nn++);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @brief Функция для записи входов в приложение МК
|
||||
* @param u - массив входных значений
|
||||
@@ -49,41 +73,13 @@ void app_readInputs(const real_T* Buffer) {
|
||||
*/
|
||||
void app_writeOutputBuffer(real_T* Buffer) {
|
||||
// USER APP OUTPUT START
|
||||
//ThyristorWrite(Buffer);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
WriteOutputArray(pm.ZC_Detected[i], 0, i);
|
||||
}
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
WriteOutputArray(pm.zc.Channel[i].DebounceCounter, 0, i+2);
|
||||
}
|
||||
//ThyristorWrite(Buffer, 0);
|
||||
Write_PowerMonitor(Buffer, 1);
|
||||
|
||||
|
||||
extern ADC_Periodic_t adc;
|
||||
for(int i = 0; i < 6; i++)
|
||||
{
|
||||
WriteOutputArray(pm.adc.Data[i], 1, i);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.U[i], 2, i);
|
||||
}
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.ZC_Detected[i], 2, i + 3);
|
||||
}
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.I[i], 2, i + 6);
|
||||
}
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
WriteOutputArray(pm.F[i], 2, i + 9);
|
||||
}
|
||||
WriteOutputArray(hmcu.dSFuncPeriod, 2, 12);
|
||||
WriteOutputArray(hmcu.dSFuncTime, 2, 13);
|
||||
WriteOutputArray(hmcu.dMCUStepTime, 2, 14);
|
||||
|
||||
// USER APP OUTPUT END
|
||||
}
|
||||
Reference in New Issue
Block a user