STM32F4: Mikrokontroler STM32 berinti ARM Cortex M4
Setidaknya ada 10 seri yang ada di mikrokontroler STM32, yang jika diurutkan dari yang tercepat clock-nya ke yang paling lambat adalah sebagai berikut STM32H7, STM32F7, STM32F4, STM32F3, STM32F2, STM32F1, STMF0, STM32L4, STM32L1, STM32L0.
Penulis pernah mengulas bagaimana memprogram mikrokontroler STM32F1, menggunakan CooCox IDE ataupun Eclipse CDT. Kali ini penulsi akan memperkenalkan famili lain dari rumpun keluarga mikrokontroler STM32, yaitu STM32F4.
Mikrokontroler STM32F4 adalah mikrokontroler yang berintikan prosesor ARM® Cortex®-M4 yang memanfaatkan teknologi NVM dari ST dan ART Accelerator guna mencapai benchmark industri tertinggi sampai dengan 225DMIPS/6-8 CoreMark, dieksekusi dari memori flash yang memiliki frekuensi operasi 180MHz
Seri STM32F4 dilengkapi dengan Digital Signal Processor (DSP) sebagaimana mikrokontroler Tiva C Series dari Texas Instruments. Bagan berikut memberikan gambaran ringkas perbandingan antara mikrokontroler seri STM32F1 dan STM32F4
Berikut adalah diagram blok dari Mikrokontroler seri STM32F4
Jika pembaca pernah mempelajari sebelumnya tutorial tentang STM32F1 yang pernah penulis bahas. Pembaca akan tahu bahwa arsitektur yang digunakan tidak jauh berbeda dengan famili STM32F1. Yang membedakan adalah penambahan beberapa fitur yang dimiliki STM32F4
- Evaluation Board
Untuk menjajal Mikrokontroler STM32F4, pembaca perlu membeli evaluation board-nya yang merupakan modul board Mikrokontroler STM32F4 ditambah berbagai macam antarmuka yang diperlukan dan sudah dipackage dalam satu modul terintergrasi. Ada beragam produk mulai yang dikeluarkan oleh Nuvoton, Nucleo Discovery hingga yang board generik (black board) yang dari sisi harga akan jauh lebih ekonomis dibanding evaluation board lainnya yang bermerek sedangkan secara kualitas dan kemampuan pasti tidak akan kalah, karena sama – sama berinti mikrontroler STM32F4
Berikut adalah board generik (black board) yang penulis gunakan.
Board tersebut menggunakan mikrokontroler STM32F407VET6. Pembaca dapat mengakses datasheet-nya di halaman resmi ST di tautan ini. Berikut adalah skematik rangkaian dari board tersebut
Jika pembaca perhatikan, board tersebut belum termasuk perangkat downloader STLINK V2. Jadi pengguna harus membelinya terpisah untuk dapat mendownload program ke mikrokontroler.
Jangan lupa menginstall drivernya terlebih dahulu sebelum digunakan. Untuk Sistem Operasi Windows 7 seperti yang saya gunakan, anda bisa unduh di sini. 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
- Menghubungkan STLINK ke Black Board
Black board memiliki koneksi antarmuka JTAG sedangkan STLINK V2 menggunakan antarmuka SWD. Lalu bagaimana menghubungkan keduanya? Programmer tidak perlu menghubungkan semua pin yang dimiliki black board hanya 4 diantaranya yang perlu dihubungkan ke STLINK V2 sebagaimana ditunjukkan oleh gambar
Untuk menguji apakah koneksi antara STLINK V2 ke black board tidak mengalami masalah. Pengguna dapat menggunakan ST-LINK Utility. ST-Link Utilty nantinya 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,
Jika sudah diinstal, jalankan STLINK Utility dan klik Connect melalui menu Target > Connect. Jika berhasil, tampilan STLINK utility akan menjadi seperti berikut
- Whats Next?
Selamat, kini anda telah siap untuk memulai memprogram mikrokontroler STM32F4. Pembaca dapat membaca tulisan selanjutnya tentang bagaimana menginstall Eclipse CDT dan toolchain yang diperlukan untuk memprogram Mikrokontroler STM32 menggunakan Eclipse CDT dan GCC Compiler juga jangan lupa untuk menginstall CubeMX yang pernah penulis bahas pada tulisan lalu.
Berikutnya, penulis akan menujukkan bagaimana membuat program pertama pada mikrokontroler STM32F4 menggunakan Eclipse CDT.