Pemrograman Mikrokontroler STM32 Dengan Eclipse/GCC (Bagian -1)
Embeddednesia pernah membahas mengenai bagaimana menyiapkan environment yang sesuai untuk memulai pemrogman STM32 menggunakan Coocox IDE. CooCox IDE sendiri sebenarnya dibangun berdasarkan Eclipse IDE dan GCC. Developer telah benar – benar melakukan usaha yang bagus untuk mengembangkan sebuah IDE yang gratis yang menyediakan dukungan untuk development mikrokontroler keluarga STM32
Pemrograman menggunakan Coocox IDE relatif lebih mudah bagi anda yang benar – benar baru dalam pemrograman Mikrokontroler berbasis Cortex-M, hal ini dikarenakan konfigurasi dan tool telah disediakan oleh CooCox. Namun untuk proses development yang lebih serius, hal ini akan menjadi kekurangan, dikarenakan anda tidak memiliki kendali penuh terhadap tool yang digunakan.
Pada tulisan kali ini penulis akan menujukkan bagiamana melakukan setup pemrograman STM32 menggunakan Eclipse/GCC sebagai tool chain untuk STM32.
- Instalasi Eclipse
Langkah pertama yang perlu dilakukan adalah mengunduh dan menginstal Eclipse IDE. Versi terakhir saat tulisan ini dibuat adalah Eclipse Oxygen. Anda bisa mengunduhnya di situs resminya.
Pilih Eclipse IDE for C/C++ Developers. Sesuaikan dengan Arsitektur komputer yang digunakan pada sistem operasi anda. Apakah 32 bit atau 64 bit.
Eclipse IDE didistribusikan dalam bentuk zip. Anda hanya perlu mengekstraknya ke direktori yang anda inginkan lalu menjalankanya. Setelah splash screen Eclipse muncul beberapa saat, kotak dialog Eclipse Launcher akan tampil menanyakan direktori mana yang dipilih untuk menjadi workspace (tempat menyimpan file project) anda. Sesuaikan dengan keinginan anda
- Plugin Eclipse CDT
Langkah berikutnya setelah Jendela Welcome pada eclipse terbuka adalah menginstall plugin C/C++ Developments Tools SDK yang biasa disebut sebagai Eclipse CDT. Eclipse CDT menyediakan IDE untuk pengembangan C/C++ berbasis platform Eclipse. Fitur – fitur yang dimilikinya termasuk membuat project, mengatur proses build untuk berbagai tool-chain, standard make build, dan berbagai tool yang sangat membantu proses development C/C++
Untuk menginstal CDT, masuk ke menu Help > Install new Software, hingga kotak dialog install plugin tampil. Pada drop down Work With, pilih CDT, tunggu beberapa saat hingga Eclipse terhubung ke repositori di Internet, sehingga muncul daftar komponen yang tersedia. Check semua pilihan, lalu klik Next dan ikuti proses instalasinya sampai selesei.
- Plugin GNU MCU Eclipse (Sebelumnya GNU ARM Eclipse)
Plugin berikutnya yang perlu diinstall adalah GNU MCU Eclipse (Sebelumnya bernama GNU Arm Eclipse). Untuk menginstall, gunakan menu Help > Marketplace lalu masukkan keyword GNU MCU Eclipse sehingga muncul item GNU MCU Eclipse, klik button Install pada item yang ingin diinstall lalu klik Install Now di button pojok kanan bawah
Kotak dialog berikutnya adalah halaman konfirmasi dan list komponen yang tersedia, centang saja semua lalu ikuti proses instalasi sampai selesei.
- Windows GCC ARM Embedded / GNU ARM Toolchain
Setelah Eclipse dan pluginnya selesei diinstal dan dikonfigurasi, kini saatnya menginstall GCC untuk mikrokontroler ARM Cortex – M dan Cortex – R. Langkah ini serupa sebagaimana tutorial sebelumnya saat menginstal Coocox IDE. Klik disini untuk membuka halaman pengunduhan atau bisa diunduh di website ARM di tautan ini.
Dan pilih sesuai sistem operasi yang digunakan.
Penulis menggunakan versi exe nya gcc-arm-none-eabi-5_3-2016q1-20160330-win32.exe. Setelah selesei diunduh, install, dan ikuti petunjuk instalasinya.
gcc-arm-none-eabi-6-xxx
). Misalnya gcc-arm-none-eabi-6-2017-q2-update-win32.exe. Sedangkan versi 8 (gcc-arm-none-eabi-8-xxx
) diketahui belum kompatibel saat tulisan ini dibuatUntuk sistem operasi windows 64 bit, secara default, biasanya folder instalasi akan berada di C:\Program Files (x86)\GNU Tools ARM Embedded
. Buka folder tersebut dan masuk direktori bin lalu test apakah proses instalasi berhasil. Gunakan command –version
Catat lokasi tersebut dan masukan konfigurasi tersebut pada Eclipse Preferences melalui menu Windows > Preferences, di bagian MCU > Global ARM Toolchains Path. Pilih default toolchain yang digunakan GNU Tools for ARM Embedded Processor seperti pada gambar
- GNU MCU Eclipse Windows Build Tools
GNU MCU Eclipse Windows Build Tools adalah package windows yang dikustomisasi untuk keperluan build project pada Eclipse CDT (misalnya GNU Make). Pembaca dapat mengunduhnya di tautan ini
Versi terbaru yang digunakan saat tulisan ini dibuat adalah versi 2.12-20190422
. Perhatikan pada Assets, lalu pilih sesuai dengan sistem operasi yang digunakan.
Setelah selesei diunduh, ekstrak file Zip tersebut di direktori pilihan anda, misalnya C:\Program Files\GNU MCU Eclipse\Build Tools
lalu catat lokasi tersebut dan masukan konfigurasi tersebut pada Eclipse Preferences melalui menu Windows > Preferences, di bagian MCU > Global Build Tools Path seperti pada gambar
- GNU MCU Eclipse OpenOCD
GNU MCU Eclipse OpenOCD adalah distribusi baru dari OpenOCD yang dikustomisasi agar lebih baik dan terintegrasi dengan plugin GNU ARM OpenOCD Debugging. Pembaca dapat mengunduhnya di tautan berikut
Versi terbaru yang digunakan saat tulisan ini dibuat adalah versi v0.10.0-12 20190422
. Sebagaimana GNU MCU Eclipse Windows Build Tools. Pembaca bisa mengunduh file tersebut pada bagian Assets , sesuai sistem operasi yang digunakan.
Setelah selesei diunduh, ekstrak file Zip tersebut di direktori pilihan anda, misalnya C:\Program Files\GNU MCU Eclipse\OpenOCD
lalu catat lokasi tersebut dan masukan konfigurasi tersebut pada Eclipse Preferences melalui menu Windows > Preferences, di bagian MCU > Global OpenOCD Path
- GNU MCU Eclipse QEMU
GNU MCU Eclipse QEMU adalah project forking dari project OpenSource QEMU, yang dikustomisasi lebih lanjut untuk mendukung inti Cortex-M dan integrasi yang lebih baik terhadap plugin GNU ARM QEMU Debugging. Pembaca dapat mengunduhnya di tautan berikut.
Versi terbaru yang digunakan saat tulisan ini dibuat adalah versi v2.8.0-6 20190517
. Sebagaimana GNU MCU Eclipse Windows Build Tools. Pembaca bisa mengunduh file tersebut pada bagian Assets , sesuai sistem operasi yang digunakan.
Setelah selesei diunduh, ekstrak file Zip tersebut di direktori pilihan anda, misalnya C:\Program Files\GNU MCU Eclipse\QEMU
lalu catat lokasi tersebut dan masukan konfigurasi tersebut pada Eclipse Preferences melalui menu Windows > Preferences, di bagian MCU > Global QEMU Path
- ST-LINK Utilty
ST-Link Utilty diperlukan untuk memprogram/mentransfer file hex yang telah dicompile dari PC atau notebook ke mikrokontroler STM32. Pada CooCox IDE, tool ini sudah ada secara bawaan. Namun untuk tutorial kali ini, ST-Link harus diinstal secara terpisah. Anda dapat mengunduh di link berikut,
- Hardware
1. Minimum System STM32F103C8T6
Sebagaimana seri tutorial Pemrograman STM32. Penulis menggunakan minimum system STM32 varian bluepill yang berbasis mikrokontroler STM32F103C8T6.
Paket yang tersedia di TOKO BEY dalam bentuk header yang masih belum disolder dengan boardnya (seperti gambar) sehingga anda perlu mensolder terlebih dahulu header kuning ke board minimum system milik anda sehingga siap digunakan.
2. Downloader ST-LINK V2
Untuk mendownload program ke dalam mikrokontroler STM32 diperlukan ST-LINK V2. Selain berfungsi sebagai downloader, ST-LINK V2 ini juga bisa digunakan sebagai tool debuger yang nanti akan sangat membantu untuk problem solving terhadap bug program tanpa harus repot menggunakan cara primitif – menampilkan nilai – nilai variabel pada LCD atau data serial.
Jangan lupa menginstall drivernya terlebih dahulu sebelum digunakan. Untuk Sistem Operasi Windows 7 seperti yang penulis gunakan, dapat diunduh di tautan ini. Setelah selesei, ekstrak file zip dan jalankan stlink_winusb_install.bat. Jika proses instalasi selesei ST-LINK V2 akan terbaca di Device Manager seperti berikut
Sambungkan STLINK V2 dengan STM32
Untuk dapat mendownload program menggunakan STLINK V2, kita tidak perlu menyambungkan semua pin dari STLINK V2 ke mikrokontroler. Cukup 4 pin saja, berikut konfigurasinya Dari STLINK V2 (di sisi kanan) ke mikrokontroler ( di sisi kiri)
(STM32) <—(STLINK)
DCK <— SWCLK
DIO <— SWDIO
GND <— GND
3.3V <— 3.3V
Pada artikel selanjutnya, embeddednesia akan menujukkan bagaimana caranya memulai Project STM32 menggunakan Eclipse CDT
Catatan Pemutakhiran
- 5 tahun ago Update Menambahkan beberapa software yang diperlukan untuk build project di Eclipse CDT: OpenOCD, Windows Build Tool, QEMU
- 5 tahun ago Update Memperbaiki tautan driver STLINK
Anda harus log masuk untuk menerbitkan komentar.