STM32F103C8T6 Системийг хөгжүүлэх хамгийн бага самбар
Бүтээгдэхүүний мэдээлэл
STM32F103C8T6 ARM STM32 Системийг хөгжүүлэх хамгийн бага самбарын модуль нь STM32F103C8T6 микроконтроллер дээр суурилсан хөгжүүлэлтийн самбар юм. Энэ нь Arduino IDE ашиглан програмчлахад зориулагдсан бөгөөд ESP32, ESP8266 гэх мэт төрөл бүрийн Arduino клон, хувилбарууд болон гуравдагч талын самбаруудтай нийцдэг.
Цэнхэр эм самбар гэж нэрлэгддэг самбар нь 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 самбар нь PCB-ийн цэнхэр өнгөтэй нийцүүлэн "Цэнхэр эм" гэж нэрлэгддэг STM32F103C8T6 чип дээр суурилсан STM32F1 хөгжүүлэх самбараас өөр зүйл биш юм. Цэнхэр эм нь 32 МГц давтамжтай, 32 битийн хүчирхэг STM103F8C6T72 ARM процессороор ажилладаг. Уг самбар нь 3.3v логик түвшинд ажилладаг боловч GPIO тээглүүрүүд нь 5V-д тэсвэртэй байхаар шалгагдсан. Энэ нь ESP32 болон Arduino хувилбарууд шиг WiFi эсвэл Bluetooth-тэй хамт ирдэггүй ч 20KB RAM, 64KB флаш санах ойг санал болгодог бөгөөд энэ нь томоохон төслүүдэд хангалттай болгодог. Энэ нь мөн 37 GPIO тээглүүртэй бөгөөд 10-ыг нь ADC идэвхжүүлсэн тул аналог мэдрэгч, SPI, I2C, CAN, UART, DMA-д идэвхжүүлсэн бусад мэдрэгчүүдэд ашиглаж болно. Ойролцоогоор 3 долларын үнэтэй хавтангийн хувьд эдгээр нь гайхалтай үзүүлэлтүүд гэдэгтэй та санал нийлэх болно. Arduino Uno-тай харьцуулсан эдгээр техникийн үзүүлэлтүүдийн хураангуй хувилбарыг доорх зурагт үзүүлэв.

Дээрх үзүүлэлтүүд дээр үндэслэн Blue Pill-ийн ажиллах давтамж нь Arduino UNO-ээс 4.5 дахин их байна.ampSTM32F1 хавтанг хэрхэн ашиглах талаар бид 1.44″ TFT дэлгэцтэй холбож, "Pi" тогтмолыг тооцоолох программчилна. Самбар утгыг олж авахад хэр их хугацаа зарцуулсныг бид тэмдэглэж, Arduino Uno-г ижил ажлыг гүйцэтгэх хугацаатай харьцуулах болно.
Шаардлагатай бүрэлдэхүүн хэсгүүд
Энэхүү төслийг бүтээхэд дараах бүрэлдэхүүн хэсгүүд шаардлагатай;
- STM32 самбар
- FTDI программист
- Өнгө TFT
- Товчлуур
- Жижиг талхны самбар
- Утас
- Эрчим хүчний банк
- USB-ээс цуваа хөрвүүлэгч
Ердийнх шиг, энэ зааварт ашигласан бүх бүрэлдэхүүн хэсгүүдийг хавсаргасан холбоосуудаас худалдаж авч болно. Хэрэв та төслийг бие даасан горимд ашиглахыг хүсвэл эрчим хүчний банк хэрэгтэй болно.
Бүдүүвч
- Өмнө дурьдсанчлан, бид STM32F1 хавтанг 1.8 инчийн ST7735 дээр суурилсан өнгөт TFT дэлгэцтэй товчлуурын хамт холбох болно.
- Тооцоололыг эхлүүлэхийн тулд самбарт заавар өгөхийн тулд товчлуурыг ашиглана.
- Доорх схемд үзүүлсэн шиг бүрэлдэхүүн хэсгүүдийг холбоно.

Холболтуудыг хуулбарлахад хялбар болгохын тулд STM32 болон дэлгэцийн хоорондох зүү хоорондын холболтыг доор тайлбарлав.
STM32 - ST7735

Бүх зүйл байх ёстой шигээ байгаа эсэхийг шалгахын тулд холболтуудыг дахин нэг удаа шалгаарай. Үүнийг хийсний дараа бид STM32 самбарыг Arduino IDE-тэй програмчлахаар үргэлжлүүлэв.
STM32-д зориулсан Arduino IDE-г тохируулж байна
- Arduino-д хийгээгүй ихэнх самбаруудын нэгэн адил самбарыг Arduino IDE-д ашиглахын өмнө бага зэрэг тохируулга хийх шаардлагатай.
- Энэ нь хавтанг суурилуулахтай холбоотой юм file Arduino Зөвлөлийн менежерээр дамжуулан эсвэл интернетээс татаж аваад хуулж болно files тоног төхөөрөмжийн хавтас руу оруулна.
- Зөвлөлийн менежерийн маршрут нь арай ядаргаатай зам бөгөөд STM32F1 нь жагсаасан самбаруудын дунд байгаа тул бид тэр замаар явах болно. STM32 хавтангийн линкийг Arduino-н сонголтын жагсаалтад нэмж эхэл.
- руу оч File -> Preferences, дараа нь үүнийг оруулна уу URL ( http://dan.drown.org/stm32duino/package_STM32duino_index.json ) доор заасны дагуу хайрцагт оруулаад ok дээр дарна уу.

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

- Суулгах процесс хэдхэн секунд болно. Үүний дараа самбарыг Arduino IDE самбарын жагсаалтаас сонгох боломжтой байх ёстой.
Код
- Код нь Arduino төслийн бусад ноорог бичдэгтэй адил бичигдэх бөгөөд цорын ганц ялгаа нь тээглүүрийг иш татсан арга юм.
- Энэхүү төслийн кодыг хялбархан боловсруулахын тулд бид стандарт Arduino номын сангийн өөрчлөлт болох хоёр номын санг STM32-тэй нийцүүлэхийн тулд ашиглах болно.
- Бид Adafruit GFX болон Adafruit ST7735 номын сангийн өөрчлөгдсөн хувилбарыг ашиглах болно.
- Хоёр номын санг хавсаргасан холбоосоор татаж авах боломжтой. Ердийнх шигээ би кодын товч тайлбарыг хийх болно.
- Бид ашиглах хоёр номын санг импортлох замаар кодыг эхлүүлнэ.

- Дараа нь бид LCD-ийн CS, RST, DC зүү холбогдсон STM32-ийн зүүг тодорхойлно.

- Дараа нь бид өнгөтүүдийг зургаан өнцөгт утгаараа бус дараа нь код доторх нэрээр нь ашиглахад хялбар болгох үүднээс зарим өнгөний тодорхойлолтыг бий болгодог.

- Дараа нь бид самбарыг давтахыг хүсч буй давталтын тоог, ахиц дэвшлийн талбарыг ашиглахын тулд шинэчлэх хугацаатай хамт тохируулна.

- Үүнийг хийсний дараа бид ST7735 номын сангийн объектыг бүтээж, бүх төслийн туршид дэлгэцийг лавлахад ашиглагдана.
- Бид мөн товчлуур холбогдсон STM32-ийн зүүг зааж, төлөвийг нь барих хувьсагчийг үүсгэнэ.

- Үүнийг хийсний дараа бид void setup() функц руу шилжинэ.
- Бид товчлуурыг холбосон тээглүүрийн pinMode()-г тохируулж эхлэх бөгөөд товчлуур дарагдсан үед газартай холбогддог тул зүү дээрх дотоод татах резисторыг идэвхжүүлнэ.

- Дараа нь бид цуваа холболт болон дэлгэцийг эхлүүлж, дэлгэцийн арын дэвсгэрийг хар болгож, интерфэйсийг харуулахын тулд хэвлэх () функцийг дуудна.

- Дараагийнх нь void loop() функц юм. Номын сан/функц ашигласны ачаар хүчингүй давталтын функц нь маш энгийн бөгөөд богино байдаг.
- Бид товчлуурын төлөвийг уншиж эхэлдэг. Хэрэв товчлуур дарагдсан бол бид removePressKeyText() ашиглан дэлгэцэн дээрх одоогийн мессежийг устгаж, drawBar() функцийг ашиглан өөрчлөгдөж буй явцын мөрийг зурна.
- Дараа нь бид тооцоолох эхлэлийн функцийг дуудаж, Pi-ийн утгыг тооцоолоход зарцуулсан хугацаатай хамт гаргана.

- Хэрэв товчлуур дарагдаагүй бол төхөөрөмж дэлгэцтэй ажиллахын тулд товчлуур дарахыг шаардах тул идэвхгүй горимд үлдэнэ.

- Эцэст нь "гогцоо" зурахаас өмнө бага зэрэг хугацаа өгөхийн тулд гогцооны төгсгөлд саатал оруулдаг.

- Кодын үлдсэн хэсэг нь баар зурахаас эхлээд Pi-г тооцоолох хүртэлх ажлуудыг гүйцэтгэхэд зориулагдсан функцууд юм.
- Эдгээр функцүүдийн ихэнхийг ST7735 дэлгэцийн хэрэглээтэй холбоотой бусад хэд хэдэн зааварт тусгасан болно.






- Төслийн бүрэн кодыг доороос авах боломжтой бөгөөд татаж авах хэсэгт хавсаргав.


STM32 руу код байршуулж байна
- STM32f1-д ноорог байршуулах нь стандарт Arduino-тай нийцтэй хавтангуудтай харьцуулахад арай төвөгтэй юм. Кодыг самбарт байршуулахын тулд бидэнд FTDI-д суурилсан, USB-ээс цуваа хөрвүүлэгч хэрэгтэй.
- Доорх схемд үзүүлсэн шиг USB-ыг цуваа хөрвүүлэгчийг STM32-д холбоно уу.

Энд холболтын pin-to-pin газрын зураг байна
FTDI - STM32
- Үүнийг хийсний дараа бид самбарыг програмчлалын горимд оруулахын тулд самбарын төлөвийн холбогчийг нэг байрлалд (доорх gif-д үзүүлсэн шиг) өөрчилнө.
- Үүний дараа самбар дээрх дахин тохируулах товчийг нэг удаа дарснаар бид кодыг байршуулахад бэлэн боллоо.

- Компьютер дээрээ "Ерөнхий STM32F103C самбар"-ыг сонгоод, байршуулах аргын цувааг сонгосны дараа байршуулах товчийг дарж болно.

- Байршуулж дууссаны дараа төлөвийн холбогчийг байрлал руу нь өөрчил "O" Энэ нь самбарыг "ажиллуулах" горимд оруулах бөгөөд одоо байршуулсан код дээр үндэслэн ажиллаж эхлэх ёстой.
- Энэ үед та FTDI-г салгаж, самбарыг USB-ээр нь тэжээж болно. Хэрэв асаалттай болсны дараа код ажиллахгүй бол холбогчийг зөв сэргээсэн эсэхээ шалгаад хавтангийн хүчийг дахин ашигла.
Демо
- Код дууссаны дараа дээр дурдсан байршуулах процессыг дагаж өөрийн тохиргоонд кодыг байршуулна.
- Доорх зурагт үзүүлсэн шиг дэлгэц гарч ирэхийг та харах ёстой.

- Тооцооллыг эхлүүлэхийн тулд товчлуурыг дарна уу. Та ахиц дэвшлийн талбарыг эцэс хүртэл аажмаар гулсуулж байхыг харах ёстой.
- Процессын төгсгөлд Pi-ийн утгыг тооцоололд зарцуулсан цаг хугацааны хамт харуулна.

- Үүнтэй ижил кодыг Arduino Uno дээр хэрэгжүүлдэг. Үр дүнг доорх зурагт үзүүлэв.

- Эдгээр хоёр утгыг харьцуулж үзвэл "Цэнхэр эм" нь Arduino Uno-аас 7 дахин хурдан болохыг харж байна.
- Энэ нь хүнд боловсруулалт, цаг хугацааны хязгаарлалттай төслүүдэд тохиромжтой болгодог.
- Цэнхэр үрлийн жижиг хэмжээтэй нь мөн нэмэлт үйлчилгээ үзүүлдэгtagЭнэ нь Arduino Nano-аас арай том тул Нано хурдан ажиллахгүй газар ашиглах боломжтой.
Баримт бичиг / нөөц
![]() |
STM32 STM32F103C8T6 Системийг хөгжүүлэх хамгийн бага самбар [pdf] Хэрэглэгчийн гарын авлага STM32F103C8T6 Системийг хөгжүүлэх хамгийн бага самбар, STM32F103C8T6, Системийг хөгжүүлэх хамгийн бага самбар, Системийг хөгжүүлэх зөвлөл, Хөгжлийн зөвлөл, Зөвлөл |

