Мазмуну:

Blue Pill Boardти STM32CubeIDEде орнотуу: 8 кадам
Blue Pill Boardти STM32CubeIDEде орнотуу: 8 кадам

Video: Blue Pill Boardти STM32CubeIDEде орнотуу: 8 кадам

Video: Blue Pill Boardти STM32CubeIDEде орнотуу: 8 кадам
Video: STM32 - программирование для начинающих. Пошагово. CubeMX CubeIDE 2024, Ноябрь
Anonim
STM32CubeIDEде Blue Pill Board орнотуу
STM32CubeIDEде Blue Pill Board орнотуу
STM32CubeIDEде Blue Pill Board орнотуу
STM32CubeIDEде Blue Pill Board орнотуу

Көк таблетка - бул абдан арзан жылаңач сөөктөр ARM өнүктүрүү тактасы. Анын процессору STM32F103C8, 64 кбайт флэш жана 20 кбайт RAM эс тутумуна ээ. Бул 72 МГцке чейин иштейт жана ARM камтылган программалык камсыздоону иштеп чыгуунун эң арзан жолу.

Көпчүлүк долбоорлор жана Auduino чөйрөсүн колдонуп Blue Pill тактасын программалоону кантип сүрөттөө керек. Бул иштейт жана баштоонун бир жолу болсо да, анын чектөөлөрү бар. 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ден бир нече фунтка жеткиликтүү.

Чыгуу үчүн USB 3.3V сериялык кабелине FTDI TTL жана аны туташтыруу үчүн 2 эркек -ургаачы зым.

PuTTY сыяктуу сериялык терминалдык программа.

1 -кадам: Жаңы долбоор түзүү

Жаңы долбоор түзүү
Жаңы долбоор түзүү
Жаңы долбоор түзүү
Жаңы долбоор түзүү
  1. STM32CubeIDEди баштаңыз, андан кийин менюдан Файл | Жаңы | STM32 долбоорун тандаңыз.
  2. Бөлүмдүн номерин издөө кутусуна STM32F103C8 киргизиңиз.
  3. MCU/MPU тизмесинде сиз STM32F103C8 көрүшүңүз керек. Жогорудагы сүрөттө көрсөтүлгөндөй бул линияны тандаңыз.
  4. Кийинкини басыңыз.
  5. Долбоорду орнотуу диалогунда сиз долбоорго ат бересиз.
  6. Калганынын баарын ошол бойдон калтырып, "Аяктоо" баскычын чыкылдатыңыз. Сиздин долбоор Project Explorer панелинде сол жакта көрүнөт.

2 -кадам: Процессордун конфигурациясы

Процессорду конфигурациялоо
Процессорду конфигурациялоо
Процессорду конфигурациялоо
Процессорду конфигурациялоо
Процессорду конфигурациялоо
Процессорду конфигурациялоо
Процессорду конфигурациялоо
Процессорду конфигурациялоо
  1. Project Explorer панелинде долбооруңузду ачыңыз жана.ioc файлын эки жолу чыкылдатыңыз.
  2. Долбоор жана Конфигурация өтмөгүндө System Core кеңейтүү, андан кийин SYS тандаңыз.
  3. Мүчүлүштүктөрдү оңдоонун SYS режими жана конфигурациясынын астынан Сериялык зымды тандаңыз.
  4. Эми сиз жогоруда тандаган SYSтин жогору жагындагы System Core тизмесинен RCC тандаңыз.
  5. RCC режиминин жана конфигурациясынын астында High Speed Clock (HSE) ачылуучу кристалын/керамикалык резонаторун тандаңыз.
  6. Эми кайрадан Категориялардын астында Байланышты ачып, USART2ди тандаңыз.
  7. USART2 режими жана конфигурациясынын астынан ачылуучу режимден Асинхрондукту тандаңыз.
  8. Эми Саатты конфигурациялоо өтмөгүн тандап, кийинки кадамга өтүңүз.

3 -кадам: Сааттарды конфигурациялоо

Сааттарды конфигурациялоо
Сааттарды конфигурациялоо

Сиз азыр абдан коркунучтуу саат диаграммасын көрө аласыз, бирок аны бир эле жолу орнотуу керек. Бул жерде сүрөттөө кыйын, анткени диаграмма татаал. Сиз өзгөртүшүңүз керек болгон нерселердин баары жогорудагы сүрөттө баса белгиленген.

  1. Blue Pill тактасы тактада 8 МГц кристаллы менен келет жана демейки сааттын конфигурация диаграммасы ушундай, андыктан аны өзгөртүүнүн кажети жок.
  2. PLL Source Mux астында, HSEдин эң төмөнкү тандоосун тандаңыз.
  3. Эле оңго PLLMulду X9го коюңуз.
  4. Оңго кайра System Clock Mux астында PLLCLK тандаңыз.
  5. Кайра APB1 Prescalar астында оңго /2 тандаңыз.
  6. Дал ушул. Эгерде сиз кызгылт көк менен белгиленген диаграмманын кайсы бир бөлүгүн көрсөңүз, анда сиз туура эмес кылгансыз.

4 -кадам: Сактоо жана куруу

  1. . Ioc конфигурациясын Ctrl-S менен сактаңыз. Сизден кодду өндүрүүнү каалайсызбы деп сураганда, Ооба дегенди тандаңыз (жана менин чечимимди эстеп коюңуз, ошондо сизден ар дайым суралбайт). Сиз.ioc файлын жаба аласыз.
  2. Эми Project | Build Project менюсунан курулуш жасаңыз.

5 -кадам: Кээ бир коддорду кошуу

Кээ бир коддорду кошуу
Кээ бир коддорду кошуу
Кээ бир коддорду кошуу
Кээ бир коддорду кошуу

Эми биз конфигурациялаган сериялык портту колдонуу үчүн бир аз код кошобуз.

  1. Project Explorerде Core / Src ачып, аны түзөтүү үчүн main.cке эки жолу чыкылдатыңыз.
  2. Main () функциясын тапкыча ылдый сыдырыңыз жана төмөндө комментарийдин астында көрсөтүлгөн кодду кошуңуз / * USER CODE BEGIN 3 * / анан кайра куруңуз.

HAL_UART_Трансмиссия (& huart2, (uint8_t *) "Салам, дүйнө! / R / n", 15U, 100U);

Кийинки, бул аппараттык жабдууну туташтырып, ага уруксат бериңиз.

6 -кадам: Аппаратты туташтыруу

Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу

ST-LINK v2 туташуу

ST-LINK v2 4 зымдуу аялдан аялдын башына лента кабели менен келиши керек болчу. Сиз төмөнкү байланыштарды жасашыңыз керек:

Blue Pill to ST-LINK v2

GNDден GNDге

CLW to SWCLK

DIO to SWDIO

3.3 - 3.3V

Жогорудагы биринчи сүрөттү караңыз.

Сериялык кабелди туташтыруу

Эгерде сиз.ioc файлына кайтып келип, оң жактагы чип диаграммасын карасаңыз, UART2дин Tx линиясы PA2 пининде экенин көрөсүз. Ошентип, көк таблеткадагы PA2 деп белгиленген пинди FTDI сериялык кабелиндеги сары зым менен туташтырыңыз. Ошондой эле Blue Pillдин жерге төөнөгүчтөрүнүн бирин (G деп белгиленген) FTDI сериялык кабелиндеги кара зымга туташтырыңыз.

Жогорудагы экинчи сүрөттү караңыз.

7 -кадам: Мүчүлүштүктөрдү оңдоо

Мүчүлүштүктөрдү оңдоо
Мүчүлүштүктөрдү оңдоо
Мүчүлүштүктөрдү оңдоо
Мүчүлүштүктөрдү оңдоо

Сизге FTDI Serial кабелин туташтырып, 115200 байдын сериялык терминалын күйгүзүңүз. Андан кийин ST-LINK v2 сайыңыз жана барууга даярсыз.

  1. STM32CubeIDEден Run | Мүчүлүштүктөрдү оңдоону тандаңыз. Мүчүлүштүктөрдү оңдоо диалогу пайда болгондо STM32 Cortex-M C/C ++ Колдонмосун жана OK тандаңыз.
  2. Конфигурацияны түзөтүү диалогу пайда болгондо, жөн гана ОК басыңыз.
  3. Мүчүлүштүктөрдү оңдоочу main () биринчи сабында бузулат. Менюдан Run | Resume тандап, сериялык терминалда билдирүүлөрдү текшериңиз.

8 -кадам: Көбүрөөк кылуу

Болду, сиздин биринчи STM32CubeIDE колдонмоңуз конфигурацияланган жана иштеп жатат. Бул мисал көп нерсе кылбайт - жөн гана сериялык порттон кээ бир маалыматтарды жөнөтөт.

Башка перифериялык жабдууларды колдонуу жана тышкы түзмөктөр үчүн драйверлерди жазуу үчүн, ошол коркунучтуу конфигурация редактору менен кайрадан күрөшүү керек! Жардам берүү үчүн, мен Blue Pill процессорундагы бардык перифериялык түзүлүштөрдү кичине түшүнүктүү проектилерде конфигурациялаган жана ишке ашыруучу STM32CubeIDE мисал проектилерин чыгардым. Алардын баары ачык булак жана сиз алар менен каалаган нерсеңизди эркин кыла аласыз. Ар бир перифериялык түзүлүш конфигурацияланган жана андан кийин аны өзүнчө (дээрлик!) Жүзөгө ашыруу үчүн үлгү коду бар, ошондо сиз бир эле учурда бир перифериялык түзүлүштү алууга көңүл топтой аласыз.

Тышкы түзмөктөр үчүн драйверлер бар: жөнөкөй EEPROM чиптеринен басым сенсорлоруна, текст жана графикалык ЖК, TCP, HTTP жана MQTT үчүн SIM800 модем, клавиатуралар, радио модулдар, USB, ошондой эле FatFS, SD карталар жана FreeRTOS менен интеграция.

Алардын бардыгын Githubдан бул жерден тапса болот …

github.com/miniwinwm/BluePillDemo

Сунушталууда: