Turinys:

„Blue Pill Board“nustatymas naudojant STM32CubeIDE: 8 žingsniai
„Blue Pill Board“nustatymas naudojant STM32CubeIDE: 8 žingsniai

Video: „Blue Pill Board“nustatymas naudojant STM32CubeIDE: 8 žingsniai

Video: „Blue Pill Board“nustatymas naudojant STM32CubeIDE: 8 žingsniai
Video: Программирование STM32 Blue Pill с помощью релейной логики ПЛК LDmicro 2024, Liepa
Anonim
„Blue Pill Board“nustatymas STM32CubeIDE
„Blue Pill Board“nustatymas STM32CubeIDE
„Blue Pill Board“nustatymas STM32CubeIDE
„Blue Pill Board“nustatymas STM32CubeIDE

„Blue Pill“yra labai pigi plikų kaulų ARM plėtros lenta. Jo procesorius yra STM32F103C8, turintis 64 kbitų blykstės ir 20 kb RAM atminties. Jis veikia iki 72 MHz ir yra pigiausias būdas patekti į įterptosios ARM programinės įrangos kūrimą.

Dauguma pavyzdinių projektų ir kaip aprašyti „Blue Pill“lentos programavimą naudojant „Auduino“aplinką. Nors tai veikia ir yra būdas pradėti, ji turi savo apribojimų. „Arduino“aplinka šiek tiek apsaugo jus nuo pagrindinės techninės įrangos - tai jos dizaino tikslas. Dėl šios priežasties negalėsite pasinaudoti visomis procesoriaus siūlomomis funkcijomis, o realiuoju laiku integruoti operacinę sistemą tikrai nepalaikoma. Tai reiškia, kad „Arduino“aplinka nėra plačiai naudojama pramonėje. Jei norite daryti karjerą įterptosios programinės įrangos kūrimo srityje, „Arduino“yra gera pradžia, tačiau turite judėti toliau ir naudoti pramoniniu būdu naudojamą kūrimo aplinką. ST naudingai teikia visiškai nemokamą kūrėjų aplinkos komplektą savo procesoriams, vadinamą STM32CubeIDE. Tai plačiai naudojama pramonėje, todėl verta pereiti.

Tačiau, ir tai yra didelis dalykas, STM32CubeIDE yra baisiai sudėtinga ir yra bauginanti naudoti programinė įranga. Jis palaiko visas visų ST procesorių funkcijas ir leidžia juos kruopščiai sukonfigūruoti, o tai nėra „Arduino IDE“, nes viskas padaryta už jus.

Lentą turite nustatyti kaip pirmąjį STM32CubeIDE žingsnį. IDE žino apie ST kūrimo plokštes ir jas nustato jums, tačiau „Blue Pill“, naudodama ST procesorių, nėra ST produktas, todėl jūs čia esate savarankiškas.

Ši instrukcija padės jums nustatyti „Blue Pill“plokštę, įgalinti nuoseklųjį prievadą ir parašyti tekstą. Tai nėra daug, bet pirmas svarbus žingsnis.

Prekės

STM32CubeIDE - atsisiųskite iš ST svetainės. Turite užsiregistruoti ir atsisiųsti užtrunka šiek tiek laiko.

Mėlynos tabletės lenta. Juos galite gauti iš ebay. Jums reikia vieno, kuriame yra tikras ST procesorius, nes kai kurie to neturi. „Ebay“priartinkite paveikslėlį ir ieškokite ST logotipo ant procesoriaus.

„ST-LINK v2“derintojas/programuotojas, pasiekiamas iš „ebay“už kelis svarus.

FTDI TTL - USB 3.3V nuoseklusis kabelis išėjimui ir 2 laidai - jungtys, skirtos prijungti.

Serijinė terminalo programa, tokia kaip „PuTTY“.

1 žingsnis: sukurkite naują projektą

Naujo projekto kūrimas
Naujo projekto kūrimas
Naujo projekto kūrimas
Naujo projekto kūrimas
  1. Paleiskite STM32CubeIDE, tada meniu pasirinkite Failas | Naujas | STM32 projektas.
  2. Lauke Dalies numerio paieška įveskite STM32F103C8.
  3. MCU/MPU sąraše turėtumėte pamatyti STM32F103C8. Pasirinkite šią eilutę, kaip parodyta aukščiau esančiame paveikslėlyje.
  4. Spustelėkite Pirmyn.
  5. Dialogo lange „Projekto sąranka“nurodykite projekto pavadinimą.
  6. Palikite visa kita taip, kaip yra, ir spustelėkite Baigti. Jūsų projektas bus rodomas kairėje „Project Explorer“srityje.

2 veiksmas: sukonfigūruokite procesorių

Procesoriaus konfigūravimas
Procesoriaus konfigūravimas
Procesoriaus konfigūravimas
Procesoriaus konfigūravimas
Procesoriaus konfigūravimas
Procesoriaus konfigūravimas
Procesoriaus konfigūravimas
Procesoriaus konfigūravimas
  1. „Project Explorer“srityje atidarykite savo projektą ir dukart spustelėkite.ioc failą.
  2. Skirtuke Projektas ir konfigūracija išplėskite Sistemos branduolys, tada pasirinkite SYS.
  3. Išskleidžiamajame derinimo meniu SYS režimas ir konfigūracija pasirinkite Serial Wire.
  4. Dabar pasirinkite RCC „System Core“sąraše tiesiai virš SYS, kurį pasirinkote aukščiau.
  5. Skiltyje RCC režimas ir konfigūracija išskleidžiamajame meniu „High Speed Clock“(HSE) pasirinkite „Crystal/Ceramic Resonator“.
  6. Dabar vėl kategorijose atidarykite „Connectivity“ir pasirinkite USART2.
  7. Skiltyje USART2 režimas ir konfigūracija išskleidžiamajame režime pasirinkite Asinchroninis.
  8. Dabar pasirinkite skirtuką Laikrodžio konfigūracija ir pereikite prie kito veiksmo.

3 veiksmas: laikrodžių konfigūravimas

Laikrodžių konfigūravimas
Laikrodžių konfigūravimas

Dabar galite pamatyti gana bauginančią laikrodžio diagramą, tačiau ją reikia nustatyti tik vieną kartą. Tai čia sunkiausia apibūdinti, nes schema sudėtinga. Visi dalykai, kuriuos reikia pakeisti, paryškinti aukščiau esančiame paveikslėlyje.

  1. „Blue Pill“plokštėje yra 8 MHz kristalas, todėl laikrodžio konfigūracijos schema yra numatytoji, todėl mums to nereikia keisti.
  2. Skiltyje „PLL Source Mux“pasirinkite žemesnį pasirinkimą - HSE.
  3. Tiesiog į dešinę nustatykite PLLMul į X9.
  4. Dar kartą dešinėje skiltyje „System Clock Mux“pasirinkite PLLCLK.
  5. Vėl į dešinę skiltyje APB1 Prescalar pasirinkite /2.
  6. Viskas. Jei matote violetine spalva paryškintas diagramos dalis, padarėte kažką ne taip.

4 žingsnis: išsaugokite ir kurkite

  1. Išsaugokite.ioc konfigūraciją naudodami „Ctrl-S“. Kai jūsų paklaus, ar norite sugeneruoti kodą, pasirinkite Taip (ir pažymėkite parinktį Prisiminti mano sprendimą, kad jūsų kaskart neklaustų). Galite uždaryti.ioc failą.
  2. Dabar atlikite kūrimą iš meniu Projektas | Sukurti projektą.

5 veiksmas: pridėkite tam tikrą kodą

Kai kurių kodų pridėjimas
Kai kurių kodų pridėjimas
Kai kurių kodų pridėjimas
Kai kurių kodų pridėjimas

Dabar pridėsime tam tikrą kodą, kad galėtume naudoti mūsų sukonfigūruotą nuoseklųjį prievadą.

  1. „Project Explorer“atidarykite „Core / Src“ir dukart spustelėkite „main.c“, kad jį redaguotumėte.
  2. Slinkite žemyn, kol rasite main () funkcija ir pridėti kodą žemiau pavaizduotą tiesiog žemiau komentaras / * vartotojo kodą BEGIN 3 * /, tada padaryti statyti dar kartą.

HAL_UART_Transmit (& huart2 (uint8_t *) "Labas, pasauli / r / n!", 15U, 100U);

Tada prijunkite aparatūrą ir pabandykite.

6 žingsnis: Aparatūros prijungimas

Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas

ST-LINK v2 prijungimas

„ST-LINK v2“turėjo būti su 4 laidų jungtimi iš antgalio į moterį. Turite atlikti šiuos ryšius:

Mėlyna tabletė prie ST-LINK v2

GND į GND

CLK - SWCLK

DIO į SWDIO

Nuo 3.3 iki 3.3V

Žiūrėkite pirmąjį paveikslėlį aukščiau.

Serijinio kabelio prijungimas

Jei grįšite prie.ioc failo ir pažiūrėsite į dešinėje esančią mikroschemų diagramą, pamatysite, kad UART2 Tx linija yra ant kaiščio PA2. Todėl prijunkite kaištį, pažymėtą PA2 ant mėlynos tabletės plokštės, prie jungties geltona viela ant FTDI nuoseklaus kabelio. Taip pat prijunkite vieną iš „Blue Pill“įžeminimo kaiščių (pažymėtą G) prie FTDI nuoseklaus kabelio juodos vielos.

Žiūrėkite antrą paveikslėlį aukščiau.

7 veiksmas: derinimas

Derinimas
Derinimas
Derinimas
Derinimas

Prijunkite FTDI nuoseklųjį kabelį ir įjunkite 115200 baudų nuoseklųjį terminalą. Tada prijunkite savo ST-LINK v2 ir būsite pasiruošę.

  1. Iš STM32CubeIDE pasirinkite Vykdyti | Derinti. Kai pasirodys dialogo langas Derinti kaip, pasirinkite STM32 Cortex-M C/C ++ Application ir OK.
  2. Kai pasirodys dialogo langas Redaguoti konfigūraciją, tiesiog paspauskite Gerai.
  3. Derintojas sulaužys pirmąją main () eilutę. Meniu pasirinkite Vykdyti | Tęsti ir patikrinkite, ar serijos terminale nėra pranešimų.

8 žingsnis: nuveikite daugiau

Štai viskas, jūsų pirmoji STM32CubeIDE programa yra sukonfigūruota ir veikia. Šis pavyzdys neduoda daug naudos - tiesiog siunčia kai kuriuos duomenis iš nuoseklaus prievado.

Norėdami naudoti kitus išorinius įrenginius ir rašyti tvarkykles, turite dar kartą išspręsti tą bauginančią konfigūracijos rengyklę! Padėti, aš pagamino STM32CubeIDE pavyzdžiui projektų seriją, kad konfigūruoti ir vykdyti visas periferinės mėlyną tabletę procesorius mažose lengva suprasti projektų. Jie visi yra atviro kodo ir jūs galite laisvai daryti su jais viską, ką norite. Kiekvienas periferinė yra sukonfigūruotas ir tada turi pavyzdinį kodą ja naudotis izoliuotai (beveik!), Kad jūs galite sutelkti dėmesį į vis tik viena periferinė vyksta vienu metu.

Taip pat yra išorinių įrenginių tvarkyklės - nuo paprastų EEPROM mikroschemų iki slėgio jutiklių, teksto ir grafinių skystųjų kristalų ekranų, SIM800 modemo, skirto TCP, HTTP ir MQTT, klaviatūrų, radijo modulių, USB, taip pat integracijos su „FatFS“, SD kortelėmis ir „FreeRTOS“.

Visus juos galite rasti „Github“čia …

github.com/miniwinwm/BluePillDemo

Rekomenduojamas: