- Menyiapkan Arduino IDE
- Menyiapkan papan STM8S103F3 untuk Pengaturcaraan Arduino IDE
- LED Berkelip pada STM8S103F3 menggunakan Arduino
- Pemetaan Pin Arduino untuk STM8S103F3
- Menyusun Perpustakaan SPL di Arduino IDE
Arduino tidak diragukan lagi telah berkembang menjadi alat prototaip yang mudah digunakan dan cepat, berkat komuniti pengguna yang menyokongnya. Hari ini, kerana sifat sumber terbuka, platform ini tidak hanya terhad pada papan Arduino tetapi juga papan pengembangan lain seperti NodeMCU, ESP8266, STM32, MSP430, dan lain-lain juga dapat diprogramkan dari Arduino IDE. Sekiranya anda berminat untuk mengetahui caranya, anda boleh mengikuti pautan di bawah.
- Pengaturcaraan NodeMCU dengan Arduino IDE
- Pengaturcaraan ESP8266 dengan Arduino IDE
- Pengaturcaraan STM32 dengan Arduino IDE
- Memprogram MSP430 dengan Energeia (serupa dengan Arduino)
Tanpa keraguan, Arduino IDE sangat bagus untuk pemula, tetapi tetap, untuk pengembangan profesional, ada baiknya bekerja dengan persekitaran dan penyusun asli. Seperti MPLABX untuk PIC Microcontrollers dan Code Composer studio untuk TI Microcontrollers. Menggunakan platform asli membolehkan kita bekerja pada tahap pendaftaran (bahkan tahap pemasangan jika diperlukan) yang membolehkan program menjadi lebih berkesan memori. Inilah sebabnya mengapa ketika kita memulakan tutorial Mikrokontroler STM8Ssiri, pilihan platform adalah penyusun STVD dan Cosmic C, yang kedua-duanya percuma untuk dimuat turun dan digunakan. Malangnya, STVD adalah IDE yang sangat lama dan terasa seperti 90-an ketika bekerja dengannya. Selain itu, alat pengaturcara STVP juga tidak digabungkan dengan IDE dan anda harus menggunakannya secara berasingan. Ini meningkatkan masa penyusunan dan memuat naik dan menjadikan pengembangan dan penyahpepijatan menyakitkan.
Saya mencari alternatif dan ketika itulah Arduino IDE datang untuk menyelamatkan. Alat yang dipanggil Sduino oleh Michael Mayor membolehkan kita memprogram mikrokontroler STM8s (yang paling popular) dengan mudah dari Arduino IDE secara langsung dan hanya memerlukan beberapa minit untuk menyiapkannya dan memulakannya. Apa yang lebih menarik ialah selain menyokong pengaturcaraan gaya Arduino, Sduino juga memungkinkan kita menggunakan Perpustakaan Periferal Standard (SPL), dengan kata lain, kita hampir dapat menyusun program yang sama pada STVD ke dalam IDE Arduino. Walaupun Sduino adalah alat yang hebat, alat ini masih dalam pengembangan dan belum banyak menyokong perpustakaan dan fungsi Arduino. Oleh itu, mari belajar bagaimana menggunakan Arduino IDE dengan Lembaga Pembangunan STM8S103F.Sekiranya anda benar-benar baru dalam lembaga ini, maka periksa permulaannya dengan tutorial STM8S103F. Selain daripada STM8S103F, Sduino juga menyokong mikrokontroler STM8S lain seperti STM8S003, STM8S105C, STM8S105K, STM8S, STM8S208MB, ESP14, dan lain-lain. Prosedur yang dijelaskan dalam tutorial ini adalah sama untuk semua.
Menyiapkan Arduino IDE
Langkah 1: Sekiranya anda baru mengenal Arduino Environment, Muat turun Arduino berdasarkan sistem operasi anda dan pasangkannya.
Langkah 2: Ikuti Fail -> Keutamaan untuk membuka tetingkap pilihan dan tampal pautan yang diberikan di bawah ke papan tambahan menguruskan kotak teks URL dan klik OK.
github.com/tenbaht/sduino/raw/master/package_sduino_stm8_index.json
Langkah 3: Ikuti Alat -> Papan -> Pengurus papan untuk membuka kotak dialog pengurus papan dan cari "sduino". Klik pada pasang dan tutup kotak dialog setelah pemasangan selesai.
Langkah 4: Mulakan semula IDE dan kemudian ikuti Tools -> Board -> STM8S103F3 . Anda boleh memilih papan lain jika anda mempunyai papan pengembangan yang berbeza.
Kini Arduino IDE sudah siap untuk memprogram Lembaga Pembangunan STM8S103F3. Mari kita siapkan papan, sambungkan ke komputer, dan atur cara untuk LED berkedip sederhana.
Menyiapkan papan STM8S103F3 untuk Pengaturcaraan Arduino IDE
Sambungkan ST-Link V2 dengan papan pengembangan seperti gambar di bawah.
Sambungannya agak lurus ke hadapan dan bahagian terbaiknya ialah anda tidak memerlukan komponen luaran. Persediaan perkakasan saya untuk pengaturcaraan ditunjukkan di bawah, saya baru sahaja menggunakan wayar header wanita untuk membuat sambungan saya. Namun, perhatikan bahawa pinout dari ST-Link anda mungkin berbeza dari saya, pastikan untuk mengikuti pinout pada peranti sebelum membuat sambungan.
Buat sambungan dan sambungkan peranti ke komputer anda, pemasangan pemacu akan bermula secara automatik. Anda boleh menggunakan pengurus peranti untuk memastikan jika komputer anda telah menemui ST-LINK V2 dengan betul. Anda juga akan melihat LED ujian di papan berkedip jika ini adalah kali pertama menghidupkan papan.
LED Berkelip pada STM8S103F3 menggunakan Arduino
Sekarang untuk LED berkedip sederhana, kita boleh menggunakan program berkedip dari bahagian contoh. Ikuti Fail -> Contoh -> Contoh_ Generik -> Asas -> Berkedip .
Program lengkap untuk mengedipkan plumbum onboard ditunjukkan di bawah-
batal persediaan () {// inisialisasi pin digital LED_BUILTIN sebagai output. pinMode (LED_BUILTIN, OUTPUT); } // fungsi gelung berulang-ulang selamanya kekosongan gelung () {digitalWrite (LED_BUILTIN, TINGGI); // hidupkan LED (TINGGI adalah tahap voltan) kelewatan (1000); // tunggu digitalWrite kedua (LED_BUILTIN, RENDAH); // matikan LED dengan membuat kelewatan voltan RENDAH (1000); // tunggu sebentar}
Seperti yang anda lihat, ini sangat serupa dengan program Arduino blink. Untuk memuat naik program, pastikan papan anda disambungkan melalui st-link v2 seperti yang dibincangkan di atas dan pilih programmer sebagai "ST-Link / V2" seperti gambar di bawah.
Catatan: Tidak seperti papan Arduino, anda tidak perlu memilih port COM yang tepat untuk memprogram papan. Anda akan menggunakan port COM hanya untuk komunikasi bersiri.
Setelah port COM dipilih, memuat naik kod juga sangat mudah. Cukup tekan butang muat naik (dilingkari dengan warna merah di bawah) dan kod akan disusun dan dimuat naik ke papan kami secara automatik.
Itu sahaja, program ini dimuat naik terus ke papan dan anda akan melihat LED on-board berkelip. Tidak ada perisian muat naik luaran, tidak ada apa-apa. Semudah itu. Anda boleh melihat video di bahagian bawah halaman ini untuk berfungsi.
Pemetaan Pin Arduino untuk STM8S103F3
Sekiranya anda ingin meneruskannya dari sini, anda perlu mengetahui cara menangani setiap pin di papan Pembangunan STM8S103F3. Pemetaan pin dapat difahami dari gambar ini di bawah-
Contohnya dari rajah litar Papan STM8S103F3, kita tahu bahawa LED on-board disambungkan ke PB5. Untuk mengatasi pin ini di Arduino, kita harus menggunakan 3, oleh itu program dapat ditulis sebagai-
batal persediaan () {// inisialisasi pin digital LED_BUILTIN sebagai output. pinMode (3, OUTPUT); } // fungsi gelung berulang-ulang kali selama-lamanya gelung kosong () {digitalWrite (3, RENDAH); // hidupkan LED (TINGGI adalah tahap voltan) kelewatan (1000); // tunggu digitalWrite kedua (3, TINGGI); // matikan LED dengan membuat kelewatan voltan RENDAH (1000); // tunggu sebentar}
Menyusun Perpustakaan SPL di Arduino IDE
Seperti disebutkan sebelumnya, kita juga dapat menggunakan perpustakaan SPL di Arduino IDE. Sekiranya anda ingat, dalam tutorial STIO STM8S sebelumnya, kami menulis kod untuk mengedipkan LED on-board dan juga LED luaran menggunakan butang tekan. Kod yang sama dengan sedikit pengubahsuaian juga dapat disusun di Arduino. Kod yang diubah adalah seperti di bawah.
#define Green_LED GPIOA, GPIO_PIN_3 batal persediaan () {GPIO_DeInit (GPIOA); // sediakan Port A untuk berfungsi GPIO_DeInit (GPIOB); // sediakan Port B untuk berfungsi // Nyatakan PA2 sebagai pin pull up input GPIO_Init (GPIOA, GPIO_PIN_2, GPIO_MODE_IN_PU_IT); // Nyatakan PA3 sebagai pin Output Push Pull GPIO_Init (Green_LED, GPIO_MODE_OUT_PP_LOW_SLOW); // Nyatakan PB5 sebagai pin Output push pin GPIO_Init (GPIOB, GPIO_PIN_5, GPIO_MODE_OUT_PP_LOW_SLOW); } gelung void () {if (GPIO_ReadInputPin (GPIOA, GPIO_PIN_2)) // jika butang ditekan GPIO_WriteLow (Green_LED); // LED ON lain GPIO_WriteHigh (Green_LED); // LED MATI GPIO_WriteReverse (GPIOB, GPIO_PIN_5); kelewatan (100); }
Untuk menyimpulkan Arduino IDE bersama dengan Sduino adalah pilihan yang sangat baik jika anda ingin memulakan pembangunan anda dengan STM8S. Walau bagaimanapun, platform ini masih dalam pembangunan dan banyak perpustakaan Arduino masih belum disokong. Namun, jika anda ingin menggali lebih dalam dan menyumbang kepada perkembangannya, itu akan menjadi bagus. Tetapi, demi pembelajaran, saya akan meneruskan siri tutorial dengan STVD dan pengkomputer C kosmik.