BatchWriter (пакетная запись)
Окно BatchWriter (меню → Options → BatchWriter) предназначено для подбора и проверки настроек микросхемы по адресам и значениям регистров. При вводе адреса и данных столбец Decoded автоматически отображает расшифровку в соответствии с битовыми масками регистров — имя регистра, значения отдельных полей, ненулевые и нулевые биты. Подготовленную таблицу можно сохранить в файл и передать для анализа. При необходимости настройки можно записать в микросхему — последовательно строка за строкой или все разом.
Расположение элементов
Окно разделено на две части:
- Таблица — список строк, каждая из которых содержит адрес регистра, значение и расшифровку записанных битов/полей.
- Панель кнопок — строка управления в нижней части окна.
Столбцы таблицы
| Столбец | Назначение |
|---|---|
| (радиокнопка) | Указатель текущей строки. Клик по радиокнопке делает строку текущей — именно она будет записана при нажатии Write Step. Подсвечивается белым фоном. |
| Address | Адрес регистра микросхемы (десятичный или шестнадцатеричный, например 71 или 0x47). |
| Value | Значение для записи (десятичное или шестнадцатеричный, например 5 или 0x05). |
| Decoded | Автоматическая расшифровка: имя регистра, ненулевые поля выделены зелёным, нулевые — синим. Столбец только для чтения. |
Органы управления
| Кнопка | Назначение |
|---|---|
| Write Step | Записать текущую строку (отмеченную радиокнопкой) в микросхему и перейти к следующей. Если адрес пустой — запись пропускается, курсор переходит на следующую строку. |
| Write All | Записать все строки последовательно сверху вниз; строки с пустым или некорректным адресом пропускаются. В процессе текущая (подсвеченная) строка перемещается по таблице; по завершении курсор остаётся на последней записанной строке. |
| Go Up | Переместить курсор и радиокнопку на первую строку. |
| +Row | Вставить пустую строку перед выделенной (или перед текущей, если ничего не выделено). Курсор переходит на новую строку. |
| -Row | Удалить выделенную строку. Курсор переходит на следующую доступную строку (или на последнюю, если удалена последняя). |
| Filter | Убрать строки, которые не нужно записывать: совпадающие со значениями регистров по умолчанию или содержащие адреса только для чтения. Удобно для очистки загруженного списка перед записью. |
| Clean | Очистить таблицу и создать 20 пустых строк. |
| Save to file | Сохранить таблицу в текстовый файл (адрес, значение, расшифровка — разделены табуляцией). |
| Load from file | Загрузить таблицу из текстового файла. Помимо собственного формата (адрес, значение) поддерживается файл base_ram.txt (три столбца: индекс, значение, имя регистра) — в этом случае расшифровка выполняется по имени регистра. |
Типичное использование
- Откройте Options → BatchWriter — появится окно с пустой таблицей (20 строк).
- Заполните столбцы Address и Value нужными адресами и значениями регистров. Столбец Decoded заполняется автоматически.
- Пустые строки (без адреса) можно использовать как разделители или комментарии — при Write Step они пропускаются.
- Для записи одной строки — убедитесь, что радиокнопка стоит на нужной строке, и нажмите Write Step. После записи курсор автоматически переходит на следующую строку.
- Для записи всех строк разом — нажмите Write All. Запись идёт последовательно сверху вниз.
- Для добавления строк — нажмите +Row (вставка перед выделенной).
- Для удаления строки — выделите её и нажмите -Row.
- Чтобы оставить в таблице только строки, реально меняющие конфигурацию, нажмите Filter — строки со значениями по умолчанию и «только для чтения» будут удалены.
Также поддерживается вставка из буфера обмена (Excel/других таблиц): скопированные ячейки вставляются в выделенную область таблицы.
Формат данных
Адреса и значения можно вводить в десятичном или шестнадцатеричном формате (префикс 0x или 0X). Например:
71— десятичный адрес0x47— шестнадцатеричный адрес (то же самое)0x05— значение 5
Столбец Decoded автоматически показывает:
- Имя регистра (если адрес известен) — например,
Mode_config - Значения отдельных полей — например,
CPU1_en=1, CPU2_en=0 - Ненулевые поля выделяются зелёным цветом, нулевые — синим
Автосохранение
Таблица автоматически сохраняется между сеансами работы приложения в файл batchwriter.csv (адрес и значение, разделены ;). При следующем открытии BatchWriter загруженная таблица восстанавливается автоматически.