STM32F103C8T6 Komisyon Konsèy Devlopman Sistèm Minimòm
Enfòmasyon sou pwodwi
Modil Kat Devlopman Sistèm Minimòm STM32F103C8T6 ARM STM32 la se yon kat devlopman ki baze sou mikrokontwolè STM32F103C8T6 la. Li fèt pou pwograme lè l sèvi avèk Arduino IDE a epi li konpatib ak plizyè klon Arduino, varyasyon, ak kat twazyèm pati tankou ESP32 ak ESP8266.
Kat la, ke yo rele tou Blue Pill Board, fonksyone nan yon frekans apeprè 4.5 fwa pi wo pase yon Arduino UNO. Li ka itilize pou plizyè pwojè epi li ka konekte ak periferik tankou ekran TFT.
Konpozan ki nesesè pou konstwi pwojè ak tablo sa a gen ladan yo tablo STM32 la, pwogramè FTDI a, ekran TFT koulè a, bouton pouse a, ti tablo a eksperyans lan, fil yo, yon bank pouvwa (opsyonèl pou mòd endepandan), ak yon konvètisè USB pou seri.
schematic
Pou konekte kat STM32F1 la ak ekran TFT koulè 1.8 ki baze sou ST7735 la ansanm ak yon bouton pouse, swiv koneksyon pin-a-pin ki dekri nan chema yo bay la.
Enstalasyon Arduino IDE a pou STM32
- Louvri IDE a Arduino.
- Ale nan Zouti -> Komisyon Konsèy -> Manadjè Komisyon Konsèy.
- Nan bwat dyalòg la ki gen yon ba rechèch, chèche "STM32F1" epi enstale pake ki koresponn lan.
- Tann jiskaske pwosedi enstalasyon an fini.
- Apre enstalasyon an, kat STM32 la ta dwe disponib kounye a pou seleksyon anba lis kat Arduino IDE a.
Pwogramasyon kat STM32 yo ak Arduino IDE a
Depi kreyasyon li, Arduino IDE a demontre dezi pou sipòte tout kalite platfòm, soti nan klon Arduino ak varyasyon diferan manifaktirè rive nan kat twazyèm pati tankou ESP32 ak ESp8266. Ofiramezi plis moun ap familyarize yo ak IDE a, y ap kòmanse sipòte plis kat ki pa baze sou chip ATMEL e pou leson patikilye jodi a nou pral gade youn nan kat sa yo. Nou pral egzamine kijan pou pwograme kat devlopman STM32F32C103T8 ki baze sou STM6 a ak Arduino IDE a.
Kat STM32 ki pral itilize pou leson patikilye sa a se pa lòt ke kat devlopman STM32F103 ki baze sou chip STM8F6C32T1 la, ke yo rele souvan "Blue Pill" an akò ak koulè ble PCB li a. Blue Pill la mache ak yon processeur ARM 32-bit STM32F103C8T6 pwisan, ki gen yon frekans 72MHz. Kat la fonksyone sou nivo lojik 3.3v, men yo teste broch GPIO li yo pou yo tolere 5v. Malgre ke li pa vini ak WiFi oswa Bluetooth tankou varyant ESP32 ak Arduino yo, li ofri 20KB RAM ak 64KB memwa flash, sa ki fè li adekwa pou gwo pwojè yo. Li genyen tou 37 broch GPIO, 10 ladan yo ka itilize pou detèktè analòg paske yo gen ADC aktive, ansanm ak lòt ki aktive pou SPI, I2C, CAN, UART, ak DMA. Pou yon kat ki koute anviwon $3, ou pral dakò avè m ke sa yo se espesifikasyon enpresyonan. Yon vèsyon rezime espesifikasyon sa yo konpare ak sa ki nan yon Arduino Uno parèt nan imaj ki anba a.
Baze sou espesifikasyon ki anwo yo, frekans Blue Pill la ap opere a anviwon 4.5 fwa pi wo pase yon Arduino UNO, pou leson patikilye jodi a, kòm yon ansyen...ampPou aprann kijan pou itilize kat STM32F1 la, nou pral konekte li ak yon ekran TFT 1.44″ epi pwograme li pou kalkile konstan "Pi" a. Nou pral note konbyen tan kat la te pran pou jwenn valè a epi konpare li ak tan li pran yon Arduino Uno pou fè menm travay la.
Eleman obligatwa
Eleman sa yo nesesè pou konstwi pwojè sa a;
- STM32 Komisyon Konsèy
- Pwogramè FTDI
- TFT koulè
- Pouse bouton
- Ti tablo pen
- Fil
- Bank pouvwa
- USB pou Serial Convertisseur
Jan sa konn abitye fèt, ou ka achte tout konpozan yo itilize pou leson patikilye sa a nan lyen ki atache yo. Sepandan, ou sèlman bezwen power bank lan si ou vle deplwaye pwojè a poukont li.
schematic
- Jan nou te mansyone pi bonè, nou pral konekte kat STM32F1 la ak ekran TFT koulè 1.8″ ki baze sou ST7735 la ansanm ak yon bouton pouse.
- Bouton an pral sèvi pou bay tablo a enstriksyon pou kòmanse kalkil la.
- Konekte konpozan yo jan yo montre nan chema ki anba a.
Pou fè koneksyon yo fasil pou repwodui, koneksyon pin-a-pin ant STM32 a ak ekran an dekri anba a.
STM32 – ST7735
Revize koneksyon yo ankò pou asire w tout bagay anfòm paske bagay yo ka vin yon ti jan konplike. Apre sa, nou te kontinye pou nou konfigire kat STM32 la pou nou pwograme l avèk Arduino IDE a.
Enstalasyon Arduino IDE a pou STM32
- Menm jan ak pifò kat ki pa fèt pa Arduino, ou bezwen fè yon ti konfigirasyon anvan ou ka itilize kat la ak Arduino IDE la.
- Sa enplike enstalasyon tablo a file swa atravè Arduino Board Manager la oswa telechaje li sou entènèt la epi kopye li files nan dosye pyès ki nan konpitè a.
- Wout Board Manager la se wout ki mwens fatigan an epi piske STM32F1 la pami kat ki nan lis la, nou pral pran wout sa a. Kòmanse pa ajoute lyen pou kat STM32 la nan lis preferans Arduino yo.
- Ale nan File -> Preferans, answit antre sa a URL ( http://dan.drown.org/stm32duino/package_STM32duino_index.json ) nan bwat la jan yo endike anba a epi klike sou ok.
- Now go to Tools -> Board -> Board Manager, it will open a dialogue box with a search bar. Chèche pou STM32F1 and install the corresponding package.
- Pwosedi enstalasyon an ap pran kèk segond. Apre sa, kat la ta dwe disponib kounye a pou seleksyon anba lis kat Arduino IDE a.
Kòd
- Kòd la pral ekri menm jan nou ta ekri nenpòt lòt eskis pou yon pwojè Arduino, sèl diferans lan se fason yo referansye broch yo.
- Pou nou kapab devlope kòd pou pwojè sa a fasilman, nou pral itilize de bibliyotèk ki toulede se modifikasyon bibliyotèk Arduino estanda pou fè yo konpatib ak STM32 la.
- Nou pral itilize vèsyon modifye bibliyotèk Adafruit GFX ak Adafruit ST7735 yo.
- Ou ka telechaje toulede bibliyotèk yo atravè lyen ki tache ak yo. Jan sa konn abitye fèt, m ap fè yon ti deskripsyon sou kòd la.
- Nou kòmanse kòd la lè nou enpòte de bibliyotèk nou pral itilize yo.
- Apre sa, nou defini broch STM32 la kote broch CS, RST, ak DC LCD a konekte.
- Apre sa, nou kreye kèk definisyon koulè pou fè li fasil pou itilize koulè yo ak non yo nan kòd la pita olye de valè egzagonal yo.
- Apre sa, nou fikse kantite iterasyon nou vle tablo a pase ansanm ak dire rafrechisman pou ba pwogrè a dwe itilize.
- Apre sa, nou kreye yon objè nan bibliyotèk ST7735 la ki pral itilize pou fè referans a ekspozisyon an pandan tout pwojè a.
- Nou endike tou pin STM32 a kote bouton pouse a konekte epi kreye yon varyab pou kenbe eta li.
- Avèk sa fini, nou ale nan fonksyon void setup() la.
- Nou kòmanse pa mete pinMode() pin kote bouton pouse a konekte a, sa aktive yon rezistans pull-up entèn sou pin lan piske bouton pouse a konekte ak tè a lè yo peze l.
- Apre sa, nou inisyalize kominikasyon seri a ak ekran an, nou mete background ekran an an nwa epi nou rele fonksyon print() pou montre koòdone nan.
- Apre sa, gen fonksyon void loop() la. Fonksyon void loop la byen senp epi kout, gras a itilizasyon bibliyotèk/fonksyon yo.
- Nou kòmanse pa li eta bouton pouse a. Si bouton an te deja peze, nou retire mesaj aktyèl la sou ekran an avèk fonksyon removePressKeyText() la epi nou trase ba pwogrè chanjman an avèk fonksyon drawBar() la.
- Apre sa, nou rele fonksyon kòmanse kalkil la pou jwenn epi montre valè Pi a ansanm ak tan li te pran pou kalkile li.
- Si ou pa peze bouton an, aparèy la rete nan mòd inaktif epi ekran an ap mande pou ou peze yon kle pou ou ka kominike avèk li.
- Finalman, yo mete yon reta nan fen bouk la pou bay yon ti tan anvan yo trase "bouk yo".
- Rès kòd la se fonksyon yo rele pou reyalize travay yo, soti nan trase ba a rive nan kalkile Pi a.
- Pifò nan fonksyon sa yo te kouvri nan plizyè lòt leson patikilye ki enplike itilizasyon ekran ST7735 la.
- Kòd konplè pou pwojè a disponib anba a epi li tache nan seksyon telechajman an.
Telechaje Kòd nan STM32 la
- Telechaje eskiz sou STM32f1 la se yon ti jan konplèks konpare ak kat estanda konpatib ak Arduino. Pou telechaje kòd sou kat la, nou bezwen yon konvètisè USB-an-seri ki baze sou FTDI.
- Konekte konvètisè USB-seri a ak STM32 a jan yo montre nan chema ki anba a.
Men yon kat koneksyon an, chak pin.
FTDI – STM32
- Lè sa fini, nou chanje pozisyon jumper eta tablo a nan pozisyon en (jan yo montre nan gif ki anba a), pou mete tablo a an mòd pwogramasyon.
- Peze bouton réinitializasyon an sou tablo a yon fwa apre sa epi nou pare pou telechaje kòd la.
- Sou òdinatè a, asire w ou chwazi "Generic STM32F103C board" epi chwazi serial kòm metòd telechajman an, apre sa ou ka klike sou bouton telechajman an.
- Yon fwa telechajman an fini, chanje jumper eta a nan pozisyon "O" Sa ap mete tablo a nan mòd "kouri" epi li ta dwe kòmanse fonksyone kounye a dapre kòd ki telechaje a.
- Nan pwen sa a, ou ka dekonekte FTDI a epi bay kat la kouran atravè USB li a. Si kòd la pa fonksyone apre ou fin ba li kouran an, asire w ou te byen retabli jumper la epi rebay kat la kouran an.
Demo
- Avèk kòd la konplè, swiv pwosesis telechajman ki dekri anwo a pou telechaje kòd la nan konfigirasyon ou an.
- Ou ta dwe wè ekran an parèt jan yo montre nan imaj ki anba a.
- Peze bouton an pou kòmanse kalkil la. Ou ta dwe wè ba pwogrè a ap glise piti piti jiska lafen.
- Nan fen pwosesis la, valè Pi a ap parèt ansanm ak tan kalkil la te pran.
- Menm kòd la aplike sou yon Arduino Uno. Rezilta a parèt nan imaj ki anba a.
- Lè nou konpare de valè sa yo, nou wè ke "Blue Pill" la plis pase 7 fwa pi rapid pase Arduino Uno a.
- Sa fè li ideyal pou pwojè ki enplike anpil pwosesis ak kontrent tan.
- Ti gwosè Grenn Ble a sèvi tou kòm yon avantajtage isit la paske li sèlman yon ti kras pi gwo pase Arduino Nano a epi li ka itilize nan kote Nano a pa pral ase rapid.
Dokiman / Resous
![]() |
STM32 STM32F103C8T6 Minimòm Sistèm Devlopman Komisyon Konsèy [pdfManyèl Itilizatè STM32F103C8T6 Minimòm Komisyon Devlopman Sistèm, STM32F103C8T6, Minimòm Komisyon Devlopman Sistèm, Komisyon Devlopman Sistèm, Komisyon Devlopman, Komisyon Konsèy |