Агуулгын хүснэгт:

STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах: 8 алхам
STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах: 8 алхам

Видео: STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах: 8 алхам

Видео: STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах: 8 алхам
Видео: Тэр миний нүцгэн зургийг тараачихаж 2024, Арваннэгдүгээр
Anonim
STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах
STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах
STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах
STM32CubeIDE дээр цэнхэр эмийн бэлдмэлийг тохируулах

Цэнхэр эм бол нүцгэн ясны 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: Шинэ төсөл бий болгох

Шинэ төсөл бий болгох
Шинэ төсөл бий болгох
Шинэ төсөл бий болгох
Шинэ төсөл бий болгох
  1. STM32CubeIDE -ийг эхлүүлээд цэснээс File | New | STM32 Project -ийг сонгоно уу.
  2. Хэсгийн дугаар хайх талбарт STM32F103C8 оруулна уу.
  3. MCU/MPU жагсаалтад STM32F103C8 харагдах ёстой. Дээрх зураг дээрх шиг энэ мөрийг сонгоно уу.
  4. Дараах дээр дарна уу.
  5. Төслийн тохиргоо харилцах цонхонд танд төслийн нэр өгнө.
  6. Бусад бүх зүйлийг байгаагаар нь үлдээгээд Finish дээр дарна уу. Таны төсөл Project Explorer самбарт зүүн талд гарч ирэх болно.

Алхам 2: Процессорыг тохируулах

Процессорыг тохируулах
Процессорыг тохируулах
Процессорыг тохируулах
Процессорыг тохируулах
Процессорыг тохируулах
Процессорыг тохируулах
Процессорыг тохируулах
Процессорыг тохируулах
  1. Project Explorer хэсэгт өөрийн төслийг нээгээд.ioc файлыг давхар товшино уу.
  2. Төсөл ба тохиргооны таб дээрээс System Core -ийг өргөжүүлээд SYS -ийг сонгоно уу.
  3. Дебаг хийх цэснээс SYS горим ба тохиргооны доор Цуваа утсыг сонгоно уу.
  4. Системийн үндсэн жагсаалтаас RCC -ийг сонгоно уу.
  5. Өндөр хурдны цаг (HSE) дээрээс RCC горим ба тохиргооны доор болор/керамик резонаторыг сонгоно уу.
  6. Одоо "Ангилалууд" хэсэгт дахин Холболтыг нээгээд USART2 -ийг сонгоно уу.
  7. USART2 горим ба тохиргооны горимоос Асинхрон горимыг сонгоно уу.
  8. Одоо Clock Configuration табыг сонгоод дараагийн алхам руу орно уу.

Алхам 3: Цагийг тохируулах

Цагийг тохируулах
Цагийг тохируулах

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

  1. Цэнхэр эм бэлдмэлийн самбар нь самбар дээр 8 МГц болортой ирдэг бөгөөд энэ нь цагны тохиргооны диаграмм юм. Тиймээс үүнийг өөрчлөх шаардлагагүй болно.
  2. PLL Source Mux -ийн доод сонголтыг сонгоно уу.
  3. Зүгээр л PLLMul -ийг X9 болгож тохируулаарай.
  4. System Clock Mux -ийн баруун талд дахин PLLCLK -г сонгоно уу.
  5. APB1 Prescalar -ийн доор баруун тийш дахин сонгоно уу /2.
  6. Ингээд л боллоо. Хэрэв та диаграмын ягаан өнгөөр тодруулсан хэсгийг харвал та буруу зүйл хийсэн болно.

Алхам 4: Хадгалах ба бүтээх

  1. . Ioc тохиргоог Ctrl-S ашиглан хадгална уу. Та код үүсгэхийг хүсч байгаа эсэхийг асуухад Тийм гэж сонгоно уу (мөн миний шийдвэрийг санаарай гэж асуухгүй байх). Та.ioc файлыг хааж болно.
  2. Одоо Project | Build Project цэснээс бүтцийг хий.

Алхам 5: Зарим код нэмэх

Зарим код нэмж байна
Зарим код нэмж байна
Зарим код нэмж байна
Зарим код нэмж байна

Одоо бид тохируулсан цуваа портыг ашиглахын тулд зарим код нэмж оруулах болно.

  1. Project Explorer дээр Core / Src -ийг нээгээд main.c дээр дарж засварлана уу.
  2. Үндсэн () функцийг олох хүртэл доош гүйлгээд доорх кодыг комментийн доор нэмнэ үү / * 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-ийг залгаарай.

  1. STM32CubeIDE -ээс Run | Debug -ийг сонгоно уу. Debug as харилцах цонх гарч ирэх үед STM32 Cortex-M C/C ++ програмыг сонгоод OK дарна уу.
  2. Тохиргоог засах харилцах цонх гарч ирэх үед зүгээр л OK дарна уу.
  3. Дебаг хийгч нь main () -ийн эхний мөрөнд эвдэрнэ. Цэснээс Run | Resume -ийг сонгоод цуваа терминал дахь мессежийг шалгана уу.

Алхам 8: Илүү ихийг хийх

Энэ бол таны анхны STM32CubeIDE програмыг тохируулж, ажиллуулж байна. Энэ жишээ нь тийм ч их тус болохгүй - зөвхөн өгөгдлийг цуваа портоос илгээдэг.

Бусад дагалдах хэрэгслийг ашиглах, гадны төхөөрөмжүүдийн драйверуудыг бичихийн тулд та энэхүү төвөгтэй тохируулагч засварлагчтай дахин ажиллах хэрэгтэй болно! Туслахын тулд би Blue Pill -ийн процессор дээрх бүх дагалдах хэрэгслийг ойлгоход хялбар төслүүдэд тохируулж, ажиллуулдаг STM32CubeIDE -ийн хэд хэдэн жишээ төслүүдийг гаргасан. Тэд бүгд нээлттэй эх сурвалж бөгөөд та тэдэнтэй хамт хүссэн зүйлээ хийх эрхтэй. Захын төхөөрөмж бүрийг тохируулсан бөгөөд дараа нь үүнийг тусад нь ашиглах жишээ кодтой (бараг!) Бөгөөд ингэснээр та зөвхөн нэг дагалдах хэрэгслийг нэг дор ашиглахад анхаарлаа төвлөрүүлж чадна.

Энгийн EEPROM чипээс даралт мэдрэгч, текст, график LCD, TCP, HTTP, MQTT -ийн SIM800 модем, товчлуур, радио модуль, USB, FatFS, SD карт, FreeRTOS -тэй нэгтгэх хүртэлх гадаад төхөөрөмжүүдийн драйверууд байдаг.

Тэд бүгдийг Github дээрээс эндээс олж болно …

github.com/miniwinwm/BluePillDemo

Зөвлөмж болгож буй: