STM32F103C8T6 కనీస సిస్టమ్ డెవలప్మెంట్ బోర్డ్
ఉత్పత్తి సమాచారం
STM32F103C8T6 ARM STM32 కనిష్ట సిస్టమ్ డెవలప్మెంట్ బోర్డ్ మాడ్యూల్ అనేది STM32F103C8T6 మైక్రోకంట్రోలర్పై ఆధారపడిన డెవలప్మెంట్ బోర్డ్. ఇది Arduino IDEని ఉపయోగించి ప్రోగ్రామ్ చేయడానికి రూపొందించబడింది మరియు వివిధ Arduino క్లోన్లు, వైవిధ్యాలు మరియు ESP32 మరియు ESP8266 వంటి థర్డ్-పార్టీ బోర్డ్లకు అనుకూలంగా ఉంటుంది.
బ్లూ పిల్ బోర్డ్ అని కూడా పిలువబడే బోర్డు, Arduino UNO కంటే సుమారు 4.5 రెట్లు ఎక్కువ ఫ్రీక్వెన్సీలో పనిచేస్తుంది. ఇది వివిధ ప్రాజెక్ట్ల కోసం ఉపయోగించబడుతుంది మరియు TFT డిస్ప్లేల వంటి పెరిఫెరల్లకు కనెక్ట్ చేయబడుతుంది.
ఈ బోర్డ్తో ప్రాజెక్ట్లను నిర్మించడానికి అవసరమైన భాగాలలో STM32 బోర్డ్, FTDI ప్రోగ్రామర్, కలర్ TFT డిస్ప్లే, పుష్ బటన్, చిన్న బ్రెడ్బోర్డ్, వైర్లు, పవర్ బ్యాంక్ (స్టాండ్-అలోన్ మోడ్ కోసం ఐచ్ఛికం) మరియు USB నుండి సీరియల్ కన్వర్టర్ ఉన్నాయి.
స్కీమాటిక్
STM32F1 బోర్డ్ను 1.8 ST7735-ఆధారిత రంగు TFT డిస్ప్లే మరియు పుష్ బటన్కి కనెక్ట్ చేయడానికి, అందించిన స్కీమాటిక్స్లో వివరించిన పిన్-టు-పిన్ కనెక్షన్లను అనుసరించండి.
STM32 కోసం Arduino IDEని సెటప్ చేస్తోంది
- Arduino IDE ని తెరవండి.
- టూల్స్ -> బోర్డ్ -> బోర్డ్ మేనేజర్కి వెళ్లండి.
- శోధన పట్టీతో డైలాగ్ బాక్స్లో, “STM32F1” కోసం శోధించి, సంబంధిత ప్యాకేజీని ఇన్స్టాల్ చేయండి.
- ఇన్స్టాలేషన్ విధానం పూర్తయ్యే వరకు వేచి ఉండండి.
- ఇన్స్టాలేషన్ తర్వాత, STM32 బోర్డు ఇప్పుడు Arduino IDE బోర్డు జాబితా క్రింద ఎంపిక కోసం అందుబాటులో ఉండాలి.
Arduino IDEతో STM32 బోర్డులను ప్రోగ్రామింగ్ చేస్తోంది
Arduino IDE ప్రారంభమైనప్పటి నుండి, Arduino క్లోన్లు మరియు వివిధ తయారీదారుల వైవిధ్యాల నుండి ESP32 మరియు ESp8266 వంటి థర్డ్-పార్టీ బోర్డుల వరకు అన్ని రకాల ప్లాట్ఫారమ్లకు మద్దతు ఇవ్వాలనే కోరికను ప్రదర్శించింది. ఎక్కువ మంది వ్యక్తులు IDEతో పరిచయం ఉన్నందున, వారు ATMEL చిప్ల ఆధారంగా లేని మరిన్ని బోర్డులకు మద్దతు ఇవ్వడం ప్రారంభించారు మరియు నేటి ట్యుటోరియల్ కోసం మేము అలాంటి బోర్డులలో ఒకదానిని పరిశీలిస్తాము. Arduino IDEతో STM32-ఆధారిత, STM32F103C8T6 డెవలప్మెంట్ బోర్డ్ను ఎలా ప్రోగ్రామ్ చేయాలో మేము పరిశీలిస్తాము.

ఈ ట్యుటోరియల్ కోసం ఉపయోగించాల్సిన STM32 బోర్డు STM32F103C8T6 చిప్-ఆధారిత STM32F1 డెవలప్మెంట్ బోర్డ్ కాకుండా దాని PCB యొక్క నీలం రంగుకు అనుగుణంగా సాధారణంగా "బ్లూ పిల్"గా సూచించబడుతుంది. బ్లూ పిల్ శక్తివంతమైన 32-బిట్ STM32F103C8T6 ARM ప్రాసెసర్తో ఆధారితం, 72MHz వద్ద క్లాక్ చేయబడింది. బోర్డు 3.3v లాజిక్ స్థాయిలలో పనిచేస్తుంది కానీ దాని GPIO పిన్లు 5v తట్టుకోగలవని పరీక్షించబడ్డాయి. ఇది ESP32 మరియు Arduino వేరియంట్ల వంటి WiFi లేదా బ్లూటూత్తో రానప్పటికీ, ఇది 20KB RAM మరియు 64KB ఫ్లాష్ మెమరీని అందిస్తుంది, ఇది పెద్ద ప్రాజెక్ట్లకు సరిపోతుంది. ఇది 37 GPIO పిన్లను కూడా కలిగి ఉంది, వాటిలో 10 SPI, I2C, CAN, UART మరియు DMA కోసం ప్రారంభించబడిన ఇతర వాటితో పాటు ADC ప్రారంభించబడినందున అనలాగ్ సెన్సార్ల కోసం ఉపయోగించవచ్చు. సుమారు $3 ఖరీదు చేసే బోర్డు కోసం, ఇవి ఆకట్టుకునే స్పెక్స్ అని మీరు నాతో అంగీకరిస్తారు. Arduino Unoతో పోలిస్తే ఈ స్పెసిఫికేషన్ల సారాంశ సంస్కరణ క్రింది చిత్రంలో చూపబడింది.

పైన పేర్కొన్న స్పెక్స్ ఆధారంగా, బ్లూ పిల్ ఆపరేట్ చేసే ఫ్రీక్వెన్సీ Arduino UNO కంటే 4.5 రెట్లు ఎక్కువ, నేటి ట్యుటోరియల్ కోసం, మాజీampSTM32F1 బోర్డ్ను ఎలా ఉపయోగించాలో తెలుసుకుంటే, మేము దానిని 1.44″ TFT డిస్ప్లేకు కనెక్ట్ చేసి, “Pi” స్థిరాంకాన్ని లెక్కించడానికి ప్రోగ్రామ్ చేస్తాము. విలువను పొందడానికి బోర్డు ఎంత సమయం పట్టిందో మరియు అదే పనిని నిర్వహించడానికి Arduino Uno తీసుకునే సమయంతో పోల్చి చూస్తాము.
అవసరమైన భాగాలు
ఈ ప్రాజెక్ట్ను నిర్మించడానికి క్రింది భాగాలు అవసరం;
- STM32 బోర్డు
- FTDI ప్రోగ్రామర్
- రంగు TFT
- పుష్ బటన్
- చిన్న బ్రెడ్బోర్డ్
- వైర్లు
- పవర్ బ్యాంక్
- USB నుండి సీరియల్ కన్వర్టర్
ఎప్పటిలాగే, ఈ ట్యుటోరియల్ కోసం ఉపయోగించిన అన్ని భాగాలను జోడించిన లింక్ల నుండి కొనుగోలు చేయవచ్చు. అయితే మీరు ప్రాజెక్ట్ను స్టాండ్-అలోన్ మోడ్లో అమలు చేయాలనుకుంటే మాత్రమే పవర్ బ్యాంక్ అవసరం.
స్కీమాటిక్
- ముందుగా చెప్పినట్లుగా, మేము STM32F1 బోర్డ్ను పుష్ బటన్తో పాటు 1.8″ ST7735 ఆధారిత రంగు TFT డిస్ప్లేకి కనెక్ట్ చేస్తాము.
- గణనను ప్రారంభించమని బోర్డుకి సూచించడానికి పుష్ బటన్ ఉపయోగించబడుతుంది.
- దిగువ స్కీమాటిక్లో చూపిన విధంగా భాగాలను కనెక్ట్ చేయండి.

కనెక్షన్లను సులభంగా పునరావృతం చేయడానికి, STM32 మరియు డిస్ప్లే మధ్య పిన్-టు-పిన్ కనెక్షన్లు క్రింద వివరించబడ్డాయి.
STM32 - ST7735

కొంచెం గమ్మత్తైనది కాబట్టి ప్రతిదీ అలాగే ఉందని నిర్ధారించుకోవడానికి కనెక్షన్లను మరోసారి పరిశీలించండి. ఇలా చేయడంతో, మేము Arduino IDEతో ప్రోగ్రామ్ చేయడానికి STM32 బోర్డ్ను సెటప్ చేయడం ప్రారంభించాము.
STM32 కోసం Arduino IDEని సెటప్ చేస్తోంది
- Arduino ద్వారా తయారు చేయని చాలా బోర్డుల మాదిరిగానే, Arduino IDEతో బోర్డ్ను ఉపయోగించే ముందు కొంచెం సెటప్ చేయవలసి ఉంటుంది.
- ఇది బోర్డును ఇన్స్టాల్ చేయడాన్ని కలిగి ఉంటుంది file Arduino బోర్డ్ మేనేజర్ ద్వారా లేదా ఇంటర్నెట్ నుండి డౌన్లోడ్ చేయడం మరియు కాపీ చేయడం fileహార్డ్వేర్ ఫోల్డర్లోకి లు.
- బోర్డు మేనేజర్ మార్గం తక్కువ శ్రమతో కూడుకున్నది మరియు జాబితా చేయబడిన బోర్డులలో STM32F1 ఉన్నందున, మేము ఆ మార్గంలో వెళ్తాము. Arduino ప్రాధాన్యత జాబితాలకు STM32 బోర్డు కోసం లింక్ను జోడించడం ద్వారా ప్రారంభించండి.
- వెళ్ళండి File -> ప్రాధాన్యతలు, ఆపై దీన్ని నమోదు చేయండి URL ( http://dan.drown.org/stm32duino/package_STM32duino_index.json ) క్రింద సూచించిన విధంగా పెట్టెలో మరియు సరి క్లిక్ చేయండి.

- ఇప్పుడు Tools -> Board -> Board Manager కి వెళ్ళండి, అది సెర్చ్ బార్ తో డైలాగ్ బాక్స్ తెరుస్తుంది. కోసం వెతకండి STM32F1 ని డౌన్లోడ్ చేసి, సంబంధిత ప్యాకేజీని ఇన్స్టాల్ చేయండి.

- ఇన్స్టాలేషన్ విధానం కొన్ని సెకన్ల సమయం పడుతుంది. ఆ తర్వాత, బోర్డు ఇప్పుడు Arduino IDE బోర్డు జాబితా క్రింద ఎంపిక కోసం అందుబాటులో ఉండాలి.
కోడ్
- ఆర్డునో ప్రాజెక్ట్ కోసం మనం ఏ ఇతర స్కెచ్ని వ్రాస్తామో అదే విధంగా కోడ్ వ్రాయబడుతుంది, పిన్లను సూచించే విధానం మాత్రమే తేడా.
- ఈ ప్రాజెక్ట్ కోసం కోడ్ను సులభంగా అభివృద్ధి చేయడానికి, మేము రెండు లైబ్రరీలను ఉపయోగిస్తాము, ఇవి STM32కి అనుకూలంగా ఉండేలా చేయడానికి ప్రామాణిక Arduino లైబ్రరీల యొక్క రెండు సవరణలు.
- మేము Adafruit GFX మరియు Adafruit ST7735 లైబ్రరీల యొక్క సవరించిన సంస్కరణను ఉపయోగిస్తాము.
- రెండు లైబ్రరీలను వాటికి జోడించిన లింక్ల ద్వారా డౌన్లోడ్ చేసుకోవచ్చు. ఎప్పటిలాగే, నేను కోడ్ యొక్క చిన్న విచ్ఛిన్నం చేస్తాను.
- మేము ఉపయోగించే రెండు లైబ్రరీలను దిగుమతి చేయడం ద్వారా మేము కోడ్ను ప్రారంభిస్తాము.

- తరువాత, LCD యొక్క CS, RST మరియు DC పిన్లు కనెక్ట్ చేయబడిన STM32 యొక్క పిన్లను మేము నిర్వచించాము.

- తర్వాత, మేము రంగుల హెక్స్ విలువలకు బదులుగా తర్వాత కోడ్లో వారి పేర్లతో రంగులను ఉపయోగించడం సులభతరం చేయడానికి కొన్ని రంగు నిర్వచనాలను సృష్టిస్తాము.

- తర్వాత, ప్రోగ్రెస్ బార్ను ఉపయోగించాల్సిన రిఫ్రెష్ వ్యవధితో పాటుగా మేము బోర్డు ద్వారా వెళ్లాలనుకుంటున్న పునరావృతాల సంఖ్యను సెట్ చేస్తాము.

- ఇలా చేయడంతో, మేము ST7735 లైబ్రరీ యొక్క ఆబ్జెక్ట్ను సృష్టిస్తాము, ఇది మొత్తం ప్రాజెక్ట్ అంతటా డిస్ప్లేను సూచించడానికి ఉపయోగించబడుతుంది.
- మేము పుష్బటన్ కనెక్ట్ చేయబడిన STM32 యొక్క పిన్ను కూడా సూచిస్తాము మరియు దాని స్థితిని ఉంచడానికి వేరియబుల్ను సృష్టిస్తాము.

- ఇలా చేయడంతో, మేము శూన్యమైన సెటప్() ఫంక్షన్కి వెళ్తాము.
- మేము పుష్బటన్ కనెక్ట్ చేయబడిన పిన్ యొక్క పిన్మోడ్()ని సెట్ చేయడం ద్వారా ప్రారంభిస్తాము, నొక్కినప్పుడు పుష్బటన్ భూమికి కనెక్ట్ అయినందున పిన్పై అంతర్గత పుల్-అప్ రెసిస్టర్ను సక్రియం చేస్తుంది.

- తరువాత, మేము సీరియల్ కమ్యూనికేషన్ మరియు స్క్రీన్ను ప్రారంభిస్తాము, డిస్ప్లే యొక్క నేపథ్యాన్ని నలుపుకు సెట్ చేస్తాము మరియు ఇంటర్ఫేస్ను ప్రదర్శించడానికి ప్రింట్ () ఫంక్షన్కు కాల్ చేస్తాము.

- తదుపరిది శూన్య లూప్() ఫంక్షన్. శూన్య లూప్ ఫంక్షన్ చాలా సులభం మరియు చిన్నది, లైబ్రరీలు/ఫంక్షన్ల వినియోగానికి ధన్యవాదాలు.
- మేము పుష్ బటన్ యొక్క స్థితిని చదవడం ద్వారా ప్రారంభిస్తాము. బటన్ నొక్కినట్లయితే, మేము removePressKeyText()ని ఉపయోగించి స్క్రీన్పై ఉన్న ప్రస్తుత సందేశాన్ని తీసివేస్తాము మరియు డ్రాబార్() ఫంక్షన్ని ఉపయోగించి మారుతున్న ప్రోగ్రెస్ బార్ని గీయండి.
- మేము దానిని లెక్కించడానికి పట్టే సమయంతో పాటు Pi విలువను పొందేందుకు మరియు ప్రదర్శించడానికి ప్రారంభ గణన ఫంక్షన్ని పిలుస్తాము.

- పుష్బటన్ను నొక్కకపోతే, పరికరం నిష్క్రియ మోడ్లో ఉండి, దానితో పరస్పర చర్య చేయడానికి కీని నొక్కాలని డిమాండ్ చేస్తుంది.

- చివరగా, "లూప్లు" స్కెచ్ చేయడానికి ముందు కొంత సమయం ఇవ్వడానికి లూప్ చివరిలో ఆలస్యం చొప్పించబడుతుంది.

- కోడ్లో మిగిలిన భాగం బార్ని గీయడం నుండి పైని లెక్కించడం వరకు పనులను సాధించడానికి పిలువబడే విధులు.
- ఈ విధులు చాలా వరకు ST7735 డిస్ప్లే వినియోగాన్ని కలిగి ఉన్న అనేక ఇతర ట్యుటోరియల్లలో కవర్ చేయబడ్డాయి.






- ప్రాజెక్ట్ కోసం పూర్తి కోడ్ దిగువన అందుబాటులో ఉంది మరియు డౌన్లోడ్ విభాగం క్రింద జోడించబడింది.


STM32కి కోడ్ని అప్లోడ్ చేస్తోంది
- ప్రామాణిక Arduino-అనుకూల బోర్డులతో పోలిస్తే STM32f1కి స్కెచ్లను అప్లోడ్ చేయడం కొంచెం క్లిష్టంగా ఉంటుంది. బోర్డుకి కోడ్ని అప్లోడ్ చేయడానికి, మాకు FTDI-ఆధారిత, USB-టు సీరియల్ కన్వర్టర్ అవసరం.
- దిగువ స్కీమాటిక్స్లో చూపిన విధంగా USBని STM32కి సీరియల్ కన్వర్టర్కి కనెక్ట్ చేయండి.

కనెక్షన్ యొక్క పిన్-టు-పిన్ మ్యాప్ ఇక్కడ ఉంది
FTDI - STM32
- ఇలా చేయడంతో, బోర్డ్ను ప్రోగ్రామింగ్ మోడ్లో ఉంచడానికి మేము బోర్డ్ స్టేట్ జంపర్ స్థానాన్ని ఒక స్థానానికి మారుస్తాము (క్రింద ఉన్న gifలో చూపిన విధంగా).
- దీని తర్వాత బోర్డ్లోని రీసెట్ బటన్ను ఒకసారి నొక్కండి మరియు మేము కోడ్ను అప్లోడ్ చేయడానికి సిద్ధంగా ఉన్నాము.

- కంప్యూటర్లో, మీరు “జనరిక్ STM32F103C బోర్డ్”ని ఎంచుకున్నారని నిర్ధారించుకోండి మరియు అప్లోడ్ పద్ధతి కోసం సీరియల్ని ఎంచుకున్న తర్వాత మీరు అప్లోడ్ బటన్ను నొక్కవచ్చు.

- అప్లోడ్ పూర్తయిన తర్వాత, స్టేట్ జంపర్ని స్థానానికి మార్చండి "ఓ" ఇది బోర్డ్ను “రన్” మోడ్లో ఉంచుతుంది మరియు అప్లోడ్ చేసిన కోడ్ ఆధారంగా ఇది ఇప్పుడు అమలు చేయడం ప్రారంభించాలి.
- ఈ సమయంలో, మీరు FTDIని డిస్కనెక్ట్ చేయవచ్చు మరియు దాని USB ద్వారా బోర్డ్కు శక్తినివ్వవచ్చు. పవర్ చేసిన తర్వాత కోడ్ అమలు కానట్లయితే, మీరు జంపర్ని సరిగ్గా పునరుద్ధరించారని నిర్ధారించుకోండి మరియు బోర్డుకి పవర్ రీసైకిల్ చేయండి.
డెమో
- కోడ్ పూర్తయిన తర్వాత, మీ సెటప్కు కోడ్ను అప్లోడ్ చేయడానికి పైన వివరించిన అప్లోడ్ ప్రక్రియను అనుసరించండి.
- దిగువ చిత్రంలో చూపిన విధంగా మీరు ప్రదర్శనను చూడాలి.

- గణనను ప్రారంభించడానికి పుష్ బటన్ను నొక్కండి. మీరు చివరి వరకు ప్రోగ్రెస్ బార్ స్లయిడ్ను క్రమంగా చూడాలి.
- ప్రక్రియ ముగింపులో, గణన తీసుకున్న సమయంతో పాటు Pi విలువ ప్రదర్శించబడుతుంది.

- అదే కోడ్ Arduino Unoలో అమలు చేయబడుతుంది. ఫలితం క్రింది చిత్రంలో చూపబడింది.

- ఈ రెండు విలువలను పోల్చి చూస్తే, “బ్లూ పిల్” Arduino Uno కంటే 7 రెట్లు ఎక్కువ వేగవంతమైనదని మేము చూస్తాము.
- ఇది భారీ ప్రాసెసింగ్ మరియు సమయ పరిమితులను కలిగి ఉన్న ప్రాజెక్ట్లకు అనువైనదిగా చేస్తుంది.
- బ్లూ పిల్ యొక్క చిన్న పరిమాణం కూడా అడ్వాన్గా పనిచేస్తుందిtagఇ ఇక్కడ Arduino నానో కంటే కొంచెం పెద్దది మరియు నానో తగినంత వేగంగా లేని ప్రదేశాలలో దీనిని ఉపయోగించవచ్చు.
పత్రాలు / వనరులు
![]() |
STM32 STM32F103C8T6 కనీస సిస్టమ్ డెవలప్మెంట్ బోర్డ్ [pdf] యూజర్ మాన్యువల్ STM32F103C8T6 కనిష్ట సిస్టమ్ డెవలప్మెంట్ బోర్డ్, STM32F103C8T6, కనీస సిస్టమ్ డెవలప్మెంట్ బోర్డ్, సిస్టమ్ డెవలప్మెంట్ బోర్డ్, డెవలప్మెంట్ బోర్డ్, బోర్డ్ |

