Съдържание:

Настройка на синя дъска за хапчета в STM32CubeIDE: 8 стъпки
Настройка на синя дъска за хапчета в STM32CubeIDE: 8 стъпки

Видео: Настройка на синя дъска за хапчета в STM32CubeIDE: 8 стъпки

Видео: Настройка на синя дъска за хапчета в STM32CubeIDE: 8 стъпки
Видео: Подключаем дисплей ST7735 к STM32 2024, Ноември
Anonim
Настройване на Blue Pill Board в STM32CubeIDE
Настройване на Blue Pill Board в STM32CubeIDE
Настройване на Blue Pill Board в STM32CubeIDE
Настройване на Blue Pill Board в STM32CubeIDE

Синьото хапче е много евтина дъска за разработка на ARM с голи кости. Той има STM32F103C8 като свой процесор, който има 64 kbytes флаш и 20 kbytes RAM памет. Той работи до 72 MHz и е най -евтиният начин да влезете в разработката на ARM вграден софтуер.

Повечето примерни проекти и как да опишат програмирането на дъската Blue Pill, използвайки средата Auduino. Въпреки че това работи и е начин да започнете, той има своите ограничения. Средата Arduino ви предпазва малко от основния хардуер - това е неговата цел на дизайна. Поради това няма да можете да се възползвате от всички функции, които процесорът предлага, а интегрирането на операционна система в реално време не се поддържа наистина. Това означава, че средата Arduino не се използва широко в промишлеността. Ако искате да направите кариера в разработката на вграден софтуер, Arduino е добро начално място, но трябва да продължите напред и да използвате среда за разработка, която се използва индустриално. ST услужливо предоставя напълно безплатен пакет за среда за разработка за техните процесори, наречен STM32CubeIDE. Това се използва широко в промишлеността, така че е добре да преминете към него.

Въпреки това и това е голямото, STM32CubeIDE е ужасно сложен и е обезсърчаващо софтуерно приложение. Той поддържа всички функции на всички процесори на ST и им позволява да бъдат конфигурирани отблизо, което не срещате в Arduino IDE, защото всичко е направено за вас.

Трябва да настроите дъската си като първа стъпка в STM32CubeIDE. IDE знае за собствените дъски за разработка на ST и ги настройва за вас, но Blue Pill, докато използва ST процесор, не е ST продукт, така че тук сте сами.

Тази инструкция ви води през процеса на настройка на вашата дъска Blue Pill, активиране на сериен порт и изписване на текст. Не е много, но е важна първа стъпка.

Консумативи

STM32CubeIDE - изтеглете от уебсайта на ST. Трябва да се регистрирате и изтеглянето отнема известно време.

Дъска със сини хапчета. Можете да ги вземете от ebay. Имате нужда от такъв, който има истински ST процесор, както някои нямат. В ebay увеличете картината и потърсете логото ST на процесора.

Отстраняващ грешка ST-LINK v2/програмист, наличен от ebay за няколко паунда.

FTDI TTL към USB 3.3V сериен кабел за изход и 2 мъжки към женски заглавни кабела за свързването му.

Програма за сериен терминал като PuTTY.

Стъпка 1: Създаване на нов проект

Създаване на нов проект
Създаване на нов проект
Създаване на нов проект
Създаване на нов проект
  1. Стартирайте STM32CubeIDE и след това от менюто изберете File | New | STM32 Project.
  2. В полето за търсене на номер на част въведете STM32F103C8.
  3. В списъка на MCU/MPU трябва да видите STM32F103C8. Изберете този ред както на изображението по -горе.
  4. Щракнете върху Напред.
  5. В диалоговия прозорец Настройка на проекта ви дава име на проекта.
  6. Оставете всичко останало както е и щракнете върху Готово. Вашият проект ще се появи вляво в прозореца на Project Explorer.

Стъпка 2: Конфигуриране на процесора

Конфигуриране на процесора
Конфигуриране на процесора
Конфигуриране на процесора
Конфигуриране на процесора
Конфигуриране на процесора
Конфигуриране на процесора
Конфигуриране на процесора
Конфигуриране на процесора
  1. В прозореца на Project Explorer отворете вашия проект и щракнете двукратно върху.ioc файла.
  2. В раздела Проект и конфигурация разгънете System Core, след което изберете SYS.
  3. Под SYS Mode and Configuration в падащото меню Debug изберете Serial Wire.
  4. Сега изберете RCC в списъка System Core точно над SYS, който сте избрали по -горе.
  5. Под RCC Mode & Configuration от падащото меню High Speed Clock (HSE) изберете Crystal/Ceramic Resonator.
  6. Сега под Категории отново отворете Свързване и изберете USART2.
  7. Под USART2 Mode и Configuration от падащото меню Mode изберете Asynchronous.
  8. Сега изберете раздела Конфигурация на часовника и преминете към следващата стъпка.

Стъпка 3: Конфигуриране на часовниците

Конфигуриране на часовниците
Конфигуриране на часовниците

Сега можете да видите доста обезсърчаваща диаграма на часовника, но тя се нуждае от настройка само веднъж. Това е най -трудно да се опише тук, тъй като диаграмата е сложна. Всички неща, които трябва да промените, са подчертани на изображението по -горе.

  1. Платката Blue Pill се предлага с 8 MHz кристал на дъската и това е диаграмата на конфигурацията на часовника по подразбиране, така че не е нужно да променяме това.
  2. Под PLL Source Mux изберете долния избор, HSE.
  3. Точно вдясно настройте PLLMul на X9.
  4. Отново вдясно под System Clock Mux изберете PLLCLK.
  5. Отново вдясно под APB1 Prescalar select /2.
  6. Това е. Ако видите част от диаграмата, подчертана в лилаво, сте направили нещо нередно.

Стъпка 4: Запазване и изграждане

  1. Запазете.ioc конфигурацията с Ctrl-S. Когато бъдете попитани дали искате да генерирате код, изберете Да (и поставете отметка Запомни моето решение, така че да не бъдете питани всеки път). Можете да затворите.ioc файла.
  2. Сега направете компилация от менюто Project | Build Project.

Стъпка 5: Добавяне на код

Добавяне на някакъв код
Добавяне на някакъв код
Добавяне на някакъв код
Добавяне на някакъв код

Сега ще добавим код, който да използва серийния порт, който сме конфигурирали.

  1. В Project Explorer отворете Core / Src и щракнете двукратно върху main.c, за да го редактирате.
  2. Превъртете надолу, докато намерите функцията main () и добавете кода, показан по -долу точно под коментара / * ПОТРЕБИТЕЛСКИ КОД НАЧАЛО 3 * / след това направете отново компилация.

HAL_UART_Transmit (& huart2, (uint8_t *) "Здравей, свят! / R / n", 15U, 100U);

След това свържете хардуера и го опитайте.

Стъпка 6: Свързване на хардуера

Свързване на хардуера
Свързване на хардуера
Свързване на хардуера
Свързване на хардуера

Свързване на ST-LINK v2

ST-LINK v2 трябваше да бъде снабден с 4-жилен лентов кабел от женски към женски конектор. Трябва да направите следните връзки:

Синьо хапче към ST-LINK v2

GND към GND

CLK към SWCLK

DIO към SWDIO

3.3 до 3.3V

Вижте първото изображение по -горе.

Свързване на сериен кабел

Ако се върнете към.ioc файла и погледнете диаграмата на чипа вдясно, ще видите, че TX линията на UART2 е на щифт PA2. Затова свържете щифта с етикет PA2 на платката Blue Pill към връзката с жълтия проводник на серийния кабел FTDI. Свържете също един от заземяващите щифтове на Blue Pill (обозначен с G) към черния проводник на серийния кабел на FTDI.

Вижте второто изображение по -горе.

Стъпка 7: Отстраняване на грешки

Отстраняване на грешки
Отстраняване на грешки
Отстраняване на грешки
Отстраняване на грешки

Включете серийния кабел FTDI и стартирайте сериен терминал на 115200 бода. След това включете вашия ST-LINK v2 и сте готови за работа.

  1. От STM32CubeIDE изберете Run | Debug. Когато се появи диалогов прозорец Debug as, изберете STM32 Cortex-M C/C ++ Application и OK.
  2. Когато се появи диалогов прозорец за редактиране на конфигурация, просто натиснете OK.
  3. Дебъгерът ще се прекъсне на първия ред на main (). От менюто изберете Run | Resume и проверете за съобщения в серийния терминал.

Стъпка 8: Правете повече

Това е всичко, първото ви приложение STM32CubeIDE е конфигурирано и работи. Този пример не прави много - просто изпраща някои данни от серийния порт.

За да използвате други периферни устройства и да пишете драйвери за външни устройства, трябва отново да се заемете с този обезсърчителен редактор на конфигурация! За да помогна, аз създадох поредица от примерни проекти на STM32CubeIDE, които конфигурират и упражняват всички периферни устройства на процесора на Blue Pill в малки лесни за разбиране проекти. Всички те са с отворен код и вие сте свободни да правите с тях каквото искате. Всяко периферно устройство е конфигурирано и след това има примерен код, който да го упражнява изолирано (почти!), Така че да можете да се концентрирате върху това, че ще се движи само по едно периферно устройство наведнъж.

Има и драйвери за външни устройства от прости чипове EEPROM до сензори за налягане, текстови и графични LCD дисплеи, модем SIM800 за TCP, HTTP и MQTT, клавиатури, радио модули, USB, а също и интеграция с FatFS, SD карти и FreeRTOS.

Всички те могат да бъдат намерени в Github тук …

github.com/miniwinwm/BluePillDemo

Препоръчано: