STM32CubeIDE + STM32F411CE “Black Pill”

STM32CubeIDE merupakan “Integrated Development Environment for STM32”. Semua fasilitas dalam rancang bangun mikrokontroler STM32 dijadikan 1 atap dalam STM32CubeIDE ini. Mulai dari sarana untuk mengetik source program, melakukan cross compilasi, sampai melakukan download program ke flash chip STM32 lewat ST-LINK V2. Semua dilakukan sekali jalan.

Untuk STM32CubeIDE bisa diinstall di Mac Os, Linux, dan Ms Windows. Kali ini saya menggunakan Linux Slackware versi Current (Kernel 5.4.72). Semua tampilan sama untuk OS yang berbeda karena STM32CubeIDE ini menggunakan Java 🙂

Diperlukan registrasi ke ST untuk dapat mendownload program ini.

Sejatinya hanya dibutuhkan 3 hal dalam rancang bangun mikrokontroler STM32: STM32CubeIDE, board STM32, dan ST-LINK V2 (Kecuali menggunakan Nucleo Board yang sudah onboard ST-LINK V2). Plus tambahan modul sesuai target chip STM32 yang mau dipakai. Ini dilakukan secara otomatis saat memilih target.

Karena menggunakan STM32F4, maka didownload modul-modul yang diperlukan terkait semua seri STM32F4.

ST-LINK V2 juga perlu diupgrade firmware nya. Hal ini mudah dilakukan saat download program ke flash STM32 akan muncul peringatan.

Cara restart : Lepas ST-LINK V2 dan kemudian pasang kembali. Maka proses upgrade bisa dilakukan.
Versi terbaru firmware dari ST-LINK V2 sudah terupgrade.
Setelah upgrade firmware, maka proses flashing bisa dilakukan.

STM32F411CE Black Pill

STM32F411CE Black Pill merupakan board minimum sistem STM32 yang berukuran kecil dan punya harga murah. Karena menggunakan versi F4, maka performa di atas versi F0.

Fasilitas yang menarik : instruksi lengkap DSP (Digital Signal Processing) & FPU (Floating Point Unit). Untuk versi F4 black pill ada 2 pilihan chip STM32 : STM32F401CCU6 (64KB SRAM 256KB Flash Memory), dan STM32F411CEU6 ( 128KB SRAM 512KB Flash Memory). Saya memakai yang terakhir.

Kali ini dicoba menyalakan led pada board ini. Hanya beberapa baris program saja yang diperlukan. LED akan menyala dan padam dengan periode 500mS. Jika user KEY ditekan, maka periode kedip menjadi 100mS. PA0 terhubung ke user KEY switch, dan PC13 terhubung ke LED.

Pada program digunakan Low Level driver yang efisien. Anda dapat juga menggunakan pustaka HAL (Hardware Abstraction Layer) yang populer.

while (1)
{
if (LL_GPIO_IsInputPinSet(GPIOA,LL_GPIO_PIN_0)==0)
{
LL_GPIO_TogglePin(GPIOC,LL_GPIO_PIN_13);
LL_mDelay(100);
}
else
{
LL_GPIO_TogglePin(GPIOC, LL_GPIO_PIN_13);
LL_mDelay(500);
}
}

Langkah-Langkah :

  1. Buat project baru STM32. Pilih Chip STM32F411CE.
  2. Tentukan kaki input PA0 dan output PC13.
  3. Pada kaki input, aktifkan resistor Pull-up, karena switch user KEY mengambang.
  4. Ubah dari pustaka HAL ke LL (contoh program ini menggunakan LL).
  5. Ok, program inisialisasi akan dibuatkan otomatis.
  6. Tambahkan program untuk mengaktifkan LED
  7. Jalankan / flashing ke chip

Ok, ini sekilas gambaran soal STM32CubeIDE & STM32F411 Black Pill. Semoga memberi inspirasi.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s