STM32 - Getting Started
Membuat Akun myST
Buat akun dengan menggunakan email pribadi di website https://my.st.com/cas/login?lang=en&service=https%3A%2F%2Fwww.st.com%2Fcontent%2Fst_com%2Fen.html. Akun ini akan digunakan untuk mengunduh software yang diperlukan dan login pada software STM32CubeIDE. Ikut langkah-langkahnya dan lakukan verifikasi email. Simpan username/email dan password dari akun yang telah dibuat. Login pada halaman website tersebut.
Mengunduh Software
Untuk membuat program STM32 maka perlu 2 software berikut yaitu:
- STM32CubeIDE - Untuk membuat program (https://www.st.com/en/development-tools/stm32cubeide.html)
- STM32CubeProgrammer - Untuk memasukkan program ke dalam STM32 (https://www.st.com/en/development-tools/stm32cubeprog.html)
Unduh kedua software tersebut dan pastikan mengunduh versi yang terbaru.
Menginstall Software
- Ekstrak file yang sudah di Unduh lalu lakukan instalasi seperti biasa
- Jika ada muncul popup meminta menginstall driver klik install (biasanya ketika menginstall STM32CubeProgrammer)
Membuka Software
- Buka STM32CubeIDE lalu login dengan klik help > STM32Cube updates> Connection to myST > Enter myST account information lalu masukan email dan password dari akun myST yang sudah dibuat sebelumnya
- STM32CubeProgrammer tidak memerlukan proses login
Membuat Project Baru
Project yang akan dibuat adalah Blinking LED yang terhubung pada pin PB9
- Buka STM32CubeIDE
- Pilih File > New > STM32 Project maka muncul Target Selection
- Pada Commercial Part Number masukan F103C8T6
- MCUs/MPUs List pilih STM32F103C8T6 lalu klik Next

- Masukan Project Name misalnya Latihan 1
- Pastikan Targeted Project Type memilih STM32Cube lalu klik Finish. Jika tidak bisa, pastikan menggunakan STM32CubeIDE versi terbaru

Device Configuration Tool
Setelah membuat project baru maka akan muncul tampilan Device Configuration Tool. Bagian ini berfungsi untuk mengatur perangkat yang akan di-program lalu meng-generate program sesuai dengan pengaturan yang dilakukan. Pada project ini terdapat beberapa hal yang perlu diatur.
- Tab Pinout & Configuration > System Core
1. RCC
- High Speed Clock menjadi Crystal/Ceramic Resonator
- Low Speed Clock menjadi Crystal/Ceramic Resonator

2. SYS
- Debug menjadi Serial Wire
3. GPIO
- Pada Pinout view klik pada PB9 lalu pilihGPIO_Output

- Tab Clock Configuration
HCLK diatur ke 72 lalu tekan enter. Jika ada pop up No solution ... pilih OK dan tunggu hingga proses selesai

- Generate program dengan pilih project > Generate Code atau tekan Alt + K maka akan muncul tampilan baris-baris program hasil generate code tadi.
Mulai Membuat Program
Untuk mengubah kondisi suatu pin maka perlu dilakukan write pada pin tersebut. Pin yang akan diatur adalah PB9. Maksudnya adalah Port B pin ke 9. Syntax-nya adalah
HAL_GPIO_WritePin(GPIOx, GPIO_Pin, PinState);
- x pada GPIOx adalah port yang digunakan sehingga GPIOB
- GPIO_Pin merupakan pin yang akan digunakan yaitu 9 sehingga menjadi GPIO_PIN_9
- PinState di isi dengan kondisi yang diinginkan. 1 atau 0
Sehingga jika akan mengatur PB9 mengeluarkan logika 1 maka programnya adalah
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, 1);
Cari baris program berikut
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
Tambahkan program berikut diantara USER CODE BEGIN WHILE dan USER CODE END WHILE
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, 1);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, 0);
HAL_Delay(500);
Sehingga menjadi seperti berikut
while (1)
{
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, 1);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, 0);
HAL_Delay(500);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
Penjelasan program
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, 1);
Mengatur PB9 agar mengeluarkan output 1 atau high
HAL_Delay(500);
Menahan kondisi terakhir selama 500 milisekon atau setengah detik
Build Project
Build project berguna untuk memeriksa program yang sudah dibuat. Jika masih ada kesalahan maka akan muncul error dengan jumlah tertentu. Untuk mem-build project caranya adalah klik Project > Build Project atau Ctrl + B. Hasil dari build akan muncul pada bagian Console yang ada pada bagian bawah tampilan layar. Pastikan tidak ada errors. Jika tidak ada errors maka STM32 akan meng-generate file .elf yang akan di masukan ke STM32.

Download Program
Download program adalah proses memasukkan ke dalam IC. File yang akan dimasukkan memiliki format [nama_project].elf. File tersebut ada ada di dalam folder Debug dari folder project yang dibuat. Cara menemukan folder project yang dibuat adalah dengan klik kanan pada nama project di Project Explorer > Properties lalu klik Copy full path

Buka software STM32CubeProgrammer lalu klik Open File dan paste folder path di bagian path. Buka folder Debug dan cari file .elf untuk kali ini nama filenya adalah Latihan 1.elf. Pilih lalu klik Open.

Hubungkan ST-Link yang sudah terhubung ke STM32 F103C8T6 ke laptop lalu tekan Connect. Setelah itu tekan tombol Download. Tekan tombol reset pada STM32 maka STM32 akan menjalankan program yang sudah dimasukkan.