STM32-hōʻailona

STM32F103C8T6 Papa Hoʻomohala Pūnaehana liʻiliʻi

STM32F103C8T6-Ka liʻiliʻi loa-Hoʻomohala-Papa-huahana

ʻIke Huahana

ʻO ka STM32F103C8T6 ARM STM32 Minimum System Development Board Module he papa hoʻomohala i hoʻokumu ʻia ma ka microcontroller STM32F103C8T6. Hoʻolālā ʻia e hoʻolālā ʻia me ka hoʻohana ʻana i ka Arduino IDE a kūpono me nā ʻano clones Arduino, nā ʻano like ʻole, a me nā papa ʻaoʻao ʻekolu e like me ka ESP32 a me ESP8266.

ʻO ka papa, i ʻike ʻia ʻo ka Blue Pill Board, e hana ana ma ke alapine ma kahi o 4.5 mau manawa kiʻekiʻe ma mua o Arduino UNO. Hiki ke hoʻohana ʻia no nā papahana like ʻole a hiki ke hoʻopili ʻia i nā peripheral e like me nā hōʻike TFT.

ʻO nā mea i makemake ʻia no ke kūkulu ʻana i nā papahana me kēia papa, ʻo ia ka STM32 Papa, FTDI Programmer, Color TFT display, Push Button, Small Breadboard, Wires, Power Bank (koho no ke kū hoʻokahi), a me USB i Serial Converter.

ʻKea

No ka hoʻohui ʻana i ka papa STM32F1 i ka 1.8 ST7735-based TFT Display a me kahi pihi pihi, e hahai i nā pilina pin-to-pin i wehewehe ʻia ma nā schematics i hāʻawi ʻia.

Hoʻonohonoho i ka Arduino IDE no STM32

  1. E wehe i ka Arduino IDE.
  2. E hele i Tools -> Board -> Board Manager.
  3. Ma ka pahu kamaʻilio me kahi pahu huli, e ʻimi iā "STM32F1" a hoʻokomo i ka pūʻolo pili.
  4. E kali i ka pau ʻana o ke kaʻina hana.
  5. Ma hope o ke kau ʻana, pono e loaʻa ka papa STM32 no ke koho ʻana ma lalo o ka papa inoa papa Arduino IDE.

Hoʻolālā i nā papa STM32 me ka Arduino IDE

Mai kona hoʻomaka ʻana, ua hōʻike ka Arduino IDE i ka makemake e kākoʻo i nā ʻano papahana āpau, mai nā clones Arduino a me nā ʻano like ʻole o nā mea hana like ʻole i nā papa ʻaoʻao ʻekolu e like me ka ESP32 a me ESp8266. I ka ʻike hou ʻana o ka poʻe i ka IDE, ke hoʻomaka nei lākou e kākoʻo i nā papa hou aʻe ʻaʻole i hoʻokumu ʻia i nā chips ATMEL a no ke aʻo ʻana i kēia lā e nānā mākou i kekahi o ia mau papa. E nānā mākou pehea e hoʻolālā ai i ka papa hoʻomohala STM32, STM32F103C8T6 me ka Arduino IDE.

STM32F103C8T6-Minimum-System-Development-Board-fig-1

ʻO ka papa STM32 e hoʻohana ʻia no kēia kumu aʻo, ʻaʻole ia he mea ʻē aʻe ma ka STM32F103C8T6 chip-based STM32F1 papa hoʻomohala i kapa pinepine ʻia ʻo "Blue Pill" ma ka laina me ke kala polū o kāna PCB. Hoʻohana ʻia ʻo Blue Pill e ke kaʻina hana 32-bit STM32F103C8T6 ARM ikaika, hoʻopaʻa ʻia ma 72MHz. Ke hana nei ka papa ma nā pae loiloi 3.3v akā ua hoʻāʻo ʻia kāna mau pine GPIO e 5v hoʻomanawanui. ʻOiai ʻaʻole ia e hele mai me WiFi a i ʻole Bluetooth e like me ka ESP32 a me nā ʻano ʻano Arduino, hāʻawi ia i 20KB o RAM a me 64KB o ka hoʻomanaʻo uila e lawa ai ia no nā papahana nui. Loaʻa iā ia nā pine GPIO 37, hiki ke hoʻohana ʻia ka 10 no nā sensor Analog no ka mea ua hiki iā lākou ke ADC, a me nā mea ʻē aʻe i hiki ke hoʻohana ʻia no SPI, I2C, CAN, UART, a me DMA. No kahi papa e kūʻai ana ma kahi o $3, e ʻae ʻoe me aʻu he mau hiʻohiʻona kupaianaha kēia. Hōʻike ʻia kahi mana hōʻuluʻulu o kēia mau kikoʻī i hoʻohālikelike ʻia me kahi Arduino Uno ma ke kiʻi ma lalo nei.

STM32F103C8T6-Minimum-System-Development-Board-fig-2

Ma muli o nā kikoʻī ma luna, ʻo ke alapine e hana ai ʻo Blue Pill ma kahi o 4.5 mau manawa kiʻekiʻe ma mua o kahi Arduino UNO, no ke aʻo ʻana i kēia lā, ma ke ʻano he ex.ampe pili ana i ka hoʻohana ʻana i ka papa STM32F1, e hoʻopili mākou iā ia i kahi hōʻike 1.44 ″ TFT a hoʻonohonoho iā ia e helu i ka "Pi". E nānā mākou i ka lōʻihi o ka lawe ʻana o ka papa i ka waiwai a hoʻohālikelike ʻia me ka manawa e lawe ai i kahi Arduino Uno e hana i ka hana like.

Nā Mea Pono

Pono nā ʻāpana e kūkulu i kēia papahana;

  • Papa STM32
  • Mea polokalamu FTDI
  • TFT kala
  • Pihi pihi
  • Papa Berena Li'ili'i
  • Uea
  • Pākuʻi mana
  • USB i Serial Converter

E like me ka mea maʻamau, hiki ke kūʻai ʻia nā mea āpau i hoʻohana ʻia no kēia kumu aʻo mai nā loulou i hoʻopili ʻia. Pono wale ka panakō mana inā makemake ʻoe e kau i ka papahana ma ke ʻano kū hoʻokahi.

ʻKea

  • E like me ka mea i ʻōlelo ʻia ma mua, e hoʻopili mākou i ka papa STM32F1 i ka 1.8 ″ ST7735 e pili ana i ka TFT Display me kahi pihi pihi.
  • E hoʻohana ʻia ke pihi kaomi e aʻo i ka papa e hoʻomaka i ka helu ʻana.
  • E hoʻohui i nā ʻāpana e like me ka mea i hōʻike ʻia ma ka schematic ma lalo nei.

STM32F103C8T6-Minimum-System-Development-Board-fig-3

I mea e maʻalahi ai ka hoʻopili ʻana i nā pilina, ua wehewehe ʻia nā pilina pin-to-pin ma waena o STM32 a me ka hōʻike.

STM32 – ST7735

STM32F103C8T6-Minimum-System-Development-Board-fig-4

E hele hou ma luna o nā pilina e hōʻoia i nā mea a pau e like me ka mea e lilo ai i mea paʻakikī. Me kēia hana, ua hoʻomaka mākou e hoʻonohonoho i ka papa STM32 e hoʻolālā ʻia me ka Arduino IDE.

Hoʻonohonoho i ka Arduino IDE no STM32

  • E like me ka nui o nā papa i hana ʻole ʻia e Arduino, pono e hana ʻia kahi hoʻonohonoho ma mua o ka hoʻohana ʻana i ka papa me ka Arduino IDE.
  • Pili kēia i ka hoʻokomo ʻana i ka papa file ma o ka Arduino Board Manager a i ʻole ka hoʻoiho ʻana mai ka pūnaewele a kope i ka files i loko o ka waihona lako.
  • ʻO ke ala o ka Luna Hoʻokele ka mea liʻiliʻi loa a ʻoiai ʻo STM32F1 i waena o nā papa i helu ʻia, e hele mākou i kēlā ala. E hoʻomaka me ka hoʻohui ʻana i ka loulou no ka papa STM32 i nā papa inoa makemake Arduino.
  • E hele i File -> Nā koho, a laila e hoʻokomo i kēia URL ( http://dan.drown.org/stm32duino/package_STM32duino_index.json ) i loko o ka pahu e like me ka mea i hōʻike ʻia ma lalo nei a kaomi ok.

STM32F103C8T6-Minimum-System-Development-Board-fig-5

  • Now go to Tools -> Board -> Board Manager, it will open a dialogue box with a search bar. Huli no STM32F1 and install the corresponding package.

STM32F103C8T6-Minimum-System-Development-Board-fig-6

  • ʻO ke kaʻina hana hoʻokomo e lawe i kekahi mau kekona. Ma hope o kēlā, pono e loaʻa ka papa no ke koho ʻana ma lalo o ka papa inoa papa Arduino IDE.

Code

  • E kākau ʻia ke code e like me kā mākou e kākau ai i nā kiʻi ʻē aʻe no kahi papahana Arduino, me ka ʻokoʻa wale nō ke ʻano o ka kuhikuhi ʻana o nā pine.
  • I mea e hiki ai ke hoʻomohala maʻalahi i ke code no kēia papahana, e hoʻohana mākou i ʻelua hale waihona puke ʻelua i hoʻololi ʻia i nā waihona Arduino maʻamau e hoʻohālikelike iā lākou me ka STM32.
  • E hoʻohana mākou i ka mana hoʻololi o ka Adafruit GFX a me nā hale waihona puke ʻo Adafruit ST7735.
  • Hiki ke hoʻoiho ʻia nā hale waihona puke ʻelua ma o nā loulou i hoʻopili ʻia iā lākou. E like me ka mea maʻamau, e hana wau i kahi pōkole pōkole o ke code.
  • Hoʻomaka mākou i ke code ma ka lawe ʻana i nā hale waihona puke ʻelua a mākou e hoʻohana ai.

STM32F103C8T6-Minimum-System-Development-Board-fig-7

  • A laila, wehewehe mākou i nā pine o ka STM32 kahi i hoʻopili ʻia ai nā CS, RST, a me DC pin o ka LCD.

STM32F103C8T6-Minimum-System-Development-Board-fig-8

  • A laila, hana mākou i kekahi mau wehewehe kala i mea e maʻalahi ai ka hoʻohana ʻana i nā kala ma ko lākou mau inoa ma ke code ma hope ma mua o kā lākou mau waiwai hex.

STM32F103C8T6-Minimum-System-Development-Board-fig-9

  • A laila, hoʻonoho mākou i ka helu o nā mea hou a mākou e makemake ai e hele ka papa me ka lōʻihi o ka hoʻomaha no ka pae holomua e hoʻohana ʻia.

STM32F103C8T6-Minimum-System-Development-Board-fig-10

  • Me kēia hana, hana mākou i kahi mea o ka waihona ST7735 e hoʻohana ʻia e kuhikuhi i ka hōʻike ma ka papahana holoʻokoʻa.
  • Hōʻike pū mākou i ka pine o ka STM32 kahi i hoʻopili ʻia ai ka pihi pana a hana i kahi loli e paʻa i kona kūlana.

STM32F103C8T6-Minimum-System-Development-Board-fig-11

  • Me kēia hana, neʻe mākou i ka hana hoʻonohonoho void ().
  • Hoʻomaka mākou ma ka hoʻonohonoho ʻana i ka pinMode () o ka pine kahi i hoʻopili ʻia ai ke pihi pihi, e hoʻāla ana i kahi pale huki huki kūloko ma ka pine mai ka wā e hoʻopili ai ka pihi pihi i ka honua ke kaomi ʻia.

STM32F103C8T6-Minimum-System-Development-Board-fig-12

  • A laila, hoʻomaka mākou i ke kamaʻilio serial a me ka pale, hoʻonohonoho i ke kua o ka hōʻike i ʻeleʻele a kāhea i ka hana paʻi () e hōʻike i ka interface.

STM32F103C8T6-Minimum-System-Development-Board-fig-13

  • A laila ʻo ka hana void loop(). He mea maʻalahi a pōkole ka hana void loop, mahalo i ka hoʻohana ʻana i nā hale waihona puke/hana.
  • Hoʻomaka mākou ma ka heluhelu ʻana i ke kūlana o ka pihi pihi. Inā ua paʻi ʻia ke pihi, wehe mākou i ka memo o kēia manawa ma ka pale me ka hoʻohana ʻana i ka removePressKeyText() a huki i ka pae holomua hoʻololi me ka hana drawBar().
  • A laila kāhea mākou i ka hana helu hoʻomaka e loaʻa a hōʻike i ka waiwai o Pi me ka manawa e helu ai.

STM32F103C8T6-Minimum-System-Development-Board-fig-14

  • Inā ʻaʻole paʻi ʻia ke pihi pana, e noho ka mea hana ma ke ʻano Idle me ka pale e koi ana e kaomi i kahi kī e launa pū me ia.

STM32F103C8T6-Minimum-System-Development-Board-fig-15

  • ʻO ka hope, hoʻokomo ʻia kahi lohi ma ka hope o ka loop e hāʻawi i kahi manawa ma mua o ke kahakaha ʻana i nā "loops".

STM32F103C8T6-Minimum-System-Development-Board-fig-16

  • ʻO ke koena o ke code nā hana i kāhea ʻia e hoʻokō i nā hana mai ka huki ʻana i ka pā a hiki i ka helu ʻana i ka Pi.
  • Ua uhi ʻia ka hapa nui o kēia mau hana i nā kumu aʻo ʻē aʻe e pili ana i ka hoʻohana ʻana i ka hōʻike ST7735.

STM32F103C8T6-Minimum-System-Development-Board-fig-17STM32F103C8T6-Minimum-System-Development-Board-fig-18STM32F103C8T6-Minimum-System-Development-Board-fig-19STM32F103C8T6-Minimum-System-Development-Board-fig-20STM32F103C8T6-Minimum-System-Development-Board-fig-21STM32F103C8T6-Minimum-System-Development-Board-fig-22

  • Loaʻa ka code piha no ka papahana ma lalo a ua hoʻopili ʻia ma lalo o ka ʻāpana hoʻoiho.

STM32F103C8T6-Minimum-System-Development-Board-fig-23STM32F103C8T6-Minimum-System-Development-Board-fig-24 STM32F103C8T6-Minimum-System-Development-Board-fig-25 STM32F103C8T6-Minimum-System-Development-Board-fig-26 STM32F103C8T6-Minimum-System-Development-Board-fig-27 STM32F103C8T6-Minimum-System-Development-Board-fig-28 STM32F103C8T6-Minimum-System-Development-Board-fig-29 STM32F103C8T6-Minimum-System-Development-Board-fig-30 STM32F103C8T6-Minimum-System-Development-Board-fig-31 STM32F103C8T6-Minimum-System-Development-Board-fig-32 STM32F103C8T6-Minimum-System-Development-Board-fig-33 STM32F103C8T6-Minimum-System-Development-Board-fig-34

Hoʻouka i ke code i ka STM32

  • ʻO ka hoʻouka ʻana i nā kiʻi kiʻi i ka STM32f1 he mea liʻiliʻi liʻiliʻi i hoʻohālikelike ʻia me nā papa Arduino-kūpono maʻamau. No ka hoʻouka ʻana i ke code i ka papa, pono mākou i kahi FTDI-based, USB-to Serial converter.
  • Hoʻohui i ke USB i ka mea hoʻololi serial i ka STM32 e like me ka hōʻike ʻana ma ka schematics ma lalo nei.

STM32F103C8T6-Minimum-System-Development-Board-fig-35

Eia ka palapala ʻāina pin-to-pin o ka pilina

FTDI – STM32

  • Me kēia hana, a laila hoʻololi mākou i ke kūlana o ka moku'āina o ka papa e hoʻonoho i hoʻokahi (e like me ka hōʻike ʻana ma ka gif ma lalo), e hoʻokomo i ka papa i ke ʻano papahana.
  • E kaomi i ke pihi reset ma ka papa i hoʻokahi manawa ma hope o kēia a ua mākaukau mākou e hoʻouka i ke code.

STM32F103C8T6-Minimum-System-Development-Board-fig-37

  • Ma ke kamepiula, e hōʻoia ʻoe e koho i ka "Generic STM32F103C board" a koho i ka serial no ke ʻano hoʻoili a laila hiki iā ʻoe ke paʻi i ke pihi hoʻouka.

STM32F103C8T6-Minimum-System-Development-Board-fig-38

  • Ke pau ka hoʻouka ʻana, e hoʻololi i ka lele mokuʻāina i kahi kūlana “O” E hoʻokomo kēia i ka papa i ke ʻano "run" a pono e hoʻomaka e holo ma muli o ke code i hoʻoili ʻia.
  • I kēia manawa, hiki iā ʻoe ke wehe i ka FTDI a mana i ka papa ma luna o kāna USB. Inā ʻaʻole holo ke code ma hope o ka mana, e hōʻoia ua hoʻihoʻi pono ʻoe i ka lele a hoʻihoʻi hou i ka mana i ka papa.

Demo

  • Me ka pau ʻana o ke code, e hahai i ke kaʻina hoʻoili i hōʻike ʻia ma luna nei e hoʻouka i ke code i kāu hoʻonohonoho.
  • Pono ʻoe e ʻike i ka piʻi ʻana o ka hōʻike e like me ka mea i hōʻike ʻia ma ke kiʻi ma lalo nei.

STM32F103C8T6-Minimum-System-Development-Board-fig-39

  • E kaomi i ke pihi pihi e hoʻomaka i ka helu ʻana. Pono ʻoe e ʻike i ka paheʻe o ka pae holomua a hiki i ka hopena.
  • I ka pau ʻana o ke kaʻina hana, hōʻike ʻia ka waiwai o Pi me ka manawa i lawe ʻia ai ka helu.

STM32F103C8T6-Minimum-System-Development-Board-fig-40

  • Hoʻokomo ʻia ka code like ma kahi Arduino Uno. Hōʻike ʻia ka hopena ma ke kiʻi ma lalo nei.

STM32F103C8T6-Minimum-System-Development-Board-fig-41

  • Ke hoʻohālikelike nei i kēia mau waiwai ʻelua, ʻike mākou ua ʻoi aku ka "Blue Pill" ma mua o 7 mau manawa wikiwiki ma mua o ka Arduino Uno.
  • He mea kūpono kēia no nā papahana e pili ana i ka hana koʻikoʻi a me nā palena manawa.
  • ʻO ka liʻiliʻi liʻiliʻi o ka Blue Pill e lawelawe pū me kahi advantage maʻaneʻi no ka mea ʻoi aku ka nui ma mua o ka Arduino Nano a hiki ke hoʻohana ʻia ma nā wahi kahi e wikiwiki ʻole ai ka Nano.

Palapala / Punawai

STM32 STM32F103C8T6 Papa Hoʻolālā Pūnaehana liʻiliʻi [pdf] Palapala Hoʻohana
STM32F103C8T6 Papa Hoʻolālā Pūnaehana liʻiliʻi, STM32F103C8T6, Papa Hoʻolālā Pūnaehana liʻiliʻi, Papa Hoʻolālā Pūnaewele, Papa Hoʻolālā, Papa

Nā kuhikuhi

Waiho i kahi manaʻo

ʻAʻole e paʻi ʻia kāu leka uila. Hōʻailona ʻia nā kahua i makemake ʻia *