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

Вкладка 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 с кнопками для работы с регистрами и памятью микросхемы. Разделена на несколько групп:

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

КнопкаНазначение
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). Для их записи используйте отдельную кнопку Write ctrl OTP (см. Программирование OTP).
  • Статусные / вычисляемые регистры — координату (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

КнопкаНазначение
Write ctrl OTPЗаписать в микросхему регистры тактирования и OTP-управления: PLL_config (80), INIT_conf (81), UOTP_ctrl (82), BOTP_addr (84), BOTP_data (85), BOTP_ctrl (86). «Write to IC» эти регистры не трогает — это альтернатива ручной записи по одному.
Prog BOTPПрожиг BOTP — энергонезависимый слепок регистров (необратимо, требует подтверждения)
Prog UOTPПрожиг UOTP — энергонезависимое хранение PLL_config и INIT_conf (необратимо)
Verify BOTPВерификация BOTP-памяти
Оперативная память vs энергонезависимая OTP

Write to IC и Write ctrl OTP пишут в оперативную память — настройки действуют только до сброса питания. Prog BOTP / Prog UOTP прожигают энергонезависимую OTP — значения сохраняются и автоматически загружаются при каждом включении или сбросе. Подробно — в разделе Программирование OTP.

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

ФлажокНазначение
NRESETУправление сигналом сброса микросхемы
STNDBYПеревод микросхемы в режим standby
vpp9vПодача 9V на вход программирования OTP (с предупреждением)
предупреждение

Кнопки 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) записываются отдельно — кнопкой Write ctrl OTP.
  5. Для настройки контура: используйте вкладки C1/C2 для записи коэффициентов KampS, KampC, KbiasS, KbiasC и других параметров.
  6. Для наблюдения за изменениями в реальном времени: нажмите Loading... — регистры будут циклически обновляться.
  7. Для сохранения текущих значений: Store to txt или Store to hex.