Запись изменений с использованием скриптов


Wiki

Скрипты - это специальный механизм программы, который позволяет реализовать последовательную передачу инструкций программатору для выполнения команд установки настроек программатора, записи и чтения кода из памяти трансивера.

Скрипты применяются в случаях, когда необходимо реализовать сценарий специфического программирования трансивера, алгоритм записи в память которого отличается от стандарта MSA и требует выполнения ряда особых инструкций для успешного сохранения изменений в памяти трансивера, а также когда требуется автоматизировать многократно повторяемый процесс программирования различных областей памяти трансивера с минимальным участием оператора.


Как использовать скрипт?

  1. Откройте меню Control - Write using a script - Select a script file, чтобы указать путь к файлу скрипта;
  2. Убедитесь, что область редактора содержит корректный код, если скрипт во время исполнения использует данные из области редактора;
  3. Нажмите кнопку для записи в память трансивера, чтобы запустить скрипт.

При выполнении скрипта программа игнорирует настройки выбранной области. Область чтения и записи должна быть установлена в командах скрипта.

Следует обратить внимание, что после выполнения скрипта программное обеспечение не проводит проверку на успешность записи.


Как сбросить скрипт?

Перейдите в меню Control - Write using a script - Reset script, чтобы сбросить скрипт и вернуться к механизму стандартной записи.


Как создать скрипт?

Синтаксис команд механизма скриптов реализован на основе протокола команд SFPTotal.

Пример:

w2A2007B03AABBCCDD
w2A000007F{00;7F}
w2A2007F0080
w2A200FF0001
PAUSE
R2A000007F

Создайте текстовый файл и укажите набор инструкций построчно. Сохраните файл скрипта, чтобы использовать данный сценарий программирования в программе.


Дополнительные команды скриптов

Набор дополнительных команд обрабатывается программой.

PAUSE

Пауза при выполнении скрипта. По-умолчанию, пауза 100 мс.

Может использоваться с дополнительным параметром длины паузы в миллисекундах.

PAUSE
Delay 100ms
PAUSE=2000
Delay 2000ms

SETCHECKSUM

Вызов функции пересчета контрольной суммы.

SETVAL

Устанавливает значение YY в ячейке редактора по смещению XX. Значения параметров указываются в верхнем регистре в формате HEX.

SETVAL 7F 03

{00;7F}

Макрос подстановки {XX;YY} используется внутри других команд. При выполнении скрипта макрос будет автоматически заменен на текущее значение фрагмента кода в области редактора от байта XX до YY.

Пример записи фрагмента 128 байт в область страницы A2h по смещению 80h

w2A200807F{00;7F}

Пример записи фрагмента пороговых значений DDM размером 96 байт в область страницы A2h по смещению 00h c последующим чтением.

W2A200005F{00;5F}

$VAR1

Буферная переменная $VAR1. Используется для сохранения фрагментов кода из редактора и вставки содержимого буферных переменных при исполнении скрипта.

Программа поддерживает 5 буферных переменных $VAR1 — $VAR5.

$VAR1={00;43}
$VAR2={44;0F}
$VAR3={54;2B}
$VAR4=002AFE
$VAR5=4F

$YYYY

Подставляет в команду значение текущего года.

$MM

Подставляет в команду значение текущего месяца.

$DD

Подставляет в команду значение текущего дня.

BACKUPTOFILE

Запускает процедуру сохранения бекапа для выбранного в настройках программы типа модуля.

BACKUPDIR

Установка каталога для сохранения бэкапов. Может принимать другие параметры для создание каталога с определенным наименованием.

Пример создания каталога бекапов с указанием даты в имени папки.

$VAR5=SOMETEXT
BACKUPDIR=\$YYYY-$MM-$DD_$VAR5\
BACKUPTOFILE

IMPORTFILE

Импорт HEX кода из двоичного файла в область редактора.

IMPORTFILE=\catalog\filename.bin

IMPORTHEX

Импорт HEX кода в область редактора.

Пример импорта фрагмента кода размером 128 байт в область редактора.

IMPORTHEX=030407100000000000000006670000000802001E4F454D2020202020202020202020202000000B4053465031302D535220202020202020204120202003520091001A000058473936535230313020202020202020303830393236202068F0031200001111A8DD05AA642FAA6F5A64DAF3285A9D000000000000000000F05E482F

Импорт кода в область редактора из конкатенации буферных переменных.

$VAR1={00;43}
$VAR2={44;0F}
$VAR3={54;2B}
IMPORTHEX=$VAR1$VAR2$VAR3

ERASEVENDORCODE

Сбрасывает область vendor specific в окне редактора в нули.

SIGNATURE

Вызов генератора с предустановленными параметрами.

Для использования данной функции в программном обеспечении должна присутствовать расширенная лицензия генератора (не входит в стандартную поставку).