From da78efc9889f275d29a638c8742d1fb689564512 Mon Sep 17 00:00:00 2001 From: Razvalyaev Date: Fri, 14 Nov 2025 21:59:27 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=20periphConfig?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Фикс обновления имени S-Function --- McuLib/m/mexing.m | 5 ++--- McuLib/m/periphConfig.m | 4 +++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/McuLib/m/mexing.m b/McuLib/m/mexing.m index 4524278..a40e9c1 100644 --- a/McuLib/m/mexing.m +++ b/McuLib/m/mexing.m @@ -1,19 +1,18 @@ % Компилирует S-function для блока микроконтроллера в Simulink % compile_mode: 1 - компиляция, 0 - обновление конфигурации function res = mexing(compile_mode) - global Ts - Ts = 0.00001; % Установка глобального времени дискретизации if compile_mode == 1 + block = gcb; % === РЕЖИМ КОМПИЛЯЦИИ === setenv('VSLANG', '1033'); % Английский для Visual Studio % Обновление параметров блока - block = gcb; newName = get_param(block, 'sfuncName'); oldName = get_param(block, 'FunctionName'); if ~strcmp(newName, oldName) set_param(block, 'FunctionName', newName); % Обновление имени функции + mcuMask.setSFuncName(block); end newParam = get_param(block, 'sfuncParam'); diff --git a/McuLib/m/periphConfig.m b/McuLib/m/periphConfig.m index d89dcf5..c9e9dd0 100644 --- a/McuLib/m/periphConfig.m +++ b/McuLib/m/periphConfig.m @@ -77,6 +77,8 @@ classdef periphConfig % В случае ошибки восстанавливаем таблицы customtable.restore_all_tables(tableNames, columns_backup); end + + periphConfig.addUserFunctions(config.UserCode); end function update() @@ -541,7 +543,7 @@ classdef periphConfig code = editCode.insertSection(code, '// PERIPH DEINIT', deinitFuncsText); % Записываем обновленный файл - fid = fopen(wrapPath, 'w', 'n'); + fid = fopen(wrapPath, 'w', 'n', 'UTF-8'); if fid == -1 error('Не удалось открыть файл для записи'); end