Commit Graph

9 Commits

Author SHA1 Message Date
ae2887acfe Улучшены названия переменных, добавлена настройка дедтайма (в мс или тиках for())
- положительное/отрицательное питание -> прямое/обратное включение
- ключи для питание -> ключи для фаз
- positive/negative -> Forward/Reverse
- power switch ->phase switch
2024-12-23 12:52:11 +03:00
10e7859af7 #3 в tester_config.h нормально названы пины для ключей. переменные надо будет потом переименовать 2024-12-19 18:54:45 +03:00
24b6295935 #3 Настройки перенесены в модбас, все подтягивается оттуда
- В modbus коилах задается режим и выставляется флаг запустить тест. Запустить тест также можно по кнопке

- Добавлена функция для выставления дефолтных настроек TESTER_Set_Default_Settings: она выставляет все настройки в modbus по дефолту и еще некоторые не modbus настройки (порты и пины ключей, кнопок, светодиодов)

- Добавлена функция для обновления настроек тестера TESTER_UpdateSettings: она подтягивает все настроки из modbus в соответствующие структуры тестера. Вызывается каждый раз перед тестированием
2024-12-19 17:25:03 +03:00
a5704ae4be #3 Добавлен простейший интерфейс: одна кнопка и один диод. Пока интерфейс управляется через прерывание в SysTick
При нажатии на кнопку включается тест с переходом от положительного напряжения к отрицатльному.

Индикация светодиода:
- постоянно горит - ожидание команды
- моргание (250 мс) - прямое подключение диода
- моргание (25 мс) - обратое подключение диода
2024-12-19 15:26:22 +03:00
13825e068c #3 Сделаны улучшенные функции управления ключами, добавлены настройки по таймингам в tester_config.h
По переключениям:
-Теперь для двух ключей одного питания должен быть один порт

- Добавлена функция реконнекта питания TESTER_Reconnect_Power(), чтобы быстрее переключать с положительного на отрицательный. А не через отдельные функции TESTER_Disconnect_Power(), TESTER_Connect_Power()

- Сделан дефайн USE_HAL_GPIO_FUNCTIONS для испольщования HAL GPIO функций. Его можно убрать и пины будуте переключаться напрямую через BSRR.

- Также сделан дефайн ALL_SW_USE_SAME_PORT, чтобы переключать все 4 пина в BSRR в одну комманду

Это поможет в случае функции реконнекта, где HAL функции сначала отключают питание, а потом подключат другое. Из-за этого появляются задержки в 580 мкс (SW Timings with HAL GPIO write.sal),

Если убрать USE_HAL_GPIO_FUNCTIONS, то сократиться время переключения между питаниями до 160мкс (SW Timings without HAL GPIO write and different ports.sal)

А если еще выставить ALL_SW_USE_SAME_PORT, то через BSRR будет выставлятся все 4 пина, и задержек нет (SW Timings without HAL GPIO write.sal). Ну почти, иногда проскакивают 2 мкс (SW Timings without HAL GPIO write 2.sal)
2024-12-19 13:57:51 +03:00
7f6932631e Чуть подкоректированны и закоментированны структуры 2024-12-18 17:00:44 +03:00
8326ea8a8c #3 Добавлены файлы для реализации алгоритмов (не все готово)
Основные функции по файлам:

 - tester_adc_func
Cодержит функции для управления АЦП и DMA.
Для DMA есть хендлер (ADC_DMA_Handler), который перекидывает готовую половину DMA буфера в структуру АЦП
Функция ADC_DMA_ReadForPeak стащена с МЗКТЭ и пока просто простаивает и ждет пока буффер заполниться, но можно потом добавить какую-то обрбаотку буфера, пока он еще заполяется. После окончания работы АЦП эта функция находит максимальное зачение и рассчитывает среднее значение в этом "пике"
Добавлена функция ADC_ReadContinuous, которая считывает АЦП в континуес режиме, значение запихивает в буффер. Прерывается при таймауте.:

 - tester_func
Cодержит функции для тестирования диодов:
в обратном подключении (TESTER_TestDiode_NegativePower),
в прямом подключении (TESTER_TestDiode_PositivePower),
при переходе от прямого к обратному (TESTER_TestDiode_PosNegPower).
Для работы АЦП, вызывает функции из tester_adc_func. Пока всё максимально примитивно, надо будет доработать

- tester_main
Содержит функции инициализации, подготовка к циклу и главный цикл тестер. По флагам вызываются соответствующие функции тестирования диодов из tester_func. Все функции этого файла вызываются в main.c.

-tester_config.h
Пока содержит настройки для тестера: пины для ключей, состяония подключенного и отключенного питания, которые подключают питание, настройки для АЦП
2024-12-18 16:12:37 +03:00
a2043006cc Добавлены библиотеки adc, modbus (его надо проверить)
В библиотеке adc пока только сделана заготовка для считывания выброса, надо доделать:
Пока в main крутиться тест: формирование импульса ножкой светодиодом и считыание АЦП. Считывается этот импульс и определяется его пик (максимальное значение) и в районе этого пика беруться значения для расчета его амплитуды

Modbus добавлен но не проверен
2024-12-17 18:24:41 +03:00
dbe38ec1d5 init cube/keil project 2024-12-17 09:42:52 +03:00