Talaan ng mga Nilalaman:

STM32 "Blue Pill" Progmaming Sa pamamagitan ng Arduino IDE & USB: 8 Hakbang
STM32 "Blue Pill" Progmaming Sa pamamagitan ng Arduino IDE & USB: 8 Hakbang

Video: STM32 "Blue Pill" Progmaming Sa pamamagitan ng Arduino IDE & USB: 8 Hakbang

Video: STM32
Video: Programming the STM32 Blue Pill with LDmicro PLC Ladder Logic 2024, Nobyembre
Anonim
STM32
STM32

Ang paghahambing ng generic na prototype board ng STM32F (ibig sabihin, Blue Pill) sa counter part nito na Arduino ay madaling makita kung gaano karami ang mga mapagkukunang mayroon ito, na magbubukas ng maraming mga bagong pagkakataon para sa mga proyekto ng IOT.

Ang kahinaan ay ang kakulangan ng suporta dito. Talagang hindi talaga kakulangan ng suporta, ngunit ito ay masyadong kumalat sa maraming mga forum, blog at grupo ng iba pang mga pahina. Marami ang hindi napapanahon.

Ilalarawan ko ang aking mga karanasan upang makakuha ng isa sa mga board na hindi lamang na-configure ng Arduino IDE ngunit sa pamamagitan din nito na naka-built in na USB konektor.

Ipapakita ko rin kung paano mag-upload ng Bootloader gamit ang ST-Link V2.

Hakbang 1: Mga Bahagi:

Mga Bahagi
Mga Bahagi
Mga Bahagi
Mga Bahagi

Kakailanganin mo ang ilang mga bahagi:

  1. Ang unang bagay na kakailanganin mo ay, syempre, isang ST32F103 prototype board. Ang "Blue Pill" ay kung paano ito nalalaman sa paligid, at mabibili mo ito para sa abot-kayang presyo sa maraming eCommerce store.
  2. Isang Modyul na ST-Link V2
  3. Bread board at jump cables

Hakbang 2: Software na Kakailanganin mo:

Software na Kakailanganin mo
Software na Kakailanganin mo
Software na Kakailanganin mo
Software na Kakailanganin mo
Software na Kakailanganin mo
Software na Kakailanganin mo
  1. Una sa lahat, Arduino IDE. Kung hindi mo pa ito naida-download, ito ang link: https://www.arduino.cc/en/Main/Software. Sinubukan ko itong maituturo sa bersyon 1.8.11, 1.8.12, at ang bersyon ng app, na gagana lamang para sa Windows 8 at 10. Hindi ko sasakupin ang pag-install ng software na ito, sa sandaling maraming impormasyon sa paligid kung paano ito ginagawa.
  2. Mula sa site ng STM kakailanganin mo sa ibaba ng software. Kinakailangan upang lumikha ng isang account:

    1. ST-Link V2 windows driver:
    2. STM32-Link Utility (https://my.st.com/content/my_st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/stsw-link004.html).
  3. Pagkatapos ay oras na upang mag-download ng Boot loader. Ito ang magpapahintulot sa Blue Pill na kumonekta sa computer USB. Ito ang link sa ito:

Paunawa kakailanganin mo ring magdagdag ng mga board sa Arduino IDE. Ipapaliwanag ko sa mga detalye kung paano ito gagawin.

Hakbang 3: STM32F103 Generic Prototype Board, ang Blue Pill

STM32F103 Generic Prototype Board, ang Blue Pill
STM32F103 Generic Prototype Board, ang Blue Pill
STM32F103 Generic Prototype Board, ang Blue Pill
STM32F103 Generic Prototype Board, ang Blue Pill
STM32F103 Generic Prototype Board, ang Blue Pill
STM32F103 Generic Prototype Board, ang Blue Pill

Ngayon isang maikling paliwanag tungkol sa STM32F103 prototype board, alam ng "Blue Pill".

Ito ay open source hardware, magkamukha ang Arduino Nano (halos magkatulad na laki). Maaari kang makahanap ng maraming iba't ibang paggawa, ngunit sinusunod nila ang eskematiko na malapit, kahit na ang mga isyu.

Maaari mong tanungin: Kung mukhang Arduino Nano, bakit ako dapat lumipat sa ibang hardware?

Ang sagot ay simple. Tulad ng sinabi ko na, kung ang iyong proyekto ay nangangailangan ng Faster Micro controller, na may higit na GPIO (33 sa kabuuan), higit pa at / o tumpak na mga input ng ADC (10 input x 12 Bits na resolusyon), mas maraming mga analog output (15), maraming mga interface ng komunikasyon, atbp; ito ang micro controller na maaaring kailanganin mo.

Sa itaas ay mayroong pin out at diagram na eskematiko.

Ngayon, ang ilan ay nagpapayo:

  1. Ito ay 3V3 micro controller. Sa kabila ng ilang mga pin ay 5V nababanat, iminumungkahi kong panatilihing mataas ang mga accessories sa 3V3, iba pang matalino maaari mong iprito ka ng Blue Pill.
  2. Ang PIN's PA11 at PA12 ay hindi magagamit, sa sandaling responsable sila para sa komunikasyon sa USB.
  3. Pinag-uusapan ang tungkol sa USB, Mahahanap mo ang maraming mga site at blog na nagpapaalam sa Blue Pill na may maling pull up na halaga ng risistor sa mga port nito. Ayon sa gayon, sila ay pangkalahatang 10KΩ sa halip na isang 4, 7KΩ. Maaari itong maging sanhi ng mga problema sa koneksyon ng USB. Sa totoo lang, mayroon akong 3 board at hindi ako nagkaroon ng problema upang ikonekta ang anuman sa pagkatapos sa anumang laptop. Kaya, inirerekumenda ko na gumana lamang ito kung talagang nagkakaroon ka ng mga problema upang ikonekta ang USB sa iyong computer. Nahuli akong natagpuan ang isang circuit draw ay ang halaga ng risistor na ito ay talagang 10KΩ. Pumunta sa figure …. Ang solusyon ay solder ng isang 1.5KΩ o 1.8KΩ risistor sa pagitan ng pin PA12 at 5V vcc.
  4. Ang isang malapit na pagtingin din sa diagram ay posible upang makita na walang proteksyon sa pagitan ng mga linya ng suplay ng kuryente ng 5V at USB 5V. MAG-ingat O HINDI LANG iwasan ang paggamit ng maraming mga mapagkukunan ng supply ng kuryente. Maaari mong iprito ang iyong USB USB port, kung marahil ay gumagamit ka ng isang panlabas na 5V supply ng kuryente habang ang board ay nakakonekta sa USB.

Hakbang 4: ST LINK V2 USB Adapter

ST LINK V2 USB Adapter
ST LINK V2 USB Adapter
ST LINK V2 USB Adapter
ST LINK V2 USB Adapter
ST LINK V2 USB Adapter
ST LINK V2 USB Adapter
ST LINK V2 USB Adapter
ST LINK V2 USB Adapter

Ang ST LINK V2 ay isang USB to SWD adapter, na idinisenyo para sa mga gawain sa pag-debug at pagprograma.

Kung balak mong gumana sa STM32 chip sa seryosong pamamaraan, kakailanganin mo ang tool na ito. Pinapayagan kang makipag-ugnay sa chip nang direkta sa pamamagitan ng konektor ng ulo ng SWB.

Mayroong maraming blog at site na may mga tagubilin kung paano mag-load gamit ang USB sa TTL adapter, ngunit wala akong makitang anumang gamit ang tool na ito upang mai-load ang boot loader.

Pinapayagan din nitong mag-program ng Blue Pill na may orihinal na boot loader gamit ang STM32Cube Programmer software (siguro ay lilikha ako ng isang itinuturo para sa hinaharap).

Upang mai-install ang Windows drive sundin ang mga hakbang na ito:

  1. I-unzip ang na-download na file
  2. Patakbuhin ang "stlink_winusb_install.bat bilang Administrator
  3. Pindutin ang key matapos itong matapos.
  4. Ikonekta ang ST-Link V2 sa anumang magagamit na computer USB.

Tandaan: Mag-i-install ito ng isang USB Device, HINDI isang port ng comm.

Hakbang 5: Oras upang Magsimula ng Tunay na Trabaho: Nilo-load ang STM32Duino Boot Loader

Oras upang Magsimula ng Tunay na Trabaho: Nilo-load ang STM32Duino Boot Loader
Oras upang Magsimula ng Tunay na Trabaho: Nilo-load ang STM32Duino Boot Loader
Oras upang Magsimula ng Tunay na Trabaho: Nilo-load ang STM32Duino Boot Loader
Oras upang Magsimula ng Tunay na Trabaho: Nilo-load ang STM32Duino Boot Loader

Una sa mga unang bagay: ikonekta ang ST-Link sa Blue Pill. Napakadali nito, sa sandaling ang ST pin out ay may label sa kaso nito.

ST-Link Blue Pill SWD Connector

pin2- SWDIO pin2- SWIO (o IO sa ilang mga board)

pin3- GND pin4- GND

pin6- SWCLKpin3- SWCLK (o CLK lamang)

pin7- 3.3V pin1- 3V3

Ang ST-Link V2 pin out ay malinaw na label sa katawan nito.

Patakbuhin ang software na "STM32 ST-Link Utility" (maaaring na-install mo na sa iyong computer).

Sa lalong madaling pag-load ng software, kukunin nito ang lahat ng data sa memorya ng Boot0. Kung hindi, mag-click sa "Connec to to Device", ang outlet plug na may isang icon na bolt. Susuriin din nito ang maraming impormasyon sa chip ng STM32.

ang pag-load ng binary file ay napaka-simple:

  1. Ilipat ang "Boot0" jumper sa posisyon na "1"
  2. Mag-click sa "Binary"
  3. Piliin ang Bootloader file (.bin)
  4. Sa menu, mag-click sa "Target" at "Program".

Papayagan nitong i-load ang Boot0 gamit ang bagong Bootloader.

  1. Ibalik ang "Boot0" jumper sa posisyon na "0"
  2. Pindutin ang pindutan ng pag-reset.

Pansin: Hindi mo na kailangang ilipat ang Boot0 jumper sa posisyon na "1" upang mai-load ang mga program na nilikha sa Arduino IDE.

Hakbang 6: Oras upang Makipag-ugnay sa Arduino IDE

Oras upang Makipag-ugnay sa Arduino IDE
Oras upang Makipag-ugnay sa Arduino IDE

Maaari mong mapansin pagkatapos mai-load ang "generic_boot20_pc13.bin" ang iyong Blue Pill USB port ay makikilala ng computer Device Manager bilang "Maple Serial (COMx)".

Upang maihanda ka sa Arduino IDE upang makitungo sa STM32, sundin ang mga hakbang sa ibaba:

Hakbang 7: Oras upang Makipag-ugnay sa Arduino IDE

Oras upang Makipag-ugnay sa Arduino IDE
Oras upang Makipag-ugnay sa Arduino IDE
Oras upang Makipag-ugnay sa Arduino IDE
Oras upang Makipag-ugnay sa Arduino IDE
Oras upang Makipag-ugnay sa Arduino IDE
Oras upang Makipag-ugnay sa Arduino IDE

Ngayon ay napansin mo, na kumokonekta sa iyo ng USB port sa iyong computer, makikilala ito bilang "Maple Serial (COMx)".

Ngayon, hinahayaan nating ihanda ang Arduino IDE para sa programing STM32. Buksan ang Arduino IDE, kung hindi pa ito bubuksan:

  1. Pumunta sa menu ng File at piliin ang "Mga Kagustuhan". Bubuksan nito ang window ng Mga Kagustuhan.
  2. Mag-click sa dobleng parisukat na icon na malapit sa kahon ng teksto na "Karagdagang Mga Tagapamahala ng Mga Board ng Url".
  3. Sa loob ng Text Box, kopyahin at i-paste sa ibaba ang mga link, isa sa bawat linya: https://dan.drown.org/stm32duino/package_STM32duino_index.jsonhttps://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.jsonYou will kailangan ang parehong board na nakatakda sa mga link na iyon.
  4. Pumunta ngayon sa menu na "Mga Tool" at piliin ang "Board Manager". Bubuksan nito ang Window na "Board Manager".
  5. Tiyaking napili ang "Lahat" sa "Uri" at sa uri ng text box na "STM32F1"
  6. Lumitaw ang parehong pagpipilian.

Hakbang 8: Ang "Gran Finale"

Ang
Ang

Ngayon, maaari mong i-type ang iyong code at isaayos ito.

Ikonekta ang iyong "Blue Pill" at itakda ang mga pagsasaayos tulad ng nasa larawan. Tiyaking pumili ng tamang port.

Kaya, ngayon handa na itong mag-upload ng code sa "Blue Pill".

Sana makatulong ito sa iyo!

Inirerekumendang: