Лабораторный БП PSL-3604

Блоки питания, преобразователи напряжения, UPS'ы - это здесь :)
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

Для варианта с аппаратным I2C я успел написать вот это, но из-за ошибки в процессоре с ремепнутыми I2C и SPI не заработало.
Вложения
hw_i2c.zip
(2.13 КБ) 205 скачиваний
Реклама
altais
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Вс фев 09, 2014 21:14:00
Откуда: Харьков

Re: Лабораторный БП PSL-3604

Сообщение altais »

Наверное уже офтоп, но нашел AN о котором упоминал: AN2824. Может кому на будущее пригодится. Реализован драйвер, учитывающий еррату, при этом работает напрямую с регистрами(через stdlib только инициализация). Его объем меня в свое время впечатлил.
Вложения
I2CRoutines.c
(26.32 КБ) 543 скачивания
Реклама
altais
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Вс фев 09, 2014 21:14:00
Откуда: Харьков

Re: Лабораторный БП PSL-3604

Сообщение altais »

Леонид Иванович, возможно стоит вынести драйвер периферии в отдельный шаблонный класс (т.к. как на кристалле их может быть несколько), eeprom тоже сделать шаблоном и в параметре указывать текущий используемый модуль. Тогда драйвер ееprom не будет зависеть от реализации, вероятность повторного использования такого кода возрастает. Например, специализация класса Uart в моих исходниках:
...
typedef Usarts::UsartIrq<USART1_BASE, Usarts::FullRemap> U1;
...

При специализации UART опционально можно еще указать пин DE для RS485 и размер кольцевого буфера.

В качестве более полного примера прикреплю исходник с реализацией протокола Wake для STM8 в подобном стиле. По сути это Ваш код после рефакторинга.

P.S.: Для OneWire можно обойтись одной ногой, Uart2 умеет работать в полудуплексе по одной линии (Single-Wire mode)
Вложения
wake.h
(12.83 КБ) 221 скачивание
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

altais писал(а):возможно стоит вынести драйвер периферии в отдельный шаблонный класс
Да, там много чего можно улучшить, исходник PSL-3604 требует глубокого рефакторинга.
altais писал(а):eeprom тоже сделать шаблоном и в параметре указывать текущий используемый модуль.
Фрагмент работы через аппаратный I2C был сначала написан, а потом выброшен, я его нигде не использую. В конечном проекте программный I2C. В нем тоже можно отделить реализацию I2C от работы с EEPROM и сделать программный I2C шаблоном с параметрами в виде номеров порта и пинов. Но это кусок работы, на всё времени не хватает.
altais писал(а):В качестве более полного примера прикреплю исходник с реализацией протокола Wake для STM8 в подобном стиле. По сути это Ваш код после рефакторинга.
Вижу, реализованы только прием и передача пакета. А формирование пакета делается снаружи. В реализации, которая применена в PSL-3604, в класс Wake добавлены методы для формирования и разбора пакета: AddByte, AddWord, GetByte, GetWord и другие.
altais писал(а):P.S.: Для OneWire можно обойтись одной ногой, Uart2 умеет работать в полудуплексе по одной линии (Single-Wire mode)
В исходнике PSL-3604 есть закомментированная строчка:

Код: Выделить всё

  //USART2->CR3 = USART_CR3_HDSEL; //работа через один пин USART2_TX (PA2)
А в начале модуля therm.cpp есть такой комментарий:

Код: Выделить всё

//Если выбрать режим "single-wire half-duplex mode" для USART2, то
//для реализации шины 1-Wire достаточно одного вывода USART2_TX (PA2).
//Но поскольку на печатной плате уже есть соединение PA2 - PA3,
//этот режим здесь не используется (строчка закомментирована).
//Нужно заметить, что реализация приема-передачи через разные пины может
//быть иногда полезной, например, при реализации опторазвязки интерфейса.
В следующей модели источника PSL-2401 для 1-Wire используется один пин.
Реклама
Эиком - электронные компоненты и радиодетали
altais
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Вс фев 09, 2014 21:14:00
Откуда: Харьков

Re: Лабораторный БП PSL-3604

Сообщение altais »

Формирования пакета нет, потому что это базовый класс. Класс конечного устройства наследует и формирует пакет. С моей стороны следовало более внимательно изучить детали прежде чем давать поверхностные советы. Тему прочитал, но исходники по диагонали только смотрел.
Реклама
Ocela
Прорезались зубы
Сообщения: 232
Зарегистрирован: Пн ноя 04, 2013 14:41:49

Re: Лабораторный БП PSL-3604

Сообщение Ocela »

Собрал Power supply board - 2-й экземпляр :))
Изображение
Реклама
Stopus
Открыл глаза
Сообщения: 70
Зарегистрирован: Вт авг 12, 2008 12:22:58
Откуда: Шишаки Полтавская обл

Re: Лабораторный БП PSL-3604

Сообщение Stopus »

Всем доброго здравия!
Подскажите, пожалуста, сам скоро дыметь начну: на плате power supply board между контактами OUT+ и OUT- стоит разем SENSE - куда от него идут провода, на какой плате ему установлена ответная часть? Ну не могу я ее найти, вижу на фото, что у автора он куда то подключен, а найти куда не могу! Заранее благодарен!
Аватара пользователя
morokot
Вымогатель припоя
Сообщения: 587
Зарегистрирован: Вт сен 13, 2011 13:29:09
Откуда: Крым, Симферополь

Re: Лабораторный БП PSL-3604

Сообщение morokot »

OUT+ cоединяется с SENSE+ на выходной клемме, с отрицательными контактами аналогично, если не предусмотрены отдельные клеммы...
Stopus
Открыл глаза
Сообщения: 70
Зарегистрирован: Вт авг 12, 2008 12:22:58
Откуда: Шишаки Полтавская обл

Re: Лабораторный БП PSL-3604

Сообщение Stopus »

Понял. Большое спасиба!
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

Вот фото:

Изображение Изображение
maxammm
Родился
Сообщения: 2
Зарегистрирован: Пн сен 15, 2014 22:13:30
Откуда: Таганрог

Re: Лабораторный БП PSL-3604

Сообщение maxammm »

Здравствуйте. Может не втему вопрос, не подскажите где можно заказать плату управления-ЦАП на блок питания Korad KA-3005D - умудрился спалить с дымком их спец контролер "KORAD 1 20140624". Или с других клонов таких БП UNIT, VELLEMAN PS3005P, zhoxin JPS3005d может посоветуте?
Аватара пользователя
МСВ
Нашел транзистор. Понюхал.
Сообщения: 175
Зарегистрирован: Чт апр 12, 2012 12:22:37
Откуда: Украина, Одесса

Re: Лабораторный БП PSL-3604

Сообщение МСВ »

Подскажите, пожалуйста кто-то назначение и номинал резистора R100? Что-то не могу найти его в схеме.
Никогда не говори никогда!
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

R100 - это нулевой резистор (перемычка), на схеме возле разъема XP4. В новой версии схемы не устанавливается, хотя, по идее, вреда от него тоже не будет.
Stopus
Открыл глаза
Сообщения: 70
Зарегистрирован: Вт авг 12, 2008 12:22:58
Откуда: Шишаки Полтавская обл

Re: Лабораторный БП PSL-3604

Сообщение Stopus »

Всем доброго здравия!
Пришло время запрограммировать контроллер, а я не могу разобраться, какой кабель использовать. Программа предлагает использовать COM порт. Подскажите распайку кабеля или мне искать программу для программирования через USB?
Аватара пользователя
morokot
Вымогатель припоя
Сообщения: 587
Зарегистрирован: Вт сен 13, 2011 13:29:09
Откуда: Крым, Симферополь

Re: Лабораторный БП PSL-3604

Сообщение morokot »

Когда Вы подключите БП к компу, установите драйвер для перехдодника на FT232, в системе появится новый COM-порт, вот через него и программируйте
Stopus
Открыл глаза
Сообщения: 70
Зарегистрирован: Вт авг 12, 2008 12:22:58
Откуда: Шишаки Полтавская обл

Re: Лабораторный БП PSL-3604

Сообщение Stopus »

Спасиба за подсказку! Буду пробовать.
Stopus
Открыл глаза
Сообщения: 70
Зарегистрирован: Вт авг 12, 2008 12:22:58
Откуда: Шишаки Полтавская обл

Re: Лабораторный БП PSL-3604

Сообщение Stopus »

Всем доброго здравия!
Снова обращаюсь за помощью. Скачал и установил программу Flash Loader Demonstrator, драйвер для ft232 - все встало как нада. COM порт программа сгенерила, подключаю переднюю панель нажимаю boot а отклика от процессора нет. Нужно ли подавать питание на лицевую панель (+5В) или она питается от usb? И можно ли первый раз залить прошивку через загрузщик или нет? Буду признателен за любую подсказку!
Заранее благодарен за помощ!
Аватара пользователя
Martin76
Друг Кота
Сообщения: 20176
Зарегистрирован: Пт фев 04, 2011 17:57:51
Откуда: Рыбинск

Re: Лабораторный БП PSL-3604

Сообщение Martin76 »

Stopus писал(а): Нужно ли подавать питание на лицевую панель (+5В) или она питается от usb?
Как через опторазвязку у Вас питание на панель с USB пройдет? Естественно нужно.
Аватара пользователя
imon220
Потрогал лапой паяльник
Сообщения: 326
Зарегистрирован: Сб июл 27, 2013 03:46:14
Откуда: Р Крым

Re: Лабораторный БП PSL-3604

Сообщение imon220 »

Пытался прошить ,но помойму что т не так.No response from the target .Я так понимаю нет связи с контролёром. Подал питания на плату 5в. лампочка на (питании пригосает) когда нажимаю boot то ещё сильнее тускнеет .на reset то светлеет. Получается мк срабатывает при нажатии на boot.
Я думаю не проще с Китая stm заказать.
Ocela
Прорезались зубы
Сообщения: 232
Зарегистрирован: Пн ноя 04, 2013 14:41:49

Re: Лабораторный БП PSL-3604

Сообщение Ocela »

imon220, попробуйте отдельно проверить виртуальный COM порт, используя заглушку и программу для проверки COM портов. Может он у Вас не работает.
ЗЫ Заглушка представляет из себя перемычку между 2 и 3 выводом XP2
Программа для проверки COM порта в прилагаемом файле (или аналогичная) Снимите все галочки под "Randomly Change"
При нажатии кнопки старт (без заглушки) по колонке IN отображаются входные импульсы, OUT пустой. После подключения заглушки в колонке OUT отображаются значения входа (только с задержкой) Если этого нет - COM порт не работает!
Изображение
Вложения
comstresstest122b1017.zip
(817.57 КБ) 261 скачивание
Ответить

Вернуться в «Питание»