Daftar Isi:

Menyiapkan Papan Pil Biru di STM32CubeIDE: 8 Langkah
Menyiapkan Papan Pil Biru di STM32CubeIDE: 8 Langkah

Video: Menyiapkan Papan Pil Biru di STM32CubeIDE: 8 Langkah

Video: Menyiapkan Papan Pil Biru di STM32CubeIDE: 8 Langkah
Video: How to Setup a STM32F103C8 "Blue Pill" Development Board 2024, November
Anonim
Menyiapkan Papan Pil Biru di STM32CubeIDE
Menyiapkan Papan Pil Biru di STM32CubeIDE
Menyiapkan Papan Pil Biru di STM32CubeIDE
Menyiapkan Papan Pil Biru di STM32CubeIDE

Blue Pill adalah papan pengembangan ARM tulang telanjang yang sangat murah. Ini memiliki STM32F103C8 sebagai prosesor yang memiliki 64 kbyte flash dan 20 kbyte memori RAM. Ini berjalan hingga 72 MHz dan merupakan cara termurah untuk masuk ke pengembangan perangkat lunak tertanam ARM.

Sebagian besar contoh proyek dan bagaimana menjelaskan pemrograman papan Blue Pill menggunakan lingkungan Auduino. Meskipun ini berfungsi dan merupakan cara untuk memulai, ini memiliki keterbatasan. Lingkungan Arduino melindungi Anda sedikit dari perangkat keras yang mendasarinya - itulah tujuan desainnya. Karena itu, Anda tidak akan dapat memanfaatkan semua fitur yang ditawarkan prosesor, dan mengintegrasikan sistem operasi waktu nyata tidak benar-benar didukung. Ini berarti bahwa lingkungan Arduino tidak banyak digunakan di industri. Jika Anda ingin berkarir dalam pengembangan perangkat lunak tertanam, Arduino adalah tempat awal yang baik, tetapi Anda harus melanjutkan dan menggunakan lingkungan pengembangan yang digunakan secara industri. ST membantu menyediakan rangkaian lingkungan pengembangan yang sepenuhnya gratis untuk prosesor mereka yang disebut STM32CubeIDE. Ini banyak digunakan di industri, jadi ini bagus untuk dilanjutkan.

Namun, dan ini adalah yang terbesar, STM32CubeIDE sangat rumit dan merupakan perangkat lunak yang menakutkan untuk digunakan. Ini mendukung semua fitur dari semua prosesor ST dan memungkinkan mereka untuk dikonfigurasi secara intim, yang tidak Anda temukan di Arduino IDE karena semuanya dilakukan untuk Anda.

Anda perlu mengatur papan Anda sebagai langkah pertama di STM32CubeIDE. IDE tahu tentang papan pengembangan ST sendiri dan menyiapkannya untuk Anda, tetapi Pill Biru, saat menggunakan prosesor ST, ini bukan produk ST, jadi Anda sendirian di sini.

Instruksi ini membawa Anda melalui proses pengaturan papan Blue Pill Anda, mengaktifkan port serial, dan menulis beberapa teks. Ini tidak banyak, tetapi ini adalah langkah pertama yang penting.

Perlengkapan

STM32CubeIDE - unduh dari situs web ST. Anda perlu mendaftar dan butuh beberapa saat untuk mengunduh.

Papan pil biru. Anda bisa mendapatkannya dari ebay. Anda memerlukan yang memiliki prosesor ST asli karena beberapa tidak. Di ebay perbesar gambar dan cari logo ST pada prosesor.

Debugger/programmer ST-LINK v2 tersedia dari ebay dengan harga beberapa pound.

Kabel serial FTDI TTL ke USB 3.3V untuk output dan 2 kabel header pria ke wanita untuk menghubungkannya.

Program terminal serial seperti Putty.

Langkah 1: Membuat Proyek Baru

Membuat Proyek Baru
Membuat Proyek Baru
Membuat Proyek Baru
Membuat Proyek Baru
  1. Mulai STM32CubeIDE dan kemudian dari menu pilih File|New|STM32 Project.
  2. Di kotak Pencarian Nomor Bagian masukkan STM32F103C8.
  3. Dalam Daftar MCU/MPU Anda akan melihat STM32F103C8. Pilih baris ini seperti pada gambar di atas.
  4. Klik Berikutnya.
  5. Dalam dialog Pengaturan Proyek, beri Anda nama proyek.
  6. Biarkan yang lainnya apa adanya dan klik Finish. Proyek Anda akan muncul di sebelah kiri di panel Project Explorer.

Langkah 2: Mengonfigurasi Prosesor

Mengonfigurasi Prosesor
Mengonfigurasi Prosesor
Mengonfigurasi Prosesor
Mengonfigurasi Prosesor
Mengonfigurasi Prosesor
Mengonfigurasi Prosesor
Mengkonfigurasi Prosesor
Mengkonfigurasi Prosesor
  1. Di panel Project Explorer, buka proyek Anda dan klik dua kali file.ioc.
  2. Pada tab Project & Configuration perluas System Core lalu pilih SYS.
  3. Di bawah SYS Mode and Configuration di drop-down Debug pilih Serial Wire.
  4. Sekarang pilih RCC dalam daftar System Core tepat di atas SYS yang Anda pilih di atas.
  5. Di bawah RCC Mode & Configuration from the High Speed Clock (HSE) drop-down pilih Crystal/Ceramic Resonator.
  6. Sekarang di bawah Kategori lagi, buka Konektivitas dan pilih USART2.
  7. Di bawah Mode dan Konfigurasi USART2 dari drop-down Mode pilih Asynchronous.
  8. Sekarang pilih tab Konfigurasi Jam dan lanjutkan ke langkah berikutnya.

Langkah 3: Mengkonfigurasi Jam

Mengkonfigurasi Jam
Mengkonfigurasi Jam

Anda sekarang dapat melihat diagram jam yang agak menakutkan, tetapi hanya perlu diatur sekali. Ini yang paling sulit untuk dijelaskan di sini karena diagramnya rumit. Semua hal yang perlu Anda ubah disorot pada gambar di atas.

  1. Papan Blue Pill dilengkapi dengan kristal 8 MHz di papan dan itulah yang menjadi default diagram konfigurasi jam, jadi kita tidak perlu mengubahnya.
  2. Di bawah PLL Source Mux pilih pilihan yang lebih rendah, HSE.
  3. Tepat di sebelah kanan atur PLLMul ke X9.
  4. Ke kanan lagi di bawah System Clock Mux pilih PLLCLK.
  5. Ke kanan lagi di bawah APB1 Prescalar pilih /2.
  6. Itu dia. Jika Anda melihat bagian mana pun dari diagram yang disorot dengan warna ungu, Anda telah melakukan kesalahan.

Langkah 4: Simpan dan Bangun

  1. Simpan konfigurasi.ioc dengan Ctrl-S. Ketika Anda ditanya apakah Anda ingin membuat kode, pilih Ya (dan centang Ingat keputusan saya agar Anda tidak ditanya setiap saat). Anda dapat menutup file.ioc.
  2. Sekarang lakukan build dari menu Project|Build Project.

Langkah 5: Menambahkan Beberapa Kode

Menambahkan Beberapa Kode
Menambahkan Beberapa Kode
Menambahkan Beberapa Kode
Menambahkan Beberapa Kode

Sekarang kita akan menambahkan beberapa kode untuk menggunakan port serial yang kita konfigurasikan.

  1. Di Project Explorer buka Core\Src dan klik dua kali main.c untuk mengeditnya.
  2. Gulir ke bawah hingga menemukan fungsi main() dan tambahkan kode yang ditunjukkan di bawah ini tepat di bawah komentar /* USER CODE BEGIN 3 */ lalu lakukan build lagi.

HAL_UART_Transmit(&huart2, (uint8_t *)"Halo, dunia!\r\n", 15U, 100U);

Selanjutnya menghubungkan perangkat keras dan mencobanya.

Langkah 6: Menghubungkan Perangkat Keras

Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras

Menghubungkan ST-LINK v2

ST-LINK v2 seharusnya dilengkapi dengan kabel pita header female to female 4 kawat. Anda perlu membuat koneksi berikut:

Pil Biru ke ST-LINK v2

GND ke GND

CLK ke SWCLK

DIO ke SWDIO

3.3 hingga 3.3V

Lihat gambar pertama di atas.

Menghubungkan Kabel Serial

Jika Anda kembali ke file.ioc dan melihat diagram chip di sebelah kanan, Anda akan melihat bahwa garis Tx UART2 ada di pin PA2. Untuk itu sambungkan pin berlabel PA2 pada papan Blue Pill ke sambungan kabel kuning pada kabel FTDI Serial. Hubungkan juga salah satu pin ground Blue Pill (berlabel G) ke kabel hitam pada kabel serial FTDI.

Lihat gambar kedua di atas.

Langkah 7: Debug

Debug
Debug
Debug
Debug

Colokkan kabel FTDI Serial Anda dan jalankan terminal serial pada 115200 baud. Kemudian pasang ST-LINK v2 Anda dan Anda siap untuk pergi.

  1. Dari STM32CubeIDE pilih Run|Debug. Ketika Debug sebagai dialog muncul pilih STM32 Cortex-M C/C++ Application dan OK.
  2. Ketika dialog Edit Konfigurasi muncul cukup tekan OK.
  3. Debugger akan berhenti pada baris pertama main(). Dari menu pilih Run|Resume dan periksa pesan di terminal serial.

Langkah 8: Melakukan Lebih Banyak

Itu saja, aplikasi STM32CubeIDE pertama Anda dikonfigurasi dan dijalankan. Contoh ini tidak banyak membantu - hanya mengirim beberapa data keluar dari port serial.

Untuk menggunakan periferal lain dan menulis driver untuk perangkat eksternal, Anda harus menangani editor konfigurasi yang menakutkan itu lagi! Untuk membantu, saya telah menghasilkan serangkaian proyek contoh STM32CubeIDE yang mengonfigurasi dan menjalankan semua periferal pada prosesor Blue Pill dalam proyek kecil yang mudah dipahami. Mereka semua open source dan Anda bebas melakukan apa pun yang Anda inginkan dengan mereka. Setiap periferal dikonfigurasi dan kemudian memiliki kode sampel untuk menjalankannya secara terpisah (hampir!) sehingga Anda dapat berkonsentrasi untuk menjalankan hanya satu periferal pada satu waktu.

Ada juga driver untuk perangkat eksternal dari chip EEPROM sederhana hingga sensor tekanan, teks dan LCD grafis, modem SIM800 untuk TCP, HTTP dan MQTT, keypad, modul radio, USB dan juga integrasi dengan FatFS, kartu SD dan FreeRTOS.

Semuanya dapat ditemukan di Github di sini…

github.com/miniwinwm/BluePillDemo

Direkomendasikan: