Только начав работать со STM32, я использовал среду MDK и изучал библиотеку STD. Позже, отказавшись от D-версии, перешёл на EmBitz. В этой среде файлы библиотек копируются автоматически, что избавляет от необходимости ручной обработки и очень удобно. Однако эта среда EmBitz уже довольно старая, и её не обновляли несколько лет. Недавно я обнаружил, что STM32CubeIDE от STM неплох, и начал изучать эту среду. Освоить работу с программным обеспечением можно быстро, но основная сложность заключается в том, что раньше я работал только с библиотекой STD и не изучал HAL, поэтому все операции с аппаратным обеспечением для меня являются новыми методами, требующими изучения. Сейчас у меня есть время, чтобы записать процесс обучения, надеюсь, это поможет тем, кто, как и я, готовится к переходу на новую среду разработки или только начинает изучать HAL.
В эксперименте использовалась небольшая плата STM32F401CCU6 (19 юаней с доставкой), купленная на Taobao, для демонстрации управления жидкокристаллическим экраном COB 19264 (9,9 юаня с доставкой). Этот код был модифицирован из моего предыдущего кода для управления экраном в других средах аппаратного и программного обеспечения. Часть кода, связанная с отображением символов и графикой, была взята из сети, но из-за длительного времени я не могу точно определить источник. Я выражаю благодарность первоначальному автору.
Этот драйвер использует порт SP1, работает на скорости 42 Мбит/с и выделяет 1,5 КБ специальной памяти в ОЗУ. Таймер используется для генерации прерываний каждые 20 мс, чтобы использовать режим DMA для прямой передачи данных отображения из ОЗУ в SPI на аппаратном уровне. Кроме того, таймер 11 используется для управления светодиодом, который мигает один раз в секунду на выводе PC13.
Таким образом, особенности этого драйвера включают:
Поэтому основная характеристика этого драйвера — скорость! Если вы считаете, что частота обновления 50 Гц недостаточна, вы можете попробовать изменить параметры таймера для более быстрой работы, хотя я ещё не пробовал максимально возможную скорость.
Прошу прощения за возможные ошибки в процессе обучения.
Демонстрационное видео
https://v.youku.com/v_show/id_XNDY1MzcxOTUyNA==.html
Некоторые могут подумать, что в этом нет ничего особенного, но я повторно снял видео:
https://v.youku.com/v_show/id_XNDY1ODE4NDc4OA==.html
Полный исходный код проекта доступен для скачивания по следующим ссылкам: Gitee Github
Поскольку большинство любителей STM32 в Китае обычно используют MDK для разработки, если вы ранее не работали со средой STM32cubeIDE, прямое открытие этого проекта может привести к неудаче и повлиять на ваше настроение. Поэтому здесь я расскажу о шагах, которые помогут вам в будущем:
Если вы регулярно используете git, то это не будет проблемой. Вы можете просто использовать команду git clone для клонирования проекта на свой компьютер.
Если у вас нет установленного git, вы можете напрямую нажать «клонировать/скачать», а затем нажать «скачать ZIP» внизу. Это загрузит ZIP-файл, после его распаковки вы получите папку с проектом.
Откройте официальный сайт https://www.st.com/zh/development-tools/stm32cubeide.html и скачайте STM32CubeIDE. Для загрузки на официальном сайте требуется регистрация, но вы также можете найти другие источники для загрузки. После установки не буду вдаваться в подробности.
После клонирования проекта вы не сможете сразу открыть его в STM32CubeIDE, так как путь к вашему проекту отличается от пути автора. Необходимо импортировать проект перед использованием. Вот конкретные шаги:
* Откройте STM32CubeIDE после установки. Если есть обновления, позвольте программе обновиться самостоятельно. После установки программа готова к работе без дополнительных настроек. По мере освоения программы вы можете настроить её под свои потребности.
* После открытия программы вы увидите страницу приветствия, которая может быть закрыта ранее. Если она не открывается автоматически, вы можете нажать на значок «Information Center» (центр сообщений) в правом верхнем углу экрана, чтобы открыть эту страницу.
* Нажмите на средний из трёх синих блоков на странице приветствия — «Start new project from STM32CubeMX .ioc file». В появившемся окне нажмите «Browse...» справа и выберите каталог недавно клонированного проекта. Выберите файл .ioc и нажмите «Открыть», затем «Готово». После небольшой загрузки вы должны увидеть интерфейс с изображением выводов чипа.
* Здесь мы говорим о том, как импортировать этот проект, поэтому не будем подробно останавливаться на конкретных настройках. Просто нажмите на значок жёлтой шестерни («Device Configuration Tool Code Generation») на панели инструментов, дождитесь завершения загрузки и нажмите на синий значок MX слева от значка «C/C++» на панели инструментов. Слева появится менеджер проектов, где вы можете просматривать и компилировать код.
После импорта проекта в следующий раз вы сможете открывать его напрямую, без необходимости повторного импорта.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )