Arduino IDEの完全な代替品ですか?[閉まっている]


50

私は公式のArduino IDEの(ビジュアルに関して)そんなに大したファンではないので、より良い代替物を探し始めました。ただし、私が見つけたプロジェクトのほとんどはアルファ版またはベータ版であり、通常は不完全です。

私は回路基板プログラミングを100%初心者であり、以前Arduinoを使用したことはありませんが、Arduino IDEを集めたものは、ボードへの実際の書き込みを行うavrライブラリの単なるラッパーです。他の「arduinoのようなデバイス」IDEは可能なオプションですか?

繰り返しますが、私はこれに非常に新しいので、ユーザーフレンドリーがいいでしょう。


20
なんてこった。私はフル機能のIDEに慣れており、Wing IDE(Python用)やVisual Studioのようなものから、Arduinoの人々が「IDE」と呼んでいるものに行くことは、顔をpunchられたようなものでした。それに加えて、Arduinoビルドプロセスのかなりの部分はJavaソースで行われます。メイクファイルを出力するなどの賢明なことをするのではなく、独自のビルドプロセスを管理するのは悪夢です。
コナーウルフ

1
私はArduinoでEclipseを使用しました(arduino.cc/playground/Code/Eclipseおよびrobertcarlsen.net/2009/10/31/arduino-in-eclipse-989をチェックしてください、それは本当にうまく動作します-それは速く、きれいで、素晴らしいショートカットです)唯一の欠点は、最初のセットアップに時間がかかることです:)
ダン

2
TextMate、avr-libc、make、screenの前にプログラミングを行ったことがあれば十分です。私は自分自身をAVRプログラミングの初心者と考えていますが、それが私が使用するすべてです。最初に混乱を招くのは、データシートの読み取りです。
tuupola

@VisualMicroいいえ、完全な代替手段ではありません。Stinoについての私のコメントを参照してください。
マルネンライボウコーザー

1
Arduino for Visual Studio ProおよびAtmel Studio 6.1プラグインは、標準またはカスタムハードウェア、コンパイル、アップロード、ブートローダーの書き込み、プログラマー、エキスパートモードライブラリ編集、マルチシリアルモニター、インテリセンス、および他の多くのオプションをサポートするArduino Ideの完全な代替品です初心者と上級ユーザーの両方に。インストールは10分未満です。また、Arduinoの例エクスプローラおよびオプションが含まArduinoのUSBデバッガを
ビジュアルマイクロ

回答:


44

警告、長い説明が近づいています。私はあなたが持っていると思ういくつかの誤解をクリアしたいと思います。

Arduinoは本当に2つの要素です。

  1. avr-gccでコンパイルされたC / C ++ライブラリのコレクションと
  2. 以前に工場からチップにプログラムされた小さなブートローダーファームウェアプログラム。

はい、Arduino IDEは基本的にavr-gcc-AVR Cコンパイラをラップします。プロジェクト、または「スケッチ」には、前述のArduinoライブラリが組み込まれ、avr-gccでコンパイルされます。ただし、これはどれもボードに書き込まれる方法とは関係ありません。これらのスケッチの展開方法は、通常とは少し異なります。

Arduino IDEはボード上のusb-to-serialチップを介してArduinoと通信し、ブートローダーが理解するプログラミングモードを初期化し、ブートローダーが既知の場所に配置して実行するチップに新しいプログラムを送信します。 。「実際の書き込みを行うavrライブラリ」はありません-それは単にArduino IDEがシリアルポートを開いてブートローダーと対話するだけです-これは実行中にもデバッグメッセージがIDEに出力される方法です。

代替IDEは、ブートローダーと同じシリアル通信を行える必要があります。Arduinoは、IDEから既に提供されているワンタッチプログラムアンドランを提供しているすべてのライブラリがあるため、簡単です。私は正直に言って、それがもっと簡単になったり、ユーザーフレンドリーになったりするとは思いません。彼らは、AVRマイクロコントローラーと構築/展開プロセスのすべての詳細を抽象化しました。

代替手段は、avr-studio(コンパイラーにもavr-gccを使用)とICSPプログラマー(購入する必要がある追加のハードウェア)のようなものです。いくつかのレジスタ定義ヘッダーファイルといくつかの便利なマクロ以外は提供されていません。また、AVRチップにはブートローダーが付属していません。これは単なる白紙です。マイクロコントローラでやりたいことはすべて、そのハードウェア周辺機器とレジスタについて詳しく調べ、Cでバイトを移動する必要があります。デバッグメッセージをPCに出力し直したいですか?最初にprint()のUARTルーチンを作成し、コンピューターでターミナルを開きます。

これより1つ下のステップでは、テキストエディターでコードを記述し、Makefileまたはコマンドラインからavr-gccおよびavr-dude(プログラミングコマンドラインツール)を呼び出しています。

それから一歩下がって、テキストエディタでアセンブリを記述し、avr-assemblerとavr-dudeを呼び出しています。

私はこれでどこに行くのか定かではありませんが、既存のIDEとArduinoは絶対に天才で初心者には完璧だと思います-名声への主張ユーザーフレンドリーです。たぶん、あなたが探している答えではなく、ワークフローを学び、それで何かクールなものを作りましょう。


2
私が期待していた答えではありませんでしたが、実際にデバイスの理解を明確にしました。おかげで
n0pe

4
arduino IDEは、実際には3つのものです。C(++)ライブラリ、ハードウェア、およびコンパイル時の直前に何らかの方法でライブラリを記述コードに押し込む一連のJavaコード。
コナーウルフ

21
Arduinoのビルドプロセス素晴らしいです。しかし、それは(現時点では)Arduinoの燃えるような山積みのくだらないテキストエディタに取り返しのつかないほどバインドされてます。OPが望んでいると思う(そして、私も気にしない)のは、別のIDE内からarduinoビルドプロセスを呼び出す方法です。現在のところ、Arduinoビルドを実行する唯一の方法は、IDEのボタンをクリックすることです。スクリプト化できません。
コナーウルフ

6
この答えは少し間違っています。arduino ideは、チップ上のブートローダーを介してアップロードする独自の機能を提供せず、代わりにavrdudeと呼ばれるコマンドラインツールを使用してアップロードします。avr-gccと同様に、avrdudeはarduino製品ではなく、他のIDEまたは単純なMakefileで使用できるように完全に利用可能です。
クリスストラットン

1
@ChrisStratton、誤り/無知を修正するために自由に編集してください。
ジョンL


10

私はSublimeTextを主要なテキストエディタとして使用しているため、SublimeTextのArduinoプラグインであるStinoを見つけることができてとても嬉しかったです。Arduino IDEの完全な代替品です(ただし、Stinoがライブラリを見つけるにはArduino IDEのコピーが必要です)。いくつかのバグがありますが、非常に便利です。Stinoを発見して以来、Arduino IDEにはほとんど触れていません。


@clabacchio賛辞が得られ、賛成票が得られないとき、一般的に人々は投票の概念に慣れていないと思います。そして、私は何もフラグを立てなかったので、ここで何を話しているのかわかりません。
ネンライボウコーザー

申し訳ありませんが、そのコメントにフラグが付けられました。何らかの理由で、自分の投稿にフラグを立てていると思いました。
ネバー

3
この感情に別の声を加えたいだけです。SublimeTextは本当に素晴らしく、このStinoアドオンは本物です。
スティーブクーリー

2
これは絶対に素晴らしいものです。私はすでに崇高なテキストを使用しているため、arduinoアプリケーションを完全に捨てることができます。
コナーウルフ

また、Atom用のmcduinoもあります。
マルネンライボウコーザー

5

偶然にも、先日MariaMoleと呼ばれるこの新しいIDEについて聞いたことがあります:http ://dalpix.com/mariamole


奇妙なことに、Maria-Moleはブラジルで非常に人気のあるキャンディーの名前です。

ここに画像の説明を入力してください


クール!Mac版が利用可能になったときにこれを試してみたい。
マルネンライボウコーサー

4

うん、「Arduino IDE」の作成は基本的にavr-gccとavrdudeの前にフロントエンドを置くことです。実際には、「公式Arduino IDE」以外にもかなり多くの選択肢があります。興味深いのは、EclipseベースのAVR環境です。

http://avr-eclipse.sourceforge.net/wiki/index.php/Plugin_Download


Eclipseもあります。他の誰かが言及したAVRサポートで始まりますが、ArduinoライブラリをロードしてArduinoコードを書くことができます。参照してくださいarduino.cc/playground/Code/Eclipse
ViennaMike

4

個人的には(私が書いたので;))UECIDEをお勧めします。元々、chipKITボードのMPIDEに基づいていましたが、それ自体はArduino IDEのバージョン0023に基づいていましたが、現在は元のコードの多くは残っておらず、すべて書き直されています。

すべてのArduinoボードに加えて、chipKITボード、Launchpad、Maple、さらにホスト全体をサポートします。

ここに画像の説明を入力してください


有望に見える...
horta

UECIDEは、それ以来長い道のりを歩んできました。最新のベータ版を
ご覧ください


4

プラグイン画像
(ソース:visualmicro.com

無料のMicrosoft Visual StudioおよびAtmel Studioプラグインは使いやすく、Arduino IDEの便利な機能をすべて備えています。

スケッチコードはArduino Ideと完全に互換性があります。プラグインは、Arduino Ideと同じビルドプロセスとツールチェーンを使用します。プロジェクトで使用するArduino Ideバージョンを選択します。

コンパイラエラーへのドリルダウン、逆アセンブルされたビュー(ドリルダウンあり)、コード補完、プログラマーまたはUsbによるアップロードなど、多くの追加機能を提供します。

単一のIdeで複数のArduinoバージョンをサポートします。Visual Studioバージョンは、Intel Galileoもサポートしています。

両方のIdeはArduino Yun Wifi / Webサーバーのアップロードをサポートしています。オプションのUsb / Serial / Wifi Arduinoデバッガーもあります

Atmel StudioはVisual Studioに基づいています。Atmel Corp.は、Arduinoマイクロコントローラーを製造する会社です。これは、Atmel Studio IdeがArduinoマイクロコントローラーを認識しており、そのために作られていることを意味します。

Atmel Studioは、シミュレーターなどの他のツールも提供します。

ドキュメントと無料フォーラム


3

私は最近、Arduino IDEであるジョークからcode :: blocks-arduinoに切り替えました。複数のソースファイルを持つより複雑なプロジェクトに適しています。コンパイラーフラグ、ビルドターゲット、および欠落している、または公式のIDEで誤って記述された他の多くのものを完全に制御できますスタンドアロンビルド。直接i2c(twi、好きなものは何でも)デバッグ、シリアルキャプチャ、csv出力などの優れた機能を備えたスーパークールで便利なシリアルモニターなど、アップロードとデバッグに役立つツールがいくつか付属しています。

Windows用にコンパイルされ、Linuxソースが利用可能 http://www.arduinodev.com/codeblocks/

「中間」アプローチはMariaMoleになります。これは残念ながらWindows専用ですが、公式IDEのシンプルさを多く備えていますが、「クラシック」IDEの多くの機能を備えています。両者の顕著な違いは、MariaMoleが.cppファイルと.hファイルを使用するのに対し、code :: blocks-arduinoは公式IDEのように.inoを使用することです。

windowsのみ;( http://hackaday.com/2012/11/29/mariamole-an-alternate-arduino-ide-aimed-at-advanced-users/


2
ここで行われているすべてのArduino IDEバッシングについて、人々は「Arduino」(IDE、ブートローダー/ライブラリ、HW)の目的が、そのようなことに初心者である人々のために「それを馬鹿にする」ことであることを忘れています!そのため、Arduinoは素晴らしい仕事をしました。しかし、ひとたびキャンディーをなめる段階を超えて卒業すると(ほとんどの場合)、avr-gcc、avr-libc、makefile、simavr、gdb、nano、vi、emacsなどのシンプルなエディターは、 Arduino。または、自己設計(または少なくとも組み立てられた)ボードにプレーンベアメタルAVR 8ビットuCを使用します。したがって、おそらくCode :: blocksは良い選択肢ですが、多くの選択肢の1つです。
icarus74

問題は、Arduino IDEがシンプルで使いやすいということではありません。それはいいです。問題は、UIの設計が不十分であることです。Stinoのような代替手段はシンプルですが、UIが優れています。(2013年のようにArduino UIを参照しています。それ以降、いくつかの改善が行われているようです。)
Marnen Laibow-Koser

2

Jon L:s anserはArduinoを非常によく要約しており、彼が代替案に触れているだけなので、それらをもう少し明確にすることができました。

  1. ブートローダーを備えたArduino。
  2. avr-studioおよびWinAVR(gcc)を搭載したWindows pc 、およびデバイスをフラッシュするjtagAVR JTAGICE mkII
  3. WinAVRおよびAVR JTAGICE mkIIを使用しているgnuツールチェーン(LinuxまたはWindows)。

ただし、Jon Lが述べているように、alt1は基本的なものであり、顔からほとんどのものを削除するので簡単です。LEDをオンにし、libのturnOnLED関数を呼び出します。

Alt2。チップとより古典的なIDEについては多少の助けが得られますが、ほとんどのことは自分でやらなければなりません。

Alt3。あなたは自分ですべてをしなければなりませんが、あなたの環境で最大の力を得ることができます。

したがって、どの種類の開発を行うかを選択できるようになりました。AVRの良い点の1つは、jtagなどのツールが非常に手頃な価格であるため、使用するレベルに関係なく動作する非常に安価なプラットフォームであることです。

Arduino上のAVRであるため、jtagコネクタがある場合は、Arduinoボードでalt1,2および3を使用できます。


2

emacs(または同様の)を使用してコードを記述し、makeを作成してデプロイすることができます。arduinoパッケージには、すべてを行うためのmakefileサンプルとスタブが付属しています。



2

Eclipseは優れた代替手段であり、eclipseプラグインがeclipse.baeyens.itにあり、Windows MacおよびLinuxで15分以内にインストールできます。シリアルモニターも備えています。


2

本当に必要なものは別にあります:

  1. コードエディター。
  2. ツールチェーンとコンパイラ。
  3. ブートローダー。

標準のオールインワンArduino IDEには、めちゃくちゃ基本的なエディターが付属しています。最初にエディターを交換することをお勧めします。基本パッケージのステップ2と3に引き続き返信してください。

さらに先に進む準備ができたら、http://playground.arduino.cc/Main/DevelopmentTools で3つの主要な機能すべてを実行できるツールを参照してください 。


主要な編集者はArduinoサポートを徐々に追加しています。たとえば、youtrack.jetbrains.com / issue / CPP
ブライス

1

Danが言ったこと(質問へのコメント):Eclipseは、Arduinoと非常によく機能するフル機能のIDEです。(ただし、セットアップコメントも2番目です)。しかし、それを設定する最も簡単な方法は、他の誰かの作業中のインストールを自分のマシンに移植して、作業中の構成を取得し、そこから微調整を開始することです。


0

私はこのMakefileを使用しています。それはあなたのためにプロセスの大部分を引き受けます。次に、単純なローカルメイクファイルを作成して、ボード固有の詳細を提供します。使い方については本当に素晴らしいドキュメントがあります。次に、好みのテキストエディタを使用してCまたはC ++でコードを記述し、単純なローカルメイクファイルでコンパイルします。アップロードは、リンクしたmakefileでも処理されます。「make upload」を呼び出すだけです。

これは、必要なテキストエディタを使用できるため、優れたソリューションです。すべてのarduinoライブラリに加えて、お持ちのローカルライブラリを簡単にリンクできます。


-1

これは非常に高速で柔軟性のある古いIdeです。Arduinos、およびPaperduinoやtinyUSBなどのArduinoクローンもプログラムできます。また、簡単な方法でUSBまたはシリアルポートをチェックし、ヒューズやその他多くのものをテストできます。

https://code.google.com/archive/p/avr-project-ide/


これは特に良い推奨事項ではありません。プロジェクトは2011年以降更新されておらず、多くの新しいArduinoブランドのボードでは動作しません。(特に、それはArduinoのレオナルドやマイクロのような、任意のATmega32U4ボードをサポートするわけではなく、Arduinoのためか、ゼロなどのARMボードをサポートします。)
duskwuff
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.