Например TDA7294

Форум РадиоКот • Просмотр темы - Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC33)
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пт июл 25, 2025 23:19:12

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 90 ]    , , , 4,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Сб июн 22, 2024 17:09:52 
Держит паяльник хвостом

Карма: 1
Рейтинг сообщений: 214
Зарегистрирован: Сб сен 12, 2009 15:43:19
Сообщений: 978
Рейтинг сообщения: 0
КРАМ, вы тут похоже самый большой специалист по dspic. Посоветуйте, возникла необходимость поковыряться в импульсном блоке питания, который управляется dspic33. Что то по мотивам
https://www.microchip.com/en-us/develop ... nce-design который 750W AC/DC REFERENCE DESIGN AN-2388 но на сайте так не находится.
Подскажите, как лучше отлаживать такое устройство, чтобы не устроить большой бабадум при остановке управления инвертором дебаггером? Это все таки резонансник, там частота должна меняться в цикле управления, нельзя оставить просто таймер шимить транзисторы.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Сб июн 22, 2024 18:28:52 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Подскажите, как

С этим имеются некоторые проблемы.
К сожалению, ни PICkit4, ни ICD4 не сканируют контроллер на лету, в отличии от JTAG. Подключение JTAG в dsPIC33 возможно не всегда (значительная часть эррат не дает такой возможности вообще, а даже если это возможно, не факт, что ноги под JTAG будут свободны в конкретной схеме и эти ноги никогда не ремапируются, в отличии от ног ICSP.
Но в настройках периферии можно указать, чтобы периферия не останавливалась во время останова при отладке. Однако, как правило, алгоритмы управления периферией таковы, что проку от продолжения работы периферии нет никакой. Например, остановка кода приводит к остановке DMA, который грузит PWM.
Из всего этого следует, что такие как у вас критические ко времени приложения нужно отлаживать через UART и ногодрыг. Впрочем, JTAG тоже частенько не позволяет получать данные в реальном времени, поскольку сканирование происходит достаточно медленно и асинхронно исполняемому коду.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Сб июн 22, 2024 19:05:20 
Держит паяльник хвостом

Карма: 1
Рейтинг сообщений: 214
Зарегистрирован: Сб сен 12, 2009 15:43:19
Сообщений: 978
Рейтинг сообщения: 0
Спасибо за инфо, хотя и не очень радостное. Хотелось для набора опыта поковыряться с серверными блоками питания от HP. Вот на гитхабе есть собрание прошивок для таких блоков
https://github.com/darwinbeing/HPServerPSUHack и частично схемы модернизации обратной связи для настройки напряжений. Но есть желание именно в алгоритмах управления на живом железе потренироваться. Большинство конструкций на DSPIC33FJ64GS608
Может кому будет полезно.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 16:28:40 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
КРАМ, до этого сообщения изложение было просто отличное. Однако дальше обсуждение ушло в сторону. Но данная тема очень нужная и интересная. Не многие в неё пишут, но многие читают. Поэтому хотелось бы чтобы тема вернулась на первоначальные рельсы и стала помощницей тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC33).
Заранее прошу извинение за возможно глупые вопросы с моей стороны, т.к. я не являюсь специалистом по микроконтроллерам и программированию. Но эта тема мне глубоко интересна.
И так, в указанном выше ссылкой сообщении мы добрались до отладки демонстрационного фрагмента программы. К сожалению, в моем случае, кнопки отладки остались неактивными. Бегунок в нижней части окна бегает, а кнопочки серенькие. :(
Вложение:
screenshot1.jpg [6.57 KiB]
Скачиваний: 24

В качестве Connected Hardware Tool (правый клик по названию проекта во вкладке Projects -> Properties) выбран Simulator. Полагаю, что это программный симулятор контроллера.
Подскажите, как можно запустить программную отладку :o


Последний раз редактировалось eleks Вс май 04, 2025 16:42:22, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 16:33:00 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Для начала скиньте мне весь проект as is - просто заархивированной папкой.
Скинуть можно сюда или мне на почту my504@mail.ru


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 16:56:11 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Скинул тестовый проект на почту


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 17:26:27 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Принял. Разберусь - напишу.

Добавлено after 20 minutes 57 seconds:
Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC33)
Не увидел проблем.
За исключением выбора версии компилятора и соответствующей версии pack.
Для XC16 v2.00 валиден dsPIC33E-GM-GP-MC-GU-MU_DFP v 1.5.258

Изображение Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 17:54:15 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Не увидел проблем.
За исключением выбора версии компилятора и соответствующей версии pack.
Для XC16 v2.00 валиден dsPIC33E-GM-GP-MC-GU-MU_DFP v 1.5.258

У меня установлены последние версии, представленные на сайте MicroChip на данный момент.
Изображение
После запуска отладки проекта
Изображение
Не возможно перейти в режим пошаговой отладки
Изображение

:roll:


Вложения:
screenshot3.jpg [160.2 KiB]
Скачиваний: 20
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 18:04:40 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Сверяем опции настройки среды - они с проектом не переносятся:
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 18:26:05 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Различия были
Изображение
Все привел в соответствие.
Изображение
Однако лучше от этого не стало :(


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 18:35:15 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Есть предложение откатить среду и компилятор на мои версии.
Я пока подумаю.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 18:48:36 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Да, уже занимаюсь этим.
Только не вижу, где взять старые версии компилятора.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 18:59:03 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
на сайте микрочипа есть раздел архив.
Сейчас включу впн и найду

https://www.microchip.com/en-us/tools-r ... -ecosystem


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 21:16:27 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Благодарю за потраченное на меня время. К сожалению, ничего не получилось. После переустановки имею такую же картину :(
Завтра попробую повторить все под Linux на другой машине.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 21:16:57 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 1
Внезапно вопрос.
А нет ли в путях к проекту и исходникам кириллицы?
Это харам. :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Вс май 04, 2025 22:47:43 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Внезапно вопрос.
А нет ли в путях к проекту и исходникам кириллицы?
Это харам. :)

И, о чудо! :shock:
Всё заработало! :music:

Добавлено after 22 minutes 28 seconds:
Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC33)
Речь будет идти для тех, кто желает разобраться в архитектуре 16-разрядной платформы и начать писать простые программы на АСМе этой платформы.

Было бы прекрасно, если бы Вы продолжили речь в данном направлении. Думаю, что ассемблер очень полезен, по крайней мере, для написания отдельных процедур, если к ним предъявляются высокие требования по быстродействию. Это особенно актуально для источников питания. И вообще на ассемблере, после некоторой тренировки, не очень трудно писать :) .
dsPIC33F имеет относительно сложную структуру памяти и поэтому хотелось бы начать с объявления констант и переменных для различных областей памяти. Получения адресов этих констант и переменных для использования в программном коде. Использование стека для передачи данных и констант, использование адресации по модулю, бит-реверсивной адресации...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Пн май 05, 2025 01:05:33 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Не, у dsPIC-ов как раз очень простая в понимании архитектура. Именно поэтому на них целесообразно писать на АСМе, в отличии от АРМов, например.
Но вы лучше объясните свою конкретную цель и тогда на ее примере я расскажу, в том числе, и о работе двухканальной памяти с AGU.
ЗЫ. Бит-реверсивная адресация - это для БПФ. Тут как раз все очень однозначно. Особо рассказывать не о чем. Скорее вам нужно прочитать про БПФ. Просто с нуля можно рассказать, но тема разбухнет.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Пн май 05, 2025 11:22:15 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Не уверен, является ли моя задача типовой.
До этого, для программирования PIC-ов, всегда использовал компилятор MikroC. В принципе хороший и не сложный компилятор. Как раз для тех, кто занимается программированием эпизодически. В последнее время больше для самообразования. В основном вожусь с источниками питания. Раньше использовал в них контроллеры, но в основном для сервисных функций. Однако всегда хотелось сделать полностью дискретное управление. На сайте MicroChip есть, казалось бы, подходящие аппноты, но для меня они не подходят. И DSP ядро там практически не используется. Поэтому решил идти по классике - разрабатываю корректор (регулятор) в линейной области, затем создаю дискретную форму и переношу её на dsPIC. Покопался в DSP библиотеке MikroC for dsPIC и выбрал там наиболее подходящую, как мне кажется, функцию реализации фильтра IIR_Radix. В примерах имеется демонстрационный код использования этой функции. Однако, существует несколько не понятных параметров функции, а также существуют некоторые сомнения по её пригодности. Поэтому решил заглянуть внутрь. И вот тут понадобился отладчик на уровне ассемблера, чтобы точно отслеживать поведение кода. Решил создать проект в MPLAB X IDE, обнаружил там отсутствие возможности создавать проект на ассемблере и вот теперь мы здесь.
Сейчас стоит задача адаптировать листинг от MikroC под XC16 ассемблер и приступить к изучению.
Архив с соответствующими файлами от MikroC прилагаю.
К сожалению, для полноценной отладки эти файлы не подходят. Необходимо довести их до полноценной программы. Причем надо использовать именно lst файл, т.к. asm версию компилятор почему-то укоротил и она не совсем соответствует прототипу на Си.

Бит-реверсивной адресации тут конечно нет, но адресация по модулю и использование стека для передачи данных имеют место.


Вложения:
Комментарий к файлу: Архив с файлами от MikroC
IirFilter.zip [13.27 KiB]
Скачиваний: 26
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Пн май 05, 2025 11:40:25 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23911
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Я ничего не говорил про типичность вашей задачи. Я имел ввиду типичную математику применяемую в ваших задачах.
Но ваш ответ уже позволяет мне его прокомментировать.
Дело в том, что архитектура DSP ядра подразумевает реализацию КИХ (FIR) фильтров, а не БИХ (IIR). Проблема в том, что все IIR принципиально требуют либо float-ов, либо фикспойнтов и всегда рекурсивной топологии. Рекурсивность противоречит архитектуре DSP в этом семействе. А флоаты аппаратно вообще не реализованы.
Поэтому для конструктивного решения этой проблемы вам нужно переделать проект на FIR, прежде всего.

Добавлено after 4 minutes 18 seconds:
адресация по модулю и использование стека для передачи данных имеют место.

Адресация по модулю применяется для обработки массивов. Причем тут IIR?
Передача данных через стек - это тупо реализация локальных переменных с помощью аппаратного механизма выделения фрейма в стеке для локальных переменных. Дело тут не в самой передаче, а именно в использовании стека для локальных переменных. Передача тут вторична.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Тем, кто боится перейти с 8 на 16 разрядов (PIC24/dsPIC3
СообщениеДобавлено: Пн май 05, 2025 12:40:53 
Родился

Зарегистрирован: Ср мар 26, 2014 16:20:34
Сообщений: 18
Рейтинг сообщения: 0
Дело в том, что архитектура DSP ядра подразумевает реализацию КИХ (FIR) фильтров, а не БИХ (IIR). Проблема в том, что все IIR принципиально требуют либо float-ов, либо фикспойнтов и всегда рекурсивной топологии. Рекурсивность противоречит архитектуре DSP в этом семействе. А флоаты аппаратно вообще не реализованы.
Поэтому для конструктивного решения этой проблемы вам нужно переделать проект на FIR, прежде всего.

Так и есть. С фиксированной точкой и двойное использование FIR на общий сумматор для получения рекурсии.
Ни кто не говорил, что будет просто.
Адресация по модулю применяется для обработки массивов. Причем тут IIR?

Разумеется, к IIR адресация не имеет прямого отношения, но в данном случае имеет место.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 90 ]    , , , 4,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y