Files
RadioPhotonic-generator-docs/ADC_software-hardware.md
2025-09-18 17:11:38 +03:00

6.8 KiB
Raw Blame History

problems

баг с размещением большого буфера не в тот регион памяти

hardware

подключение (OUT_10) -- ADC_clock -> DI_SYN1 Фазы обеих клоков будем обнулять в начале цикла ЛЧМ.

BP9 (OUT_11) -- Modulation -> Mach-Zander

TIM11_CH1 Тактирование от APB2 (184 MHz). Желаемая частота -- 1 МГц. => Prescaler =1, ARR = 91, OCR1=22 Подключим его через драйвер к модулятору Маха-Цандера.

BP8 (OUT_10) -- ADC_clock -> DI_SYN1

TIM4_CH3 Тактирование от APB1 (92 MHz). Желаемая частота -- 2 МГц. => Prescaler = 0, ARR = 45, OCR3=22 Подключим его к DI_SYN1.

PD7 (TASK_TRG) -- trigger -> DI_SYN2

!Pasted image 20250711184438.png !Pasted image 20250711184407.png

software

  1. После перенастройки модуля надо сбрасывать приемный буфер на ПК. Сейчас сброс через полное вычитывание данных вникуда.

Логическая таблица задает порядок опроса и параметры опрашиваемых физических каналов. Данные с физических каналов затем поступают по SPORT0 в порядке опроса.

Алгоритм работы: 1. Приняли команду о начале работы (напр. усреднение) с ПК. Настроили state machine. 2. Обработка данных 3. Отправка данных hdma_send_req_start(). Поднимается флаг "данные отправляются, передающий буффер занят" 4. При окончании отправки вызывается обработчик hdma_send_done(), в котором сбрасываем флаг "данные отправляются, передающий буффер занят"

Вернул ПО blackfin в оригинальное состояние (git checkout). Bf не возвращает данные. При попытке запуска через x502studio -- возникает ошибка с каналами: !Pasted image 20250916221016.png

Причем если подключить ноут к сети, то вылетает быстрее. Однажды перед вылетом была получена такая картина: !Pasted image 20250916220932.png Подключение -- syn1 (тактирование АПЦ), syn2 (запуск), X1 -- сигнал (треугольник). Видно, что в процессе поменялись местами каналы 1 и 2. WTF? Настройки: !Pasted image 20250916221400.png

Проблема воспроизводима: !Pasted image 20250916221611.png !Pasted image 20250916221856.png Воспроизведение:

ошибка sync freq mode sync start mode пр. условия
да syn1 rise syn2 rise
да syn1 rise internal
нет internal internal
нет int syn1 rise
нет syn2 rise (низкая частота) int
да syn2 rise (ВЧ) (F>0.5 MHz) int F=730 kHz !Pasted image 20250917153156.png
да syn2 rise (ВЧ) (F=730 kHz) int вход канала 2 -- заземлен (внутренне):!Pasted image 20250917161724.png !Pasted image 20250917161645.png

Эксперимент:

  1. 1 канал подключен к генератору с треугольным сигналом
  2. 2,3,4,5 каналы -- заземлены (внешне проводами к GND32) результат:
  3. sync start mode -- internal
sync freq mode результат
INTernal всё ОК
SYN1_RISE каналы 1-5 путаются. Ранее аналогично путались и все другие каналы !Pasted image 20250917193217.png!newplot.png
после промежутка времени (неизвестное событие?): то же каналы перестали путаться. Большие помехи !Pasted image 20250917193401.png
INTernal всё ОК !newplot(1).png
SYN2_RISE ОК !Pasted image 20250917193951.png
SYN1_RISE !Pasted image 20250917194104.png
SYN1_FALL !Pasted image 20250917194134.png