Перейти к основному содержимому

Вкладка Terminal

Вкладка Terminal предназначена для просмотра и редактирования регистров микросхемы в ручном режиме. Это основной инструмент для настройки параметров контуров отслеживания, конфигурации АЦП, управления режимами работы микросхемы.

Окно Terminal

Структура вкладки​

Окно Terminal разделено на две строки:

  • Верхняя часть — таблица регистров IC (адреса 0–95).
  • Нижняя часть — три колонки: основные регистры, регистры контуров C1/C2, редактор битовых полей.
+------------------------------------------------------------------+
| Таблица регистров IC (адреса 0–95, 24 столбца) |
+------------------------------------------------------------------+
| Основные регистры | Регистры контуров | Actions |
| (вкладки "1" и "2") | (вкладки C1 и C2) | (кнопки управления) |
+------------------------------------------------------------------+

Таблица регистров IC​

В верхней части расположена таблица всех регистров микросхемы (адреса 0–95). Таблица содержит 24 столбца — 8 групп по 3 столбца: Адрес | Имя | Значение.

  • Количество строк: 12 (отображаются адреса 0–95).
  • Цветовая схема: синие тона с пользовательским рендерингом ячеек.
  • Отслеживание изменений: изменённые ячейки подсвечиваются жёлтым цветом.

Контекстное меню​

Правый клик на ячейке значения открывает контекстное меню:

  • Read value — прочитать значение регистра из микросхемы.
  • Write value — записать введённое значение в регистр микросхемы.

Основные регистры (вкладки «1» и «2»)​

Вкладка «1»​

ГруппаРегистры
Левая колонкаAFE_config (адрес 70), NOCLK_stat (адрес 72)
Правая колонкаMode_config (адрес 71), ADC_config (адрес 65), CMP_lth (адрес 69), IC_addr (адрес 64)

Вкладка «2»​

ГруппаРегистры
Левая колонкаMask_Stat (адрес 66), RegF1–RegF3 (адреса 88–90, фабричные), BOTP_addr / BOTP_data / BOTP_ctrl (адреса 84–86)
Правая колонкаStat_main (адрес 75), PLL_config (адрес 80), INIT_conf (адрес 81), UOTP_ctrl (адрес 82)

Регистры контуров отслеживания (C1 / C2)​

Панель содержит две вкладки — C1 (контур 1) и C2 (контур 2), каждая с идентичным набором регистров:

Колонка 1 (левая)​

РегистрОписание
ExoStngsНастройки генератора возбуждения
EXIncПриращение амплитуды возбуждения
InputStngsНастройки входного каскада
ExPhShftСдвиг фазы возбуждения
KonturStngsНастройки контура (включая HandToEXT)

Колонка 2 (центральная)​

РегистрОписание
MaskМаска статуса
ResCntrlУправление сбросом/рестартом контура

Колонка 3 (правая)​

РегистрОписание
StatСтатус контура
KampSКоэффициент усиления SIN
KampCКоэффициент усиления COS
KbiasSСмещение SIN
KbiasCСмещение COS
fbiasСмещение частоты
ZeroНулевое значение
Amp_thПорог амплитуды

Подробное описание каждого регистра — в разделе Регистры.

Взаимодействие элементов​

Таблица регистров, панели регистров контуров и редактор битовых полей связаны двунаправленно:

  • Изменение значения в ячейке таблицы IC-регистров автоматически обновляет соответствующие битовые поля на панелях.
  • Изменение бита или поля на панели контуров немедленно отражается в значении ячейки таблицы.

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

Чтение и запись отдельной ячейки​

Для каждой ячейки таблицы IC-регистров доступно контекстное меню правой кнопкой мыши:

  • Read value — прочитать значение одного регистра из микросхемы.
  • Write value — записать введённое значение в регистр микросхемы.

Это позволяет точечно обновить или проверить конкретный регистр, не затрагивая остальные.

Actions (кнопки управления)​

Третья колонка (справа) — панель Actions: с кнопками для работы с регистрами и памятью микросхемы. Именно здесь находятся все кнопки прожига OTP (подробно — Программирование OTP). Разделена на несколько групп:

Загрузка и сохранение​

КнопкаНазначение
Load from txtЗагрузить значения регистров из файла base_ram.txt
Load from hexЗагрузить значения из файла base_ram.hex
Load defaultsЗагрузить фабричные значения по умолчанию
Store to txtСохранить текущие значения в base_ram.txt
Store to hexСохранить текущие значения в base_ram.hex
Create RDLСгенерировать RDL-файл с текущими значениями
Create BOTPСгенерировать файл rom_BOTP.hex
Create U22BСгенерировать файл rom_u22b.hex (PLL_config, INIT_conf)

Обмен с микросхемой​

КнопкаНазначение
Load from ICПрочитать все регистры из микросхемы в таблицу
Write to ICЗаписать в микросхему настройки преобразователя (не все регистры — см. ниже)
Loading... / STOPЦиклическое чтение регистров из микросхемы. При нажатии кнопка меняет текст на STOP, при повторном — останавливает цикл.
Что именно записывает «Write to IC»

Кнопка Write to IC отправляет в микросхему только конфигурационные регистры преобразователя — те, что задают режим работы (коэффициенты, пороги, настройки входов/выходов, возбуждения, режим АЦП):

  • Канал 1: адреса 0–15, 31 (KampS, KampC, KbiasS, KbiasC, InputStngs, KonturStngs, ResCntrl, Amp_th и т.д.);
  • Канал 2: адреса 32–47, 63;
  • Общие: адреса 64–71 — IC_addr, ADC_config, Mask_Stat, Flags_delay, WR_lock, CMP_lth, AFE_config, Mode_config.

Write to IC записывает все настраиваемые регистры преобразователя, включая регистры тактирования и OTP-управления — PLL_config (80), INIT_conf (81), UOTP_ctrl (82), BOTP_addr (84), BOTP_data (85), BOTP_ctrl (86). Отдельная кнопка для их записи больше не нужна.

Записи не подлежат только статусные / вычисляемые регистры — координату (C1Coord/C2Coord), скорость (C1Vel/C2Vel), метрики, статусы, отсчёты АЦП (адреса 16–30, 48–62, 72–79, 83, 87, 91–95). Они вычисляются микросхемой в процессе работы.

Одиночный регистр (любой адрес) можно записать точечно через контекстное меню ячейки → Write value.

Запись ведётся в оперативную память чипа: настройки действуют до сброса питания. Чтобы сохранить их энергонезависимо — см. Программирование OTP.

Регистры по адресу​

В нижней части — поле Address и таблица на 8 строк (Address | Value), а также кнопки:

КнопкаНазначение
ReadПрочитать 8 слов из указанного адреса
WriteЗаписать 8 слов по указанному адресу
watch OTPФлажок — при чтении читать OTP-область
watch FlashФлажок — при чтении читать Flash-область ESP32
Run InitВыполнить инициализацию из Flash ESP32 (NRESET + запись всех блоков)

Управление CPU и конвертерами​

ФлажокНазначение
CPU1_enВключение/выключение микровычислителя CPU1 (бит Mode_config)
CPU2_enВключение/выключение микровычислителя CPU2
CONV1_enВключение/выключение конвертера HAND1
CONV2_enВключение/выключение конвертера HAND2

Программирование OTP​

КнопкаНазначение
Prog BOTPПрожиг BOTP — энергонезависимый слепок регистров (необратимо, требует подтверждения)
Prog UOTPПрожиг UOTP — энергонезависимое хранение PLL_config и INIT_conf (необратимо)
Verify BOTPВерификация BOTP-памяти
Оперативная память vs энергонезависимая OTP

Write to IC (панель Actions:) пишет в оперативную память все настраиваемые регистры (включая тактирование и OTP-управление) — настройки действуют только до сброса питания. Prog BOTP / Prog UOTP прожигают энергонезависимую OTP — значения сохраняются и автоматически загружаются при каждом включении или сбросе. Не путайте с кнопкой Program в левой панели (ConnectPanel) — она записывает оперативную конфигурацию из base_ram.txt и к прожигу отношения не имеет. Пошаговый сценарий прожига — в разделе Программирование OTP.

Управление питанием​

ФлажокНазначение
NRESETУправление сигналом сброса микросхемы
STNDBYПеревод микросхемы в режим standby
vpp9vРучная подача VPP (override для диагностики, с предупреждением). При штатном прожиге не нужна — напряжение VPP подаётся автоматически
предупреждение

Кнопки Prog BOTP, Prog UOTP выполняют необратимую запись в OTP-память. Перед использованием убедитесь в корректности данных. Операция требует двойного подтверждения.

Типовой порядок работы​

  1. Подключите микросхему (Окно Тест → Find IC).
  2. Откройте вкладку Terminal.
  3. Нажмите Load from IC — все регистры микросхемы загрузятся в таблицу.
  4. Для изменения регистра: правый клик по ячейке → Write value (одиночная запись), либо Write to IC — записать разом все настройки преобразователя, включая регистры тактирования и OTP-управления (PLL_config, INIT_conf, BOTP_ctrl).
  5. Для настройки контура: используйте вкладки C1/C2 для записи коэффициентов KampS, KampC, KbiasS, KbiasC и других параметров.
  6. Для наблюдения за изменениями в реальном времени: нажмите Loading... — регистры будут циклически обновляться.
  7. Для сохранения текущих значений: Store to txt или Store to hex.
  8. Чтобы сохранить конфигурацию энергонезависимо (с автозагрузкой при включении/сбросе): выполните прожиг OTP — Create BOTP → Prog BOTP → Verify BOTP и Create U22B → Prog UOTP. Пошагово — в разделе Программирование OTP.