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