Агуулгын хүснэгт:
- Хангамж
- Алхам 1: Шинэ төсөл бий болгох
- Алхам 2: Процессорыг тохируулах
- Алхам 3: Цагийг тохируулах
- Алхам 4: Хадгалах ба бүтээх
- Алхам 5: Зарим код нэмэх
- Алхам 6: Тоног төхөөрөмжийг холбох
- Алхам 7: Дебаг хийх
- Алхам 8: Илүү ихийг хийх
Видео: STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах: 8 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
Цэнхэр эм бол нүцгэн ясны ARM хөгжүүлэх самбар юм. Энэ нь 64 кбайт флаш, 20 кбайт RAM санах ойтой STM32F103C8 процессортой. Энэ нь 72 МГц хүртэл ажилладаг бөгөөд ARM суулгагдсан програм хангамж хөгжүүлэх хамгийн хямд арга юм.
Ихэнх жишээ төслүүд, Blue Pill самбарыг Auduino орчныг ашиглан хэрхэн програмчлахыг тайлбарлах болно. Хэдийгээр энэ нь ажилладаг бөгөөд үүнийг эхлүүлэх арга зам боловч хязгаарлагдмал байдаг. Arduino орчин нь үндсэн тоног төхөөрөмжөөс таныг хамгаалах болно - энэ бол түүний дизайны зорилго юм. Үүний улмаас та процессорын санал болгож буй бүх функцийг ашиглах боломжгүй бөгөөд бодит цагийн үйлдлийн системийг нэгтгэх нь үнэхээр дэмжигддэггүй. Энэ нь Arduino орчныг үйлдвэрлэлд өргөн ашигладаггүй гэсэн үг юм. Хэрэв та суулгагдсан програм хангамж хөгжүүлэх чиглэлээр карьераа эхлүүлэхийг хүсч байгаа бол Arduino бол сайн эхлэл боловч та ажлаа хийх хөгжүүлэлтийн орчинг ашиглах хэрэгтэй. ST нь тэдний процессоруудад STM32CubeIDE гэж нэрлэгддэг хөгжлийн үнэгүй орчинг бүрдүүлж өгдөг. Үүнийг үйлдвэрлэлд өргөн ашигладаг тул үүнийг үргэлжлүүлэх нь зүйтэй юм.
Гэсэн хэдий ч энэ нь том боловч STM32CubeIDE нь маш төвөгтэй бөгөөд ашиглахад хэцүү програм хангамж юм. Энэ нь ST -ийн бүх процессоруудын бүх функцийг дэмждэг бөгөөд тэдгээрийг маш нарийн тохируулах боломжийг олгодог бөгөөд үүнийг Arduino IDE -д тааралддаггүй, учир нь энэ бүхэн танд зориулагдсан болно.
STM32CubeIDE -ийн эхний алхам болохын тулд та самбараа тохируулах хэрэгтэй. IDE нь ST -ийн өөрийн хөгжүүлэлтийн самбаруудын талаар мэддэг бөгөөд танд зориулж тохируулдаг боловч Blue Pill нь ST процессорыг ашигладаг боловч энэ нь ST бүтээгдэхүүн биш тул та энд ганцаараа байна.
Энэхүү зааварчилгаа нь Blue Pill самбараа тохируулах, цуваа портыг идэвхжүүлэх, зарим текст бичих үйл явцыг дамжуулж өгнө. Энэ нь тийм ч их биш боловч эхний чухал алхам юм.
Хангамж
STM32CubeIDE - ST вэбсайтаас татаж авах. Та бүртгүүлэх шаардлагатай бөгөөд татаж авахад хэсэг хугацаа шаардагдана.
Цэнхэр эмийн бэлдмэл. Та тэдгээрийг ebay дээрээс авах боломжтой. Танд жинхэнэ ST процессортой, заримд нь байдаггүй шиг хэрэгтэй. Ebay дээр зургийг томруулж, процессор дээрх ST логог хайна уу.
ST-LINK v2 дибаг хийгч/програмистыг ebay дээрээс хэдхэн фунтээр авах боломжтой.
FTDI TTL -ээс USB 3.3V -ийн гаралтын цуваа кабель, 2 эрэгтэй -эмэгтэй толгойн утас.
PuTTY шиг цуваа терминалын програм.
Алхам 1: Шинэ төсөл бий болгох
- STM32CubeIDE -ийг эхлүүлээд цэснээс File | New | STM32 Project -ийг сонгоно уу.
- Хэсгийн дугаар хайх талбарт STM32F103C8 оруулна уу.
- MCU/MPU жагсаалтад STM32F103C8 харагдах ёстой. Дээрх зураг дээрх шиг энэ мөрийг сонгоно уу.
- Дараах дээр дарна уу.
- Төслийн тохиргоо харилцах цонхонд танд төслийн нэр өгнө.
- Бусад бүх зүйлийг байгаагаар нь үлдээгээд Finish дээр дарна уу. Таны төсөл Project Explorer самбарт зүүн талд гарч ирэх болно.
Алхам 2: Процессорыг тохируулах
- Project Explorer хэсэгт өөрийн төслийг нээгээд.ioc файлыг давхар товшино уу.
- Төсөл ба тохиргооны таб дээрээс System Core -ийг өргөжүүлээд SYS -ийг сонгоно уу.
- Дебаг хийх цэснээс SYS горим ба тохиргооны доор Цуваа утсыг сонгоно уу.
- Системийн үндсэн жагсаалтаас RCC -ийг сонгоно уу.
- Өндөр хурдны цаг (HSE) дээрээс RCC горим ба тохиргооны доор болор/керамик резонаторыг сонгоно уу.
- Одоо "Ангилалууд" хэсэгт дахин Холболтыг нээгээд USART2 -ийг сонгоно уу.
- USART2 горим ба тохиргооны горимоос Асинхрон горимыг сонгоно уу.
- Одоо Clock Configuration табыг сонгоод дараагийн алхам руу орно уу.
Алхам 3: Цагийг тохируулах
Та одоо нэлээд төвөгтэй цагийн диаграмыг харж болно, гэхдээ үүнийг ганцхан удаа тохируулах шаардлагатай байна. Диаграм нь нарийн төвөгтэй тул энд тайлбарлахад хамгийн хэцүү байдаг. Дээрх зурган дээр өөрчлөх шаардлагатай бүх зүйлийг тодруулсан болно.
- Цэнхэр эм бэлдмэлийн самбар нь самбар дээр 8 МГц болортой ирдэг бөгөөд энэ нь цагны тохиргооны диаграмм юм. Тиймээс үүнийг өөрчлөх шаардлагагүй болно.
- PLL Source Mux -ийн доод сонголтыг сонгоно уу.
- Зүгээр л PLLMul -ийг X9 болгож тохируулаарай.
- System Clock Mux -ийн баруун талд дахин PLLCLK -г сонгоно уу.
- APB1 Prescalar -ийн доор баруун тийш дахин сонгоно уу /2.
- Ингээд л боллоо. Хэрэв та диаграмын ягаан өнгөөр тодруулсан хэсгийг харвал та буруу зүйл хийсэн болно.
Алхам 4: Хадгалах ба бүтээх
- . Ioc тохиргоог Ctrl-S ашиглан хадгална уу. Та код үүсгэхийг хүсч байгаа эсэхийг асуухад Тийм гэж сонгоно уу (мөн миний шийдвэрийг санаарай гэж асуухгүй байх). Та.ioc файлыг хааж болно.
- Одоо Project | Build Project цэснээс бүтцийг хий.
Алхам 5: Зарим код нэмэх
Одоо бид тохируулсан цуваа портыг ашиглахын тулд зарим код нэмж оруулах болно.
- Project Explorer дээр Core / Src -ийг нээгээд main.c дээр дарж засварлана уу.
- Үндсэн () функцийг олох хүртэл доош гүйлгээд доорх кодыг комментийн доор нэмнэ үү / * USER CODE BEGIN 3 * / дараа дахин бүтээнэ үү.
HAL_UART_Transmit (& huart2, (uint8_t *) "Сайн уу, ертөнц! / R / n", 15U, 100U);
Дараа нь энэ нь тоног төхөөрөмжийг холбож, туршиж үзээрэй.
Алхам 6: Тоног төхөөрөмжийг холбох
ST-LINK v2-ийг холбож байна
ST-LINK v2 нь 4 утастай эмэгтэй, толгой толгой тууз кабельтай байх ёстой. Та дараах холболтуудыг хийх хэрэгтэй.
Blue Pill to ST-LINK v2
GND -ээс GND хүртэл
SWCLK рүү CLK дарна уу
DIO -г SWDIO руу оруулна уу
3.3 -аас 3.3 В хүртэл
Дээрх эхний зургийг үзнэ үү.
Цуваа кабелийг холбож байна
Хэрэв та.ioc файл руу буцаж очоод баруун талын чип диаграмыг харвал UART2 -ийн Tx шугам нь PA2 зүү дээр байгааг харах болно. Тиймээс Blue Pill самбар дээрх PA2 гэж тэмдэглэгдсэн зүүг FTDI цуваа кабель дээрх шар утастай холбоно уу. Мөн Blue Pill -ийн газардуулгын нэгийг (G гэж тэмдэглэсэн) FTDI серийн кабелийн хар утсанд холбоно уу.
Дээрх хоёр дахь зургийг үзнэ үү.
Алхам 7: Дебаг хийх
FTDI Serial кабелийг залгаж, 115200 baud дээр цуваа терминалыг асаана уу. Дараа нь ST-LINK v2-ийг залгаарай.
- STM32CubeIDE -ээс Run | Debug -ийг сонгоно уу. Debug as харилцах цонх гарч ирэх үед STM32 Cortex-M C/C ++ програмыг сонгоод OK дарна уу.
- Тохиргоог засах харилцах цонх гарч ирэх үед зүгээр л OK дарна уу.
- Дебаг хийгч нь main () -ийн эхний мөрөнд эвдэрнэ. Цэснээс Run | Resume -ийг сонгоод цуваа терминал дахь мессежийг шалгана уу.
Алхам 8: Илүү ихийг хийх
Энэ бол таны анхны STM32CubeIDE програмыг тохируулж, ажиллуулж байна. Энэ жишээ нь тийм ч их тус болохгүй - зөвхөн өгөгдлийг цуваа портоос илгээдэг.
Бусад дагалдах хэрэгслийг ашиглах, гадны төхөөрөмжүүдийн драйверуудыг бичихийн тулд та энэхүү төвөгтэй тохируулагч засварлагчтай дахин ажиллах хэрэгтэй болно! Туслахын тулд би Blue Pill -ийн процессор дээрх бүх дагалдах хэрэгслийг ойлгоход хялбар төслүүдэд тохируулж, ажиллуулдаг STM32CubeIDE -ийн хэд хэдэн жишээ төслүүдийг гаргасан. Тэд бүгд нээлттэй эх сурвалж бөгөөд та тэдэнтэй хамт хүссэн зүйлээ хийх эрхтэй. Захын төхөөрөмж бүрийг тохируулсан бөгөөд дараа нь үүнийг тусад нь ашиглах жишээ кодтой (бараг!) Бөгөөд ингэснээр та зөвхөн нэг дагалдах хэрэгслийг нэг дор ашиглахад анхаарлаа төвлөрүүлж чадна.
Энгийн EEPROM чипээс даралт мэдрэгч, текст, график LCD, TCP, HTTP, MQTT -ийн SIM800 модем, товчлуур, радио модуль, USB, FatFS, SD карт, FreeRTOS -тэй нэгтгэх хүртэлх гадаад төхөөрөмжүүдийн драйверууд байдаг.
Тэд бүгдийг Github дээрээс эндээс олж болно …
github.com/miniwinwm/BluePillDemo
Зөвлөмж болгож буй:
Эмийн автомат диспенсер: 5 алхам
Автомат эм тараагч: Энэхүү төсөл нь өндөр наст өвчтөнүүд эм тариа хуваах, тараах найдвартай аргатай байх ёстой анагаах ухааны салбарт ашиглахад зориулагдсан болно. Энэхүү төхөөрөмж нь эмийг 9 хоногийн өмнө хувааж, хүссэн үедээ автоматаар тараах боломжийг олгодог
Эмийн мөрдөгч: 5 алхам
Pill Tracker: Эмээ ууж байгаагаа санахад туслах шаардлагатай олон хүмүүс байдаг. Би энэ төслийг Макей Макей сурган хүмүүжүүлэгчдийн сургалтанд хамрагдах шаардлагын дагуу хийсэн. Алдааг олж засварлах: Таны холбогч утаснууд бие биендээ хүрэхгүй байгаа эсэхийг шалгаарай. Баталгаажуулаарай
Эмийн машин авахыг надад сануулаарай: 5 алхам
Эмийн машин авахыг надад сануулаарай: Энэ бол эм уухыг танд сануулах машин юм. Хүмүүс гадагш гарахаасаа өмнө эсвэл унтахаасаа өмнө эм уухаа мартдаг. Таныг машины дэргэдүүр өнгөрөхөд энэ нь эм унах болно, тиймээс та тогтмол өнгөрч буй газартаа, тухайлбал орны хажууд тавь
Ухаалаг эмийн хайрцаг (IDC2018IOT): 8 алхам
Smart Pill Box (IDC2018IOT): Энэ бол Жонатан Браславер ба Маор Стамати нарын IDC -ийн IOT курсын 2018 оны эцсийн төсөл юм. Энэ бол дараахь онцлог шинж чанар бүхий бүрэн ажиллагаатай загвар юм: 1. Энэ нь SMS илгээдэг
Arduino дээр суурилсан эмийн диспенсер: 5 алхам (зурагтай)
Arduino -д суурилсан эмийн диспенсер: Үүнийг хийхэд маш хялбар бөгөөд маш ашигтай