Плата управления BLDC на микроконтроллере К1946ВК035😊
Потихоньку начинает подавать первые признаки жизни. Я пока собрал только часть вокруг микроконтроллера и написал инициализацию ШИМ.
Микроконтроллер К1946ВК035 позволяет управлять трехфазной ШИМ с комплементарными каналами и аппаратным защитным временным интервалом (dead-time). В показанных сигналах ШИМ на частоте 16кГц и dead-time 500нс.
Микроконтроллерное ядро может работать на частоте до 100МГц, собственно у меня оно так и работает. По структуре же это аналог LM4F132 семейства Stellaris (Texas Instruments), эта серия МК сейчас уже стала "Tiva C Series".
И К1946ВК035 и LM4F132 это микроконтроллеры на ARM Cortex-M4F ядрах и в этом плане хочется нарисовать равенство между ними и STM32F4xx, но это будет неточно.
Как только дело доходит до работы с периферией, в частности с ШИМ, окажется, что она устроена существенно иначе.
В STM32 каналы ШИМ жестоко привязаны к своим таймерам. В задачах электропривода используются таймеры TIM1,8,20 (16bit advanced timers), в ВК035 эти функции выполняют "ШИМ блоки", это по сути отдельные 16-битные таймеры с 2-мя выходами, которые можно связывать общей синхронизацией.
То есть для 3-х фазной ШИМ я синхронизирую вместе три ШИМ-блока.
Это интересный подход, придуманный Texas Instruments и, вероятно, такая же структура управления ШИМ сохраниться и в новых МК от НИИЭТ на RISC-V ядрах.
Я выложил текущее состояние проекта тут: https://github.com/TDMLab/K1946VK035_BLDC_BOARD/tree/main
Моя основная работа по коду сейчас лежит в файле PWM_Control.с
Я собрал это из примеров НИИЭТ и НПФ Вектор.
Потихоньку начинает подавать первые признаки жизни. Я пока собрал только часть вокруг микроконтроллера и написал инициализацию ШИМ.
Микроконтроллер К1946ВК035 позволяет управлять трехфазной ШИМ с комплементарными каналами и аппаратным защитным временным интервалом (dead-time). В показанных сигналах ШИМ на частоте 16кГц и dead-time 500нс.
Микроконтроллерное ядро может работать на частоте до 100МГц, собственно у меня оно так и работает. По структуре же это аналог LM4F132 семейства Stellaris (Texas Instruments), эта серия МК сейчас уже стала "Tiva C Series".
И К1946ВК035 и LM4F132 это микроконтроллеры на ARM Cortex-M4F ядрах и в этом плане хочется нарисовать равенство между ними и STM32F4xx, но это будет неточно.
Как только дело доходит до работы с периферией, в частности с ШИМ, окажется, что она устроена существенно иначе.
В STM32 каналы ШИМ жестоко привязаны к своим таймерам. В задачах электропривода используются таймеры TIM1,8,20 (16bit advanced timers), в ВК035 эти функции выполняют "ШИМ блоки", это по сути отдельные 16-битные таймеры с 2-мя выходами, которые можно связывать общей синхронизацией.
То есть для 3-х фазной ШИМ я синхронизирую вместе три ШИМ-блока.
Это интересный подход, придуманный Texas Instruments и, вероятно, такая же структура управления ШИМ сохраниться и в новых МК от НИИЭТ на RISC-V ядрах.
Я выложил текущее состояние проекта тут: https://github.com/TDMLab/K1946VK035_BLDC_BOARD/tree/main
Моя основная работа по коду сейчас лежит в файле PWM_Control.с
Я собрал это из примеров НИИЭТ и НПФ Вектор.