Search
Write a publication
Pull to refresh
19
0
Send message

Запуск DMA на К1986ВЕ92FI пошагово

Level of difficultyMedium
Reading time8 min
Views7.2K

Здравствуйте уважаемые читатели. Больше двух лет назад Миландр, в связи с санкциями, попал в "блэк-лист" завода, производившего кристаллы разработанных микросхем. После этого поставки микросхем быстро сошли на нет, в том числе "народного" К1986ВЕ92QI в пластиковом корпусе. Больше года Миландр не подавал признаков жизни, однако работа кипела, кристалл 1986ВЕ9х был перепроектирован, год назад появились опытные образцы. Производство кристаллов осталось зарубежным (Микрон не умеет делать флеш), однако корпусировку гражданских кристаллов развернули в России. Поскольку, производственных мощностей для корпусирования в QFP у Миландра нет, кристаллы стали паковать в QFN, которые не требуют опрессовки кристалла пластмассой. А к лету 2024 Миландр начал серийные поставки микросхем. Итак, гражданский микроконтроллер теперь обозначается К1986ВЕ92FI, и его можно достать, а значит с ним снова можно работать.

Вопросы программирования микроконтроллеров 1986ВЕ92 многократно описаны, пути обхода ошибок давно изучены, как говорили знакомые инженеры ещё в 2017 - "нормальный арм, хоть и с особенностями". Однако, несмотря на описание периферии и особенностей работы с ней, есть одно почти белое пятно, на котором многие спотыкаются - контроллер DMA прямого доступа к памяти.

Разбираемся с контроллером ПДП

Измерение положения ротора СКВТ с помощью микроконтроллера K1986BE92QI

Reading time21 min
Views16K

Здравствуйте, уважаемые читатели! Сегодня я расскажу вам об интересном эксперименте - измерении угла положения синус-косинусного вращающегося трансформатора с помощью микроконтроллера K1986BE92QI фирмы Миландр без применения каких-либо специализированных микросхем-контроллеров СКВТ!

Недавно мне на глаза попалось техническое описание советского комплектного электропривода "Размер-2М". Конструктивно это был самый настоящий сервопривод! В качестве датчиков обратной связи на двигателях шпинделя и подач были установлены синус-косинусные вращающиеся трансформаторы (СКВТ), или по-другому, резольверы. С помощью СКВТ помимо фактической скорости вращения определялся фактический угол поворота ротора и эмулировались сигналы инкрементальных энкодеров - двухфазные импульсы для передачи информации о перемещения в УЧПУ станка. Разрешающая способность была равна 10000 дискрет на один оборот ротора. При шаге винта в 10мм это означало что одна дискрета равна одному микрону - и всё это уже было в начале 1980-х! А у меня как нельзя кстати завалялся трофейный советский СКВТ ФВ67-12-008 от "Размера", доставшийся мне на опыты. И мне стало интересно, а как же в "Размере" определялось положение ротора СКВТ? Оказывается, конструкторы "Размера" применили довольно простой фазовый метод. Недолго думая, я решил воспроизвести "Размеровский" измеритель положения СКВТ в лабораторных условиях. Изначально вся затея с СКВТ была чистым экспериментом, который неожиданно дал хорошие результаты и вылился в небольшое исследование по повышению производительности программного кода для микроконтроллеров с ядром ARM Cortex-M3.

Читать далее

Information

Rating
Does not participate
Registered
Activity