Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить

Компилятор для dsPIC33EP64GS502

Пн мар 25, 2019 00:19:29

Собственно вопрос о платности бесплатности и названии компилятора для серии dsPIC33EP64GS502. Отзовитесь кто работал с серией заточенной на цифровые источники питания. Очень хочется найти единомышленника русскоязычного. Фенкую заранее.

PS. Pickit3 есть отзывы? Кто в руках держал... :))

Re: Компилятор для dsPIC33EP64GS502

Пт мар 29, 2019 16:57:49

Нет слов... Вы как собираетесь работать с МК? Без даташита и референсных мануалов?
Вся 16 разрядная платформа Микрочипа программируется на Си посредством компилятора XC16. Есть бесплатная но с ограничениями оптимизации версия, есть триал на пару месяцев без ограничений, есть месячная лицензия, есть годовая.
Что касается цифровых источников питания, то почти любой dsPIC33 под него заточен. И ШИМы есть с наносекундным разрешением и кучей каналов и разные интерфейсы и быстрые АЦП об 12 разрядах...
С ПИКкит 3 тут только ленивый не работал.
https://www.microchip.com/design-centers/16-bit
https://www.microchip.com/mplab/mplab-x-ide
https://www.microchip.com/mplab/compilers
https://www.microchip.com/wwwproducts/e ... 3EP64GS502

Re: Компилятор для dsPIC33EP64GS502

Пт мар 29, 2019 21:31:29

2019_03_30_(03-08-04-62).jpg
(32.72 KiB) Скачиваний: 292
Давно сделал платы, собираюсь все-же доделать проект выпрямителя с ККМ. "Нет слов... Вы как собираетесь работать с МК? Без даташита и референсных мануалов?" а они что недоступны бесплатно?

P.S. Сильно благодарю Вас за подробный ответ.

Re: Компилятор для dsPIC33EP64GS502

Сб мар 30, 2019 04:40:46

Как раз они совершенно свободно доступны. И в них есть ответы на все поставленные Вами в первом сообщении вопросы. А так же эти ответы есть по месту дислокации этих документов.
Работу с любым МК любого производителя следует начинать с установки IDE. У Микрочипа это MPLAB X. Сама среда уже подскажет Вам при создании проекта все что требуется для этого проекта. Даже законнектит с сайтом производителя на предмет даташитов, референсных мануалов и аппнот.

Re: Компилятор для dsPIC33EP64GS502

Сб мар 30, 2019 06:11:44

А вот еще вопрос, сам я когда-то сподобился написать сносный ПИД регулятор в петле ШИМ на 40 Килогерц. Вы знакомы с исходниками библиотек для подобного под серию GS? Я читал статью Михаила., где утверждалось, что петля регулирования для токового режима ШИМ ПИД тянет что-то около 4,5 микросекунд применительно в вышеупомянутому процессору.

P.S. Был случай, когда неосторожное подключение в петля обратной связи аналогового ШИМ привело к перегоранию силовой части. Можно ли на (надеюсь) что в цифровой петле регулирования можно будет детектировать подобные ситуации. Т.е. необычный ("сказочный") сигнал с датчиков обратной связи, как думаете КПАМ?

P.P.S вот ссылка на мои опыты. http://forum.easyelectronics.ru/viewtop ... 10&t=20068

Re: Компилятор для dsPIC33EP64GS502

Сб мар 30, 2019 11:19:43

Вы знакомы с исходниками библиотек для подобного под серию GS?

Никак не могу понять Вашу методику работы...
:facepalm:
Вы бы ознакомились с документацией на целевой контроллер на странице этого контроллера... Очень вероятно, что у Вас исчезнут вопросы.
С чего вы взяли, что Вы сумеете найти человека погруженного не просто в Вашу проблему, а конкретно в ее реализацию на dsPIC33E?
Подобные вещи можно найти только в аппнотах производителя МК.
Ищите на сайте Микрочипа и не под этот МК конкретно, а вообще реализацию.

Re: Компилятор для dsPIC33EP64GS502

Сб мар 30, 2019 13:54:07

Да я ознакомился с документацией на микроконтроллер. Но с аппноты пока читал слишком поверхностно, вот, ежели бы аппноуты представляли собой в определенной степени примеры полузаконченных проектов...

Re: Компилятор для dsPIC33EP64GS502

Сб мар 30, 2019 14:58:08

Собственно что Вы хотите увидеть в таком проекте?
Инициализация ШИМ - есть в даташите и референсном мануале.
Расчет параметров цифрового фильтра в петле - это общетехническое мероприятие.
Расчет коэффициентов FIR можно сделать либо в матлабе, либо в интернете: http://t-filter.engineerjs.com
Сам фильтр для dsPIC придется написать в виде АСМ вставки, поскольку DSP ядро этой платформы не является нативным (два 40-разрядных аккумулятора и 16-битные входные переменные). Тип представления чисел - integer и fix point fractional (unsigned/signed).
Собственно код фильтра - это типовые 4 инструкции из которых одна повторяется N раз. где N - длина фильтра.
Для двухканального фильтра инструкций будет 7 и из них повторяться будут 2.
Все инструкции в фильтре исполняются за 1 машинный цикл. То есть, например, для dsPIC33E с тактированием ядра 70 МГц (70 МИПС) одноканальный фильтр длиной 256 отсчетов будет считаться за 3,67 мкс. Сиречь реально обработать сигнал с дискретизацией примерно 100...130 кГц с учетом всех накладных расходов по обмену с внешними устройствами и обеспечением работы всей периферии. Это все в режиме реального времени и без децимации.
Я не думаю, что для источника питания потребуется такая скорость... Это не векторное управление асинхронным двигателем с расчетом синусов фаз в реальном времени.

Re: Компилятор для dsPIC33EP64GS502

Пн апр 01, 2019 04:30:42

Доступно вы объясняете, спасибо;). Признаюсь, в теоретических основах я плаваю плохо, тону часто. Есть ли какая "Моногорафия" для случая, когда, как Вы справедливо заметили, "DSP ядро этой платформы не является нативным"? Очень хочу начать понимать на кончиках пальцев, не учился этому раньше ибо возраст.

Re: Компилятор для dsPIC33EP64GS502

Пн апр 01, 2019 07:34:43

Чтобы мне не повторяться, почитайте эту тему:
https://radiokot.ru/forum/viewtopic.php?f=58&t=159905
Будут вопросы - обращайтесь. Можно в ту тему, можно в эту, можно в личку.
По теории цифровой обработки сигналов есть много литературы разного порога входа.
Но в целом математику желательно хоть как то знать. Я имею ввиду матанализ и аналитическую геометрию. Иначе информация будет очень поверхностная на уровне шаблонов.
ЗЫ. Не думаю, что Ваш возраст может быть аргументом. Мне в сентябре будет 60... :wink:

Re: Компилятор для dsPIC33EP64GS502

Пн апр 01, 2019 16:45:45

Поставил IDE и компилятор и, не найду ни одной библиотеки. Инклюд только для ASM? Это особенность бесплатной версии компилятора?

Добавлено after 6 minutes 59 seconds:
Я чего-то не пойму, Free XC16 это только ассемблер что-ли?

Re: Компилятор для dsPIC33EP64GS502

Пн апр 01, 2019 16:56:48

Причем тут ассемблер? И причем тут библиотеки?
Сам по себе компилятор XC16 ПРИ ЕГО УСТАНОВКЕ (он устанавливается ПОСЛЕ установки среды) спрашивает о потребной пользователю версии, предлагая на выбор свободную, триал и про-версию (для последней нужно ввести оплаченный ключ).
Сам по себе ассемблер ASM16 будет доступен ПОСЛЕ установки компилятора ЛЮБОЙ ВЕРСИИ. Строго говоря, отдельного ассемблера типа 8 битного MPASM, поставляемого вместе со средой нет. То есть при создании проекта нужно выбрать сам XC16 и все. А что будет использовано в проекте определяется расширением исходника. s-файлы - это АСМ исходники, с-файлы - Си исходники.
Библиотеки - это отдельная история. Читайте мануал на компилятор.
Хедеры в папке Саппорт есть и для Си (h-файлы) И для АСМ (inc - файлы). И таки да, не все библиотеки доступны в свободной версии.
А собственно вопрос. А какие Вам нужны библиотеки? Есть папка инклюдов - в ней пара десятков хедеров.
Есть папка библиотек, включая dsp. Что из них доступно для free я не знаю. Встроенными библиотеками не пользуюсь.
Вам мало?
Для сигнального контроллера этой архитектуры никаких особых библиотек типа математики и ввода/вывода типа функций printf не требуется. Иначе от скорости ничего не останется.

Re: Компилятор для dsPIC33EP64GS502

Пн апр 01, 2019 23:24:49

Спасибо, устал, к вечеру соображать плохо стал. Ожидал увидеть списки библиотек в IDE, а не просто диалог выбора файла. И, при таком весе IDE, мечтал увидеть визарды на все случаи.

Re: Компилятор для dsPIC33EP64GS502

Вт апр 02, 2019 03:13:26

Несколько инфантильный взгляд на ремесло.
Для собственно библиотек имеется MLA. Это и есть Microchip Library Applications на все случаи.
Последний раз редактировалось КРАМ Вт апр 02, 2019 07:35:07, всего редактировалось 1 раз.

Re: Компилятор для dsPIC33EP64GS502

Вт апр 02, 2019 04:37:25

Ну почему-же, C# уже допустил кириллические имена переменных. И, вообще, одно другому не мешает. За примерами далеко ходить не надо. STM32CubeMX и, может быть, так всех привлекает, согласитесь, ведь не мешает не отменяет, чему тоже есть примеры (мешает или отменяет прежнее).

P.S. Да, я не практик ремесла, скорее философ. И, часто обманываюсь с реальностью.

Добавлено after 14 minutes 20 seconds:
P.P.S. Жду гипертекстовых исходников, совмещенных с энциклопедией языка, приемов, примеров, для людей c маленькой оперативной памятью, как у меня. Я не думаю, что такие хотелки, увеличивают размер нативного кода, что Вы, интуитивно ожидаете, кивая на практику больших систем.
Вот CCS 3.3 от TI я слушал,, критикуют за это (инфантилизм) "а он мне нравиться, нравиться, нравиться и для меня... с рыбой, конечно, и копипастой :)) Кстати, все хотелки я там CCS 3,3 уже, реализовал. Сделал AC-DC заменив TL494 в Комп. БП на плату OLIMEX TMS320F28016... Хочу переехать на dsPIC33epgs не знаю зачем :shock:

PIC_0016.JPG
(32.54 KiB) Скачиваний: 342
PIC_0015.JPG
(32.22 KiB) Скачиваний: 444
PIC_0014.JPG
(28.54 KiB) Скачиваний: 453
PIC_0012.JPG
(19.13 KiB) Скачиваний: 448
PIC_0010.JPG
(12.3 KiB) Скачиваний: 454
PIC_0010.JPG
(12.3 KiB) Скачиваний: 454

Re: Компилятор для dsPIC33EP64GS502

Вт апр 02, 2019 07:10:27

Мне не слишком понятны ожидания программистов во встраиваемых приложениях радиотехники. Я вижу только наивные желания получить простые кубики из которых можно собрать что то серьезное. Но бесплатный хавчик бывает только в мышеловке.
Производителя не интересуют любители с малым объемом оперативной памяти. Производитель хоть и делает легкие реверансы в сторону дилетантов, выпуская достаточно неуклюжие конфигураторы, но это никак не влияет на результат.
Либо капуста абстракций и МК с кратным запасом по производительности и ресурсам, либо самостоятельная работа по проектированию драйверов и математики и легкие и изящные решения.

Re: Компилятор для dsPIC33EP64GS502

Вт апр 02, 2019 07:28:57

Мне не слишком понятны ожидания программистов во встраиваемых приложениях радиотехники. Я вижу только наивные желания получить простые кубики из которых можно собрать что то серьезное. Но бесплатный хавчик бывает только в мышеловке.

Я не про кубики, алгоритм ПИД регулятора на 40 кгц с ШИМ. для 8-разрядного ATmel сделал сам и, он не имеет ничего общего с фирменным аппноутом, у меня там вообще пустая функция MAIN() while (1) |outport;
Все на прерываниях а вышеупомянутый кусок показывает на осциллографе т.н. Iddle.

P.S. То-есть я реализовал AC-DC на Atmel mega 16 разогнав его до 20 Мгц. Даже одновременно успевает MODBUS 38400, и переходная характеристика лучше чем TL469. (Ц.Осцил показал) Вот так как-то 8)

Re: Компилятор для dsPIC33EP64GS502

Вт апр 02, 2019 07:47:17

Я не про кубики, алгоритм ПИД регулятора на 40 кгц с ШИМ. для 8-разрядного ATmel сделал сам

Алгоритм ПИД регулятора - это тривиальная ОБЩАЯ математика главного цикла. Это собственно самая простая часть работы.
Прежде нужно выстроить диаграмму работы, то есть написать драйверы. Причем так написать, чтобы потом не чесать репу по поводу обрабатываемого массива сигнала.
И сам общий алгоритм реализуется на математических примитивах, которые тоже могут занимать разное время, в зависимости от качества этих примитивов.
Зачем Си Шарп для AC-DC? Какие такие сущности подобного устройства Вы собрались облечь в формы ООП? Зачем нужны подобные перверзии разума?

Добавлено after 4 minutes 7 seconds:
у меня там вообще пустая функция MAIN() while (1) |outport;
Все на прерываниях а вышеупомянутый кусок показывает на осциллографе т.н. Iddle.

Вы полагаете это достоинством? :)

Re: Компилятор для dsPIC33EP64GS502

Вс май 19, 2019 05:34:07

Ага, полагаю это достоинство, очень удобно осциллографом посмотреть сколько процессорного времени не использовано (т.н. Iddle который делает |=port (светодиод)).

Re: Компилятор для dsPIC33EP64GS502

Вс май 19, 2019 09:22:18

Очень весело...
Фсе функции загнать в обработчики ТОЛЬКО ДЛЯ ТОГО, чтобы смотреть ресурсы ногодрыгом...
:)))
Ответить