Nembo ya STM32

Bodi ya Maendeleo ya Mfumo ya STM32F103C8T6

STM32F103C8T6-Bidhaa-ya-Bodi-ya-Kima-Kima-Mfumo-Maendeleo

Taarifa ya Bidhaa

Kidhibiti cha Kima cha Chini cha Bodi ya Uendelezaji wa Mfumo STM32F103C8T6 ARM STM32 ni bodi ya usanidi ambayo inategemea kidhibiti kidogo cha STM32F103C8T6. Imeundwa ili kuratibiwa kwa kutumia Arduino IDE na inaoana na kloni mbalimbali za Arduino, tofauti, na bodi za wahusika wengine kama vile ESP32 na ESP8266.

Bodi, pia inajulikana kama Bodi ya Vidonge vya Bluu, hufanya kazi kwa masafa takriban mara 4.5 zaidi ya UNO ya Arduino. Inaweza kutumika kwa miradi mbalimbali na inaweza kuunganishwa kwa vifaa vya pembeni kama vile maonyesho ya TFT.

Vipengee vinavyohitajika ili kujenga miradi kwa kutumia ubao huu ni pamoja na Bodi ya STM32, Kipanga Programu cha FTDI, onyesho la Rangi la TFT, Kitufe cha Kusukuma, Ubao Mdogo wa Mkate, Waya, Benki ya Nishati (hiari kwa hali ya kusimama pekee), na Kibadilishaji cha USB hadi Serial.

Kimpango

Ili kuunganisha ubao wa STM32F1 kwenye Onyesho la TFT lenye rangi 1.8 ST7735 na kitufe cha kubofya, fuata miunganisho ya pin-to-pini iliyofafanuliwa katika michoro iliyotolewa.

Kuanzisha IDE ya Arduino kwa STM32

  1. Fungua IDE ya Arduino.
  2. Nenda kwa Zana -> Bodi -> Meneja wa Bodi.
  3. Katika kisanduku cha mazungumzo kilicho na upau wa utaftaji, tafuta "STM32F1" na usakinishe kifurushi kinacholingana.
  4. Subiri utaratibu wa usakinishaji ukamilike.
  5. Baada ya usakinishaji, bodi ya STM32 sasa inapaswa kupatikana kwa uteuzi chini ya orodha ya bodi ya Arduino IDE.

Kupanga bodi za STM32 na Arduino IDE

Tangu kuanzishwa kwake, Arduino IDE imeonyesha nia ya kusaidia aina zote za majukwaa, kutoka kwa kloni za Arduino na tofauti za watengenezaji tofauti hadi bodi za wahusika wengine kama vile ESP32 na ESp8266. Kadiri watu wanavyozidi kuifahamu IDE, wanaanza kuauni ubao zaidi ambao hautegemei chips za ATMEL na kwa somo la leo tutaangalia mojawapo ya vibao kama hivyo. Tutachunguza jinsi ya kupanga bodi ya ukuzaji yenye msingi wa STM32, STM32F103C8T6 kwa kutumia Arduino IDE.

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

Ubao wa STM32 utakaotumika kwa mafunzo haya si mwingine ila bodi ya ukuzaji ya STM32F103C8T6 inayotokana na chip ya STM32F1 inayojulikana kama "Kidonge cha Bluu" sambamba na rangi ya buluu ya PCB yake. Kidonge cha Bluu kinatumia kichakataji chenye nguvu cha 32-bit STM32F103C8T6 ARM, chenye saa 72MHz. Bodi inafanya kazi kwa viwango vya mantiki vya 3.3v lakini pini zake za GPIO zimejaribiwa kuwa zinazostahimili 5v. Ingawa haiji na WiFi au Bluetooth kama vile vibadala vya ESP32 na Arduino, inatoa 20KB ya RAM na 64KB ya kumbukumbu ya flash ambayo inafanya iwe ya kutosha kwa miradi mikubwa. Pia ina pini 37 za GPIO, 10 kati yake zinaweza kutumika kwa vitambuzi vya Analogi kwa kuwa zimewashwa na ADC, pamoja na zingine ambazo zimewezeshwa kwa SPI, I2C, CAN, UART, na DMA. Kwa bodi inayogharimu karibu $3, utakubaliana nami kuwa hizi ni vipimo vya kuvutia. Toleo la muhtasari wa vipimo hivi ikilinganishwa na ile ya Arduino Uno linaonyeshwa kwenye picha hapa chini.

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

Kulingana na vipimo vilivyo hapo juu, masafa ambayo Kidonge cha Blue hufanya kazi ni takriban mara 4.5 zaidi ya Arduino UNO, kwa mafunzo ya leo, kama zamani.ample kuhusu jinsi ya kutumia ubao wa STM32F1, tutaiunganisha kwenye onyesho la 1.44″ TFT na tupange ili kukokotoa “Pi” mara kwa mara. Tutatambua ni muda gani ilichukua bodi kupata thamani ikilinganishwa na wakati inachukua Arduino Uno kutekeleza kazi sawa.

Vipengele vinavyohitajika

Vipengele vifuatavyo vinahitajika ili kujenga mradi huu;

  • Bodi ya STM32
  • Mtengenezaji programu wa FTDI
  • Rangi TFT
  • Bonyeza Kitufe
  • Ubao mdogo wa mkate
  • Waya
  • Benki ya Nguvu
  • Kibadilishaji cha USB kwa Serial

Kama kawaida, vipengele vyote vilivyotumika kwa somo hili vinaweza kununuliwa kutoka kwa viungo vilivyoambatishwa. Benki ya nishati inahitajika tu ikiwa unataka kupeleka mradi katika hali ya pekee.

Kimpango

  • Kama ilivyoelezwa hapo awali, tutaunganisha ubao wa STM32F1 na Onyesho la TFT lenye rangi ya 1.8″ ST7735 pamoja na kitufe cha kubofya.
  • Kitufe cha kushinikiza kitatumika kuelekeza ubao kuanza kuhesabu.
  • Unganisha vipengele kama inavyoonyeshwa kwenye mchoro hapa chini.

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

Ili kufanya miunganisho iwe rahisi kunakiliwa, miunganisho ya pin-to-pin kati ya STM32 na onyesho imefafanuliwa hapa chini.

STM32 – ST7735

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

Pitia viunganisho kwa mara nyingine tena ili kuhakikisha kuwa kila kitu kiko kama inavyopaswa kuwa kwani inaelekea kuwa gumu kidogo. Kwa hili, tuliendelea kusanidi bodi ya STM32 ili kuratibiwa na Arduino IDE.

Kuanzisha IDE ya Arduino kwa STM32

  • Kama ilivyo kwa bodi nyingi ambazo hazijatengenezwa na Arduino, usanidi kidogo unahitajika kufanywa kabla ya bodi kutumiwa na Arduino IDE.
  • Hii inahusisha kufunga bodi file ama kupitia Meneja wa Bodi ya Arduino au kupakua kutoka kwa mtandao na kunakili faili ya files kwenye folda ya vifaa.
  • Njia ya Meneja wa Bodi ndiyo isiyochosha na kwa kuwa STM32F1 ni miongoni mwa mbao zilizoorodheshwa, tutapitia njia hiyo. Anza kwa kuongeza kiungo cha ubao wa STM32 kwenye orodha za mapendeleo za Arduino.
  • Nenda kwa File -> Mapendeleo, kisha ingiza hii URL ( http://dan.drown.org/stm32duino/package_STM32duino_index.json ) kwenye kisanduku kama ilivyoonyeshwa hapa chini na ubofye sawa.

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

  • Sasa nenda kwa Zana -> Bodi -> Meneja wa Bodi, itafungua kisanduku cha mazungumzo na upau wa utaftaji. Tafuta STM32F1 na usakinishe kifurushi kinacholingana.

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

  • Utaratibu wa ufungaji utachukua sekunde chache. Baada ya hapo, bodi inapaswa sasa kupatikana kwa uteuzi chini ya orodha ya bodi ya Arduino IDE.

Kanuni

  • Nambari hiyo itaandikwa kwa njia ile ile tungeandika mchoro mwingine wowote wa mradi wa Arduino, tofauti pekee ikiwa jinsi pini zinavyorejelewa.
  • Ili kuweza kuunda msimbo wa mradi huu kwa urahisi, tutatumia maktaba mbili ambazo zote ni marekebisho ya Maktaba za kawaida za Arduino ili kuzifanya ziendane na STM32.
  • Tutatumia toleo lililorekebishwa la Adafruit GFX na maktaba za Adafruit ST7735.
  • Maktaba zote mbili zinaweza kupakuliwa kupitia viungo vilivyoambatishwa kwao. Kama kawaida, nitakuwa nikifanya muhtasari mfupi wa nambari.
  • Tunaanza msimbo kwa kuingiza maktaba mbili ambazo tutatumia.

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

  • Ifuatayo, tunafafanua pini za STM32 ambazo pini za CS, RST, na DC za LCD zimeunganishwa.

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

  • Kisha, tunaunda ufafanuzi wa rangi ili kurahisisha kutumia rangi kwa majina yao kwenye msimbo baadaye badala ya thamani zao za heksi.

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

  • Kisha, tunaweka idadi ya marudio tunayotaka bodi ipitie pamoja na muda wa kuonyesha upya upau wa maendeleo utakaotumika.

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

  • Hili likifanywa, tunaunda kipengee cha maktaba ya ST7735 ambacho kitatumika kurejelea onyesho katika mradi mzima.
  • Pia tunaonyesha pini ya STM32 ambayo kitufe cha kushinikiza kimeunganishwa na kuunda kigezo cha kushikilia hali yake.

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

  • Kwa hili, tunahamia kwenye usanidi wa utupu () kazi.
  • Tunaanza kwa kuweka pinMode() ya pini ambayo kibonye cha kusukuma kimeunganishwa, kuamsha kipingamizi cha ndani cha kuvuta-up kwenye pini kwani kitufe cha kusukuma huunganisha chini kinapobonyezwa.

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

  • Ifuatayo, tunaanzisha mawasiliano ya serial na skrini, tukiweka usuli wa onyesho kuwa nyeusi na kuita kazi ya kuchapisha () ili kuonyesha kiolesura.

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

  • Inayofuata ni void loop() kazi. Utendakazi wa kitanzi utupu ni rahisi sana na fupi, kutokana na matumizi ya maktaba/kazi.
  • Tunaanza kwa kusoma hali ya kifungo cha kushinikiza. Ikiwa kifungo kimesisitizwa, tunaondoa ujumbe wa sasa kwenye skrini kwa kutumia removePressKeyText() na chora upau wa maendeleo unaobadilika kwa kutumia kazi ya drawBar().
  • Kisha tunaita kitendakazi cha kukokotoa ili kupata na kuonyesha thamani ya Pi pamoja na muda uliochukua kuihesabu.

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

  • Ikiwa kitufe cha kushinikiza hakijabonyezwa, kifaa kitasalia katika hali ya Kutofanya kitu huku skrini ikitaka ubonyeze kitufe ili kuingiliana nacho.

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

  • Hatimaye, ucheleweshaji huingizwa mwishoni mwa kitanzi ili kutoa muda kidogo kabla ya kuchora "loops".

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

  • Sehemu iliyobaki ya msimbo ni kazi zinazoitwa kufikia kazi kutoka kwa kuchora bar hadi kuhesabu Pi.
  • Nyingi za vipengele hivi vimefunikwa katika mafunzo mengine kadhaa ambayo yanahusisha matumizi ya onyesho la 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

  • Msimbo kamili wa mradi unapatikana hapa chini na umeambatishwa chini ya sehemu ya upakuaji.

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

Inapakia Msimbo kwa STM32

  • Kupakia michoro kwenye STM32f1 ni changamano kidogo ikilinganishwa na bodi za kawaida zinazooana na Arduino. Ili kupakia msimbo kwenye ubao, tunahitaji kigeuzi chenye msingi wa FTDI, USB hadi Serial.
  • Unganisha USB hadi kigeuzi cha serial kwa STM32 kama inavyoonyeshwa kwenye michoro hapa chini.

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

Hapa kuna ramani ya pini-kwa-pini ya muunganisho

FTDI - STM32

  • Kwa hili, basi tunabadilisha nafasi ya jumper ya hali ya bodi ili kuweka moja (kama inavyoonyeshwa kwenye gif hapa chini), ili kuweka ubao katika hali ya programu.
  • Bonyeza kitufe cha kuweka upya ubao mara moja baada ya hii na tuko tayari kupakia msimbo.

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

  • Kwenye kompyuta, hakikisha kuwa umechagua "Ubao wa Jumla wa STM32F103C" na uchague mfululizo wa mbinu ya upakiaji na baada ya hapo unaweza kubofya kitufe cha kupakia.

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

  • Mara tu Upakiaji utakapokamilika, badilisha kirukaji cha hali hadi nafasi "O" Hii itaweka ubao katika hali ya "kukimbia" na inapaswa kuanza kufanya kazi kulingana na msimbo uliopakiwa.
  • Katika hatua hii, unaweza kukata FTDI na kuwasha ubao juu ya USB yake. Iwapo msimbo haufanyi kazi baada ya kuwashwa, hakikisha kuwa umerejesha kirukaji vizuri na urejeshe nguvu kwenye ubao.

Onyesho

  • Msimbo ukiwa umekamilika, fuata mchakato wa kupakia uliofafanuliwa hapo juu ili kupakia msimbo kwenye usanidi wako.
  • Unapaswa kuona onyesho likija kama inavyoonyeshwa kwenye picha hapa chini.

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

  • Bonyeza kitufe cha kushinikiza ili kuanza hesabu. Unapaswa kuona upau wa maendeleo uteleza polepole hadi mwisho.
  • Mwishoni mwa mchakato, thamani ya Pi itaonyeshwa pamoja na muda ambao hesabu ilichukua.

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

  • Kanuni hiyo hiyo inatekelezwa kwenye Arduino Uno. Matokeo yanaonyeshwa kwenye picha hapa chini.

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

  • Kwa kulinganisha maadili haya mawili, tunaona kwamba "Kidonge cha Bluu" ni zaidi ya mara 7 kwa kasi zaidi kuliko Arduino Uno.
  • Hii inafanya kuwa bora kwa miradi ambayo inahusisha usindikaji mkubwa na vikwazo vya wakati.
  • Ukubwa mdogo wa Kidonge cha Bluu pia hutumika kama advantage hapa kwa kuwa ni kubwa kidogo tu kuliko Arduino Nano na inaweza kutumika mahali ambapo Nano haitakuwa na kasi ya kutosha.

Nyaraka / Rasilimali

Bodi ya Maendeleo ya Mfumo ya STM32 STM32F103C8T6 [pdf] Mwongozo wa Mtumiaji
STM32F103C8T6 Bodi ya Uendelezaji wa Mfumo wa Kima cha Chini, STM32F103C8T6, Bodi ya Kiwango cha Chini cha Maendeleo ya Mfumo, Bodi ya Maendeleo ya Mfumo, Bodi ya Maendeleo, Bodi

Marejeleo

Acha maoni

Barua pepe yako haitachapishwa. Sehemu zinazohitajika zimetiwa alama *