- Bahan yang Dibutuhkan
- Diagram Sirkuit
- Mengupload loader Maple Boot ke papan Pengembangan STM32
- Mempersiapkan Arduino IDE dan Menginstal Driver
- Pemrograman STM32 (Pil Biru) Secara Langsung Melalui Port USB
The STM32 Dewan Pembangunan perumahan STM32F103C8 Mikrokontroler semakin semakin populer berkat nya arsitektur ARM Cortex M3, ia memiliki kecepatan operasional yang tinggi dan lebih banyak pilihan perifer. Juga karena, papan ini dapat dengan mudah diprogram menggunakan Arduino IDE, ini telah menjadi pilihan yang lebih disukai bagi banyak penggemar dan insinyur untuk pembuatan prototipe cepat.
Dalam tutorial kami sebelumnya, kami mempelajari dasar-dasar Papan Pengembangan STM32 dan juga memprogramnya untuk mengedipkan LED. Tapi ada satu kelemahan besar dengannya. Untuk memprogram Papan, kami menggunakan modul pemrogram FTDI dan juga harus mengganti jumper boot 0 antara dan posisi 1 saat mengunggah dan menguji kode, yang tentunya merupakan tugas yang menakutkan. Juga port mini-USB di papan Pengembangan sama sekali tidak digunakan. Alasan untuk melakukan itu adalah, ketika papan pengembangan STM32 dibeli, itu tidak dilengkapi dengan boot loader siap Arduino dan karenanya papan tidak akan ditemukan oleh komputer Anda ketika terhubung melalui USB.
Mudah-mudahan, ada boot loader eksperimental yang dikembangkan oleh LeafLabs untuk papan mini Maple. Boot loader ini dapat di-flash ke STM32 satu kali dan setelah itu kita dapat langsung menggunakan port USB dari papan STM32 untuk mengunggah program seperti papan Arduino lainnya. Namun boot loader ini masih dalam tahap pengembangan pada saat mendokumentasikan tutorial ini dan tidak disarankan untuk aplikasi kritis. Sebelum melanjutkan dengan tutorial ini pastikan Anda telah membaca tutorial sebelumnya untuk memahami dasar-dasar papan ini termasuk detail tentang spesifikasi dan pin-out.
Bahan yang Dibutuhkan
- STM32 - (BluePill) Papan Pengembangan (STM32F103C8)
- Programmer FTDI
- Papan tempat memotong roti
- Menghubungkan kabel
- Laptop dengan Internet
Diagram Sirkuit
Untuk memprogram papan STM32 Blue Pill secara langsung melalui port USB, pertama-tama kita perlu mem-flash loader boot Maple ke MCU. Untuk melakukan ini kita perlu menggunakan papan FTDI Serial. Papan ini terhubung ke pin Rx dan Tx dari STM32 seperti yang ditunjukkan di bawah ini.
Pin Vcc pada papan FTDI terhubung ke pin STM32 5V untuk papan daya. Tanah terhubung ke Ground of STM32. Pin Rx dan Tx pada papan FTDI dihubungkan ke pin A9 dan A10 masing-masing pada STM32. Dimana A9 adalah pin Tx dari STM32 MCU dan A10 adalah pin Rx.
Pastikan pin jumper boot 0 pada papan diatur ke 1 (mode pemrograman) saat mengunggah boot loader. Setelah boot loader di-flash pin ini dapat diubah kembali ke posisi awal (mode operasi).
Mengupload loader Maple Boot ke papan Pengembangan STM32
Setelah kami membuat koneksi di atas, sambungkan papan FTDI ke komputer Anda dan ikuti langkah-langkah untuk mem-flash boot loader ke STM32.
Langkah 1: Kita harus mengunduh binari file program boot loader (file bin) dari halaman github. Ada banyak versi file bin, untuk papan Blue Pill gunakan tautan github ini dan klik tombol unduh untuk mengunduh file bin.
Langkah 2: Selanjutnya kita harus mengunduh dan menginstal perangkat lunak STM Flash loader untuk mem-flash file bin yang diunduh ke STM32. Klik tautan ini untuk masuk ke situs web ST dan gulir ke bawah dan klik dapatkan perangkat lunak
Langkah 3: Untuk mengunduh perangkat lunak ini, Anda harus memasukkan alamat email Anda dan tautan unduhan akan dikirim ke email Anda. Kemudian ikuti tautan kembali ke situs web dan klik dapatkan perangkat lunak lagi dan unduhan akan dimulai. Ya itu agak membuat frustasi tapi begitulah seharusnya dilakukan. Jangan lupa untuk memeriksa folder spam Anda untuk mencari E-mail, terkadang perlu beberapa menit sampai E-mail sampai.
Langkah 4: Setelah diunduh, instal perangkat lunak, pastikan papan STM32 Anda terhubung ke komputer Anda melalui papan FTDI dan kemudian luncurkan perangkat lunak. Perangkat lunak akan secara otomatis mendeteksi port COM jika tidak menggunakan Manajer perangkat dan memastikan Anda memilih nomor port COM yang benar. Dalam kasus saya ini adalah COM4. Biarkan sisa pengaturan seperti yang ditunjukkan di bawah ini.
Langkah 5: Klik tombol Berikutnya dua kali dan perangkat lunak akan secara otomatis mendeteksi detail papan dan menampilkan seperti yang ditunjukkan di bawah ini. Papan yang kami gunakan adalah STM32F1 dengan memori flash 128K.
Langkah 6: Pada langkah berikutnya, pilih Unduh ke perangkat dan telusuri ke lokasi tempat kami mengunduh file bin kami pada langkah 1 dan pilih. Klik berikutnya.
Langkah 7: Perangkat lunak akan mengunduh beberapa file yang diperlukan seperti yang ditunjukkan di bawah ini dan kemudian akan memulai proses flashing.
Langkah 8: Setelah flashing selesai dengan sukses, kita akan mendapatkan layar di bawah ini. Klik tutup dan keluar dari aplikasi. Kami telah mem-flash papan STM32 dengan boot loader Arduino dengan sukses. Sekarang kita harus menyiapkan Arduino IDE dan menginstal driver sebelum kita dapat memprogram papan STM32.
Mempersiapkan Arduino IDE dan Menginstal Driver
Ikuti langkah-langkah di bawah ini untuk mengunduh dan menyiapkan Arduino IDE untuk digunakan dengan papan Pengembangan STM 32.
Langkah 1: - Jika Anda belum menginstal Arduino IDE, unduh dan instal dari tautan ini. Pastikan Anda memilih sistem operasi yang benar.
Langkah 2: - Setelah Menginstal Arduino IDE buka dan unduh paket yang diperlukan untuk papan STM32. Ini dapat dilakukan dengan memilih File -> Preferensi .
Langkah 3: - Mengklik Preferensi akan membuka kotak dialog yang ditunjukkan di bawah ini. Di kotak teks URL Boards Manager tambahan, tempel tautan di bawah ini
dan.drown.org/stm32duino/package_STM32duino_index.json
dan tekan OK.
Langkah 4: - Sekarang masuk ke Tool -> Boards -> Board Manager . Ini akan membuka kotak dialog Boards manager, mencari "STM32F1" dan menginstal paket yang muncul.
Langkah 5: Setelah paket diinstal, navigasikan ke C: \ Program Files (x86) Arduino \ hardware \ Arduino_STM32-master \ drivers \ win di mana Anda akan menemukan install_drivers.bat dan install_STM_COM_drivers.bat .
Langkah 6: Klik pada kedua file bat dan instal drivernya. Anda akan mendapatkan layar DOS seperti yang ditunjukkan di bawah ini.
Sekarang Arduino IDE disiapkan untuk pemrograman Papan Pengembangan STM32 (Blue Pill) dan driver juga diinstal.
Pemrograman STM32 (Pil Biru) Secara Langsung Melalui Port USB
Lepaskan papan FTDI dan semua koneksi yang ada dari Anda STM32. Cukup gunakan port micro-USB pada papan STM32 untuk menghubungkannya ke komputer seperti yang ditunjukkan di bawah ini. Pastikan pin jumper 0 diposisikan kembali pada 0 (mode Operasi). Selanjutnya kita tidak perlu lagi mengaktifkan jumper untuk mengupload dan menjalankan program.
Komputer Anda seharusnya dapat menemukan Board sekarang. Tunggu beberapa saat jika Anda melihat driver tambahan sedang diinstal. Kemudian masuk ke Manajer perangkat dan periksa apakah papan STM32 Anda ditemukan di bawah bagian COM dan port seperti yang ditunjukkan di bawah ini. Milik saya terhubung ke COM8 dengan nama Maple Mini.
Pergi ke Tools dan gulir ke bawah untuk menemukan seri Generic STM32F103C seperti yang ditunjukkan di bawah ini. Kemudian pastikan variannya adalah tipe 64k Flash , kecepatan CPU 72MHz dan ubah metode unggah ke STM32duino Bootloader . Juga pilih port COM yang benar sesuai dengan yang ada di pengelola perangkat Anda.
Setelah semua perubahan dilakukan, periksa sudut kanan bawah Arduino IDE dan Anda akan melihat pengaturan berikut ini disetel. Papan STM32 saya terhubung ke COM8 tetapi milik Anda mungkin berbeda
Sekarang Arduino IDE siap memprogram STM 32 Blue Pill Development Boards. Mari kita unggah Sample Blink Program dari Arduino IDE ke papan STM32 Blue Pill untuk memastikan semuanya bekerja dengan baik. Program contoh dapat ditemukan di
Pada program contoh yang terbuka, kita harus membuat perubahan kecil. Secara default program akan ditulis untuk PB1 tetapi di papan kami LED on-board terhubung ke PC13 jadi ganti semua PB1 dengan PC13 dan kami akan melanjutkan. Program contoh lengkap yang dimodifikasi juga dapat ditemukan di bagian bawah halaman ini.
Kode di dalam fungsi loop saja ditunjukkan di bawah ini, di mana kita dapat melihat bahwa pin PC13 tetap TINGGI (aktif) selama 1000 milidetik dan kemudian mematikannya selama 1000 milidetik lagi dan ini dilakukan untuk waktu yang tidak terbatas karena berada di fungsi loop . Dengan demikian LED tampak berkedip dengan interval 1000 milidetik.
digitalWrite (PC13, TINGGI); // nyalakan LED (TINGGI adalah level voltase) penundaan (1000); // tunggu digitalWrite kedua (PC13, LOW); // matikan LED dengan membuat penundaan tegangan rendah (1000); // tunggu sebentar
Tekan tombol unggah pada Arduino IDE dan program Anda akan dikompilasi dan diunggah. Jika semuanya telah berfungsi seperti yang diharapkan maka Anda akan melihat yang berikut ini di konsol Arduino IDE Anda.
Jika Program telah berhasil diunggah maka Anda akan melihat LED Hijau berkedip dengan interval 1 detik seperti yang ditunjukkan pada video di bawah ini. Anda juga dapat bermain-main dengan program untuk menambah atau mengurangi penundaan. Sekarang Anda dapat mulai menggunakan papan Pengembangan STM32 (Pil Biru) seperti papan Arduino lainnya, yaitu Anda tidak perlu lagi mengubah posisi jumper atau menggunakan perangkat keras eksternal untuk mengunggah dan menguji program.
Semoga Anda memahami tutorial dan merasa berguna untuk memulai dengan STM32 Board. Jika Anda memiliki masalah, tinggalkan di bagian komentar, beri tahu saya proyek apa yang harus kami coba dengan papan STM32 ini di masa mendatang.