Apakah disarankan untuk tetap menggunakan Arduino IDE?

24

Apakah lebih baik pindah ke AVR studio (atau alternatif lain yang lebih baik?) Melalui Arduino IDE. Rasanya sangat sederhana dan kekanak-kanakan. Saya perlu tahu ide dan pilihan para ahli ..

Anubis
sumber
1
Mengapa Anda tidak mencoba AVR studio saja? Hanya Anda yang dapat memutuskan apakah itu sesuai dengan kebutuhan Anda dan apa yang lebih cepat / mudah bagi Anda .
PetPaulsen
3
@PetPaulsen ya, saya tahu itu cara terbaik. Saya akan segera melakukannya (mungkin besok). Tetapi hanya ingin tahu bagaimana orang lain melihat ini. Anda juga dapat belajar lebih banyak hal seperti itu ..
Anubis
The Arduino Visual Studio Pro Plugin baru-baru ini diperbarui untuk mendukung Atmel Studio 6.1 . Pemasangan kurang dari 10 menit, sketsa Arduino apa pun dapat dibuka, diedit, dikompilasi, unggah + banyak fitur lainnya seperti monitor serial, contoh penjelajah dan debugger USB Arduino
Visual Micro

Jawaban:

19

Keuntungan besar penggunaan mis. AVR Studio adalah kemampuan untuk menggunakan semua perpustakaan yang dibuat untuk ATmega168 / 328 sebelum awal Arduino. Perpustakaan FFT, perpustakaan untuk menggunakan beberapa IC tidak jelas yang telah Anda beli, filter digital yang belum sempurna, dan banyak lagi dapat ditemukan di AVRfreaks dan ratusan situs hobi lainnya.

Anda juga dapat menulis kode yang lebih efisien jika Anda mempelajari cara memanfaatkan pustaka AVR standar dan mempelajari lembar data mikrokontroler (atau tutorial). Untuk aplikasi sederhana, kode arduino mudah ditulis dan didebug. Namun, terkadang Anda ingin mengontrol waktu dengan lebih efisien. AnalogRead()membutuhkan 100μs untuk dieksekusi. Itu sesuai dengan 10ksps (ribuan sampel per detik). Anda dapat dengan mudah memompanya ke 70ksps jika Anda mengakses kode tingkat rendah untuk ATmega168 / 328. Anda dapat melakukan semua itu di IDE Arduino, tentu saja, tetapi pada titik tertentu proyek Anda mungkin menjadi terlalu rumit, dan Anda ingin menulis perpustakaan Anda sendiri dengan fungsi yang lebih cepat. AVR Studio mungkin lebih cocok untuk itu.

Juga, jika Anda ingin memprogram chip AVR apa pun selain yang ditawarkan oleh Arduino, Anda memerlukan programmer dan IDE yang berbeda. Proyek-proyek kecil yang menggunakan kode 1kB dapat dilakukan pada ATtiny. Anda dapat membeli selusin dari mereka dengan harga ATmega328 tunggal. Chip-chip itu murah dan memiliki sebagian besar kemampuan Arduino: I2C, SPI, ADC. Anda bahkan dapat menemukan perpustakaan yang menambahkan antarmuka USB HID! Tidak ada driver serial atau apa pun!

Secara pribadi, saya pertama kali menulis kode di Arduino IDE, tanpa optimasi kode. Jika berhasil, kode itu dapat dengan mudah ditranskripsi ke pustaka C ++ standar dan dibuat lebih efisien.

Jonny B Bagus
sumber
26

Sederhana karena harus dapat diakses oleh semua orang , dan itu berfungsi: semua orang dan adik perempuannya dapat memprogram Arduino.

Jika Anda merasa Anda dapat menangani sesuatu yang lebih seperti Pemrograman Nyata saya pasti akan melakukannya. Anda harus menulis lebih banyak kode, tetapi juga akan memiliki lebih banyak kontrol. Poin penting: perpustakaan Arduino sangat tidak efisien: fungsi suka DigitalWritedan DigitalReaddapat dibuat hingga 50 kali lebih cepat .

stevenvh
sumber
Wow, tidak pernah menyadari itu yang tidak efisien. Saya tahu ada overhead, tapi ... wow.
Polinomial
2
Terima kasih atas berita tentangnya DigitalRead/Write. Tidak pernah tahu itu ..
Anubis
7
@Anubis - Saya menemukan JeeLabs sendiri baru-baru ini. Mereka memiliki salah satu blog terbaik yang pernah saya lihat. Bacaan yang direkomendasikan.
stevenvh
2
Ada pertanyaan beberapa waktu lalu tentang Arduino digital IO speed-up: electronics.stackexchange.com/questions/22585/…
Jon L
12

Sebagian besar respons berfokus pada penggunaan papan Arduino sebagai papan AVR standar. Tetapi Anda juga dapat menggunakan IDE yang lebih maju dan masih memanfaatkan kesederhanaan pengkodean Arduino dan perpustakaan bawaan (bersama dengan kelemahan yang disebutkan di atas). EngBlaze baru saja melakukan tutorial tentang ini: Tutorial: Menggunakan Atmel Studio 6 dengan proyek Arduino

ViennaMike
sumber
3

Arduino IDE memperdagangkan efisiensi kode untuk kenyamanan dan kecepatan pengembangan untuk proyek - proyek kecil . Karena para ahli juga memiliki tenggat waktu , sangat dapat diterima untuk menggunakan Arduino IDE untuk pembuktian konsep cepat atau untuk membantu debug proyek lain.

Jika Anda ingin berspesialisasi dalam pengembangan perangkat lunak tertanam, Anda harus dapat menggunakan alat pengembangan yang lebih kuat, seperti AVR Studio, atau avr-gcc dan IDE pilihan Anda.

Melampaui menguasai alat pengembangan, mempelajari cara kerja mikrokontroler dan mengetahui beberapa perakitan jelas merupakan nilai tambah jika Anda berniat untuk bekerja pada sistem dengan memori kecil, dan / atau persyaratan daya rendah, dan / atau kinerja tinggi.

Sylvain
sumber
Terima kasih atas jawaban terinci, saya lebih suka itu. Saya tentu setuju dengan itu, terutama dengan poin terakhir. Meskipun saya baru mengenal prosesor Atmel, saya tahu sedikit lebih banyak tentang organisasi internal PICs dan tidak dapat membuat sokode perakitan yang rumit. Meskipun tampaknya agak sulit, Anda dapat mempelajari cara tepatnya bagaimana perilaku mikrokontroler. Saya pikir banyak yang akan menemukan jawaban ini bermanfaat. Semoga Anda mendapatkan lebih banyak suara,: D .. (dan ini adalah jawaban pertama Anda, eh?).
Anubis
2
Saat ini, hampir tidak ada situasi di mana fasih dalam perakitan (dapat kode tanpa melihat terus-menerus dalam dokumentasi) berguna sama sekali. Menguasai kompiler Anda , mengetahui ketegarannya, dan opsi yang baik, jauh lebih berguna. Semoga berhasil.
Sylvain