Skip to content

mdr32/examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Примеры работы с микроконтроллером MDR32F9Q2I (K1986BE92QI)

Текущий проект направлен на демонстрацию примеров работы с микроконтроллером MDR32F9Q2I (K1986BE92QI).

В примерах используются библиотеки (местами даже в "перемешку") CMSIS для ядера CorteM3, SPL_MDR32 и LOCM3 (последняя является имитацией под Libopencm3, подробнее о ней будет ниже).

Debug

Для удобства удобства отладки программы, в проект добавлены:

  • *.SVD-файл для отладки в среде разработки с возможностью использования точек-остановы;
  • адаптированая для IDE VSCode в связке с плагином Cortex-Debug библиотека SEGGER-RTT (Real Time Transfer for embedded targets), позволяющая осуществлять сообщения от МК в консоль среды отладки посредством протокола Serial Wire Debug (SWD) (см. подробнее в /lib/Debug).

LOCM3

Данная библиотека не является полноценным продуктом и не стремится реализовать полноценную поддержку библиотеки в составе Libopencm3 для MDR32. Она создана только с целью демонстрации упрощенного понимания примеров работы с микроконтроллером MDR32.

В текущей виде поддерживается только микроконтроллер MDR32F9Q2I (K1986BE92QI)

За основу библиотеки была взята библиотека Libopencm3 из-за своей простоты синтаксиса и функционального подхода (что по нашему мнению, является ниболее удобным подходом для освоения возможностей МК на примерах).

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

При прочтении исходного кода рекомендуется обращать внимание, на комментарии, так как там есть ряд заметок, которые указывают на различия в использовании api библиотеки с учетом на индивидуальность MDR32. При этом, сохранение их бизнес-цели было максимально приближено к оригиналу.

Также, состав api-методов, поддерживающих переферию, в текущей библиотеке пополняется по мере использования этой самой переферии в примерах текущего проекта.

Если вы имеете возможность дополнить библиотеку новыми методами поддержки переферии, то приглашаем поучаствовать в развитии библиотеки для MDR32.

Releases

No releases published

Packages

 
 
 

Contributors

Languages