Tutorial Basic STM32 Rev 0.1 [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

WORKSHOP PEMROGRAMAN STM32



[email protected]



APA YANG HARUS DISIAPKAN?



1. LAPTOP (64 Bit, RAM min 4 Gb) 2. Install/ Update Java Runtime 8u min 201 3. Software STM32CubeMX versi 5.4 4. Driver Pack STM32F1xx untuk STM32CubeMX 5. Software MDK KEIL minimal versi 528a 6. Driver Pack STM32F1xx untuk Keil 7. Hardware ST-Link V2 8. Driver ST-Link V2 9. Hardware Blue pill (STM32F103)



TAHAP 1



CEK LAPTOP



TAHAP 2



Install/ Update Java Runtime 8u241 Cara cek Java pada Laptop



TAHAP 2 Install/ Update Java Runtime 8u241 tersedia pada Flashdisk



TAHAP 2 Install dengan klik 2 kali, pilih sesuai dengan Windows system type



TAHAP 3



Download Software STM32CubeMX min v5.4.0 Link Download Online https://www.st.com/en/development-tools/stm32cubemx.html



TAHAP 3



Download Software STM32CubeMX min v5.4.0



TAHAP 3



Install Software pada folder flashdisk 1. Open folder installer



TAHAP 3 2. Klik 2 kali untuk install



TAHAP 4 Install Driver MCU Package for STM32F1 untuk STM32CubeMX Link Download https://www.st.com/en/embedded-software/stm32cubef1.html



TAHAP 4 Install Driver MCU Package for STM32F1 pada Flashdisk



TAHAP 4 File dalam bentuk RAR



TAHAP 4 Cara menginstal 1. Open STM32CubeMX



TAHAP 4 2. Klik “help” dan pilih “manage embedded software packages”



TAHAP 4 3. Klik “From Local”



TAHAP 4 4. Open File download atau file yang suudah dicopy dalam flasdisk



TAHAP 4 5. Tunggu hingga selesai menambahkan driver pack



TAHAP 5 Software MDK KEIL minimal v 528a 1. Link Download Online https://www.keil.com/download/product/



Klik MDK-Arm



TAHAP 5 2. Isi link data pribadi (pastika email benar), kemudian klik “submit”



TAHAP 5 2.a Contoh pengisian link



TAHAP 5 3. Klik MDK529.EXE untuk download



TAHAP 5 Instal Software Keil 528 1.a Open file software



TAHAP 5 Instal Software Keil 528 1.b Open file software



TAHAP 5 Instal Software Keil 528 1.c Open file software (klik 2x untuk install)



TAHAP 6 Driver Pack STM32F1xx untuk Keil Download Online file https://www.keil.com/dd2/pack/



TAHAP 6 Install Driver Pack STM32F1xx untuk Keil 1. Klik 2 kali file yang telah didownload atau di copy dari flasdisk



TAHAP 6 Install Driver Pack STM32F1xx untuk Keil 2. Pilih Next



TAHAP 6 Install Driver Pack STM32F1xx untuk Keil 3. Pilih Finish



TAHAP 7 Driver ST-Link V2 Link Download https://www.st.com/en/development-tools/stsw-link009.html



TAHAP 7 Install Driver ST-Link V2 1.a Open file



TAHAP 7 Install Driver ST-Link V2 1.b Open file



TAHAP 7 Install Driver ST-Link V2 1.c Klik file dibawah ini untuk install



Struktur Pemrograman



Struktur utama dari pemrograman bahasa C adalah



sebagai berikut: • Header • deklarasi konstanta dan atau variabel. • Fungsi dan atau prosedur. • program utama (main)



• Perulangan (looping)



Struktur Pemrograman



# header int main() //bisa digantikan dengan void main() { //deklarasi variable dan pengaturan while (1) { //tempat dimana program dituliskan } }



Struktur Pemrograman



#include “lcd.h” int main() //bisa digantikan dengan void main() { Init_LCD(); while (1) { lcd_gotoxy(0,0); lcd_print(“ABCDEFGHIJKLMNOP”); }



}



While(1){ makan; cuci; tidur; baca_koran; nonton_tv; masak; }



While(1){ Jika saya lapar { makan; } cuci; tidur; baca_koran; nonton_tv; masak; }



While(1){ Jika saya lapar { makan; } cuci; Jika saya ngantuk { tidur; } baca_koran; nonton_tv; masak; }



INPUT



PROSES



OUTPUT



GPIOA 0



1



2



3



4



5



6



7



8



9



10



11



12



13



14



15



GPIOB PROSES



0



1



2



GPIOC 13



14



GPIOD 0



1



15



3



4



5



6



7



8



9



10



11



Variabel dan Tipe Data Variabel adalah sebuah tempat menyimpan sebuah nilai. Sementara tipe data adalah jenis nilai yang akan tersimpan dalam variabel. Berikut ilustrasi hubungan



variable dan tipe data:



Variabel dan Tipe Data



Tipe Data 1 byte -> [0-255] or [0x00-0xFF] uint8_t unsigned char Cara Penulisan:



uint8_t nama_variable; Contoh: uint8_t uint8_t uint8_t uint8_t



sensor_a; jumlah; botol_1; kondisi=1;



Tipe Data 1 byte -> [-125~124] int8_t signed char Cara Penulisan:



int8_t nama_variable; Contoh: int8_t sensor_a; int8_t jumlah; int8_t botol_1; int8_t kondisi=-1;



Tipe Data 2 byte ->



[0-65535] or [0x0000-0xFFFF] uint16_t unsigned short int



Cara Penulisan



uint16_t nama_variable; Contoh: uint16_t uint16_t uint16_t uint16_t



sensor_a; jumlah; botol_1; kondisi=1;



Tipe Data 2 byte ->



[-32768~32767] int16_t signed short int



Cara Penulisan



int16_t nama_variable; Contoh: int16_t int16_t int16_t int16_t



sensor_a; jumlah; botol_1; kondisi=-1;



Tipe Data 4 bytes -> [0-4.294.967.295] or [0x00000000-0xFFFFFFFF]] uint32_t unsigned int



Cara Penulisan



uint32_t nama_variable; Contoh: uint32_t sensor_a; uint32_t jumlah;



Tipe Data 4 bytes -> [-2147483648~2147483647] or [0x00000000-0xFFFFFFFF]] int32_t signed int



Cara Penulisan



int32_t nama_variable; Contoh: int32_t sensor_a; int32_t jumlah;



Tipe Data 8 bytes -> [0-18.446.744.073.709.551.615] or [0x0000000000000000 - 0xFFFFFFFFFFFFFFFF]



uint64_t Unsigned long long Cara Penulisan uint64_t nama_variable;



Contoh: uint64_t sensor_a; uint64_t jumlah;



Tipe Data 8 bytes -> [−9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,808]



int64_t signed long long Cara Penulisan int64_t nama_variable;



Contoh: int64_t sensor_a; int64_t jumlah;



Pengambilan Keputusan Bahasa



C



menyediakan



beberapa



jenis



pernyataan



pengambilan keputusan (decision making) yaitu sebagai berikut: • Pengambilan keputusan tipe if • Pengambilan keputusan tipe if-else • Pengambilan keputusan tipe switch Sepuah keputusan dapat dilakukan jika persoalan tersebut



memenuhi kriteria/kondisi tertentu yaitu TRUE or FALSE.



Dalam menentukan kondisi digunakan operator relasi dan operator logika. Operator relasi digunakan untuk membandingkan dua buah nilai dengan hasil berupa TRUE atau FALSE. Sedangkan operator logika dipakai untuk menghubungkan ekspresi relasi.



Berikut tabel operator relasi:



Berikut tabel contoh operator relasi:



1 SYS > Debug, Pilih Serial Wire



BUAT NEW PROJECT 6.b Kemudian, atur Debug mode di System Core > SYS > Debug, Pilih Serial Wire



BUAT NEW PROJECT 6.c Tampilan akan berubah menjadi seperti ini



BUAT NEW PROJECT 7.a Analisa Schematic Blue pill



AKTIF LOW



BUAT NEW PROJECT 7.b Atur PC13 Menjadi Output, dengan Pilih GPIO untuk memudahkan monitoring IO.



BUAT NEW PROJECT 7.c Klik PC13, kemudian akan menampilkan interaksi sebagai berikut:



BUAT NEW PROJECT 7.d Pilih GPIO_Output



BUAT NEW PROJECT 7.e Klik PC13 untuk melihat lebih detail konfigurasi PC13



BUAT NEW PROJECT 7.g anda bias merubah konfigurasi sesuai dengan kondisi



BUAT NEW PROJECT 8.a Kemudian, atur Clock Source di System Core > RCC > High Speed Clock, pilih crystal/Ceramic Resonator.



BUAT NEW PROJECT 8.b Tampilan akan berubah seperti ini:



BUAT NEW PROJECT 9.a Pindah TAB ke Clok Configurasi, rubah konfigurasi ke High Speed 1. CARI



2. Rubah nilai ke 72, kemudian enter



BUAT NEW PROJECT 9.b Klik OK



BUAT NEW PROJECT 9.c Tampilan akan berubah seperti ini



BUAT NEW PROJECT 10.a Setelah itu, pindah ke tab Project Manager



BUAT NEW PROJECT 10.b Isikan Project Name dengan nama proyek dan pilih tempat penyimpanan project. Untuk Toolchain / IDE, pilih MDK-ARM V5



BUAT NEW PROJECT 11 Kemudian klik Generate Code. akan muncul tampilan loading:



1. KLIK



BUAT NEW PROJECT 12. Kemudian akan muncul layer seperti ini. Klik “Open Project”



BUAT NEW PROJECT 12. Maka secara otomatis akan membuka program keil



BUAT NEW PROJECT 12. Maka secara otomatis akan membuka program keil



BUAT NEW PROJECT 13.a Tampilan awal keil



BUAT NEW PROJECT 13.b Klik untuk show isi file project



BUAT NEW PROJECT 14 Untuk menulis program, buka “Nama Project” > Application/User > klik 2x main.c



BUAT NEW PROJECT 15. Menghidupkan LED PC13 dengan menambahkan tulisan dibawah ini sebagai contoh



COMPILE 16. Klik Build (F7)



COMPILE 17.a Build Finish (No Error)



COMPILE 17.b Build Finish (Error)



COMPILE 18. Upload Program dengan klik icon dibawah ini atau klik “flash” → klik “Download”



COMPILE 19. Upload Done



SETTING STLINK V2 1 Pilih Flash > Configuration Flash Tool



SETTING STLINK V2 2 Pilih Debug > ST-Lonk Debug > Setting



1. KLIK



2. KLIK



SETTING STLINK V2 2 Pilih Flash Download > Cek list Reset and Run > Klik OK > Klik OK



1. KLIK



2. KLIK



1. Membuat program LED Toggle



HAL_GPIO_WritePin(GPIOB, GPIO_PIN_6 | GPIO_PIN_5 | GPIO_PIN_4 | GPIO_PIN_3, GPIO_PIN_RESET); HAL_Delay(500); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_6, GPIO_PIN_SET); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, GPIO_PIN_SET); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_4, GPIO_PIN_SET); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_3, GPIO_PIN_SET); HAL_Delay(500);



Thank you



TERIMAKASIH