vimでarduinoつかう環境つくるよ
電子工作したい!
8月のインターン以降,web技術を追っかけてまくり日々知らないことに触れてはわくわくしています. 何もかもが新鮮で「こんなことできるんだなぁ」と夢が広がる毎日です.
しかしweb技術をいろいろ勉強する一方で,久しぶりにまた電子工作したくなってきました. やはり理系たるもの定期的にハンダ付けとかしたくなるはずです.
そこでラボにゴロゴロしてるarduinoを一個借りてきました. 久しぶりのarduinoさんです. 振り返ると1年くらい触ってないです. 今はlinuxがのったarduino yunとかいうのもあるみたいです. ...raspberry pi との違いってなんなんでしょう. と思って調べたらwifi無線を発信できるようです. でもこれ残念ながら日本では電波法に引っかかるみたいですねw
さて,というわけで今回はarduinoをさわります. 今まではしっくりくる環境がなかったのでデフォルトのIDEを使っていました. しかし今の僕にはvimがあります. せっかくなので,vimでarduinoの開発を行えるようにしていきます.
環境作成
arduinoIDEのinstall
なにはともあれ,arduinoの環境を公式から拾ってきます.現在(2013/11/20)最新verであるarduino1.0.5のmac OSX用をDL. Download the Arduino Software
起動.
おお,IDEのメニューがいつの間にか日本語になってる. まずはhello worldということでLチカやってみます.
"ファイル">"スケッチの例">"01.basic">"blink"を選択.
// Pin 13 has an LED connected on most Arduino boards. // give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
13番ピンがデジタル出力になっています. LEDと抵抗をブレットボード上にざくざく. 足長い方が+ですよ.
んでかきこみ."マイコンボード"がarduino unoになってることをきちんと確認しておく.
ついたー.
手前のコンデンサや奥のLEDは飾りです.
vimの設定
さて.とりあえずarduinoの動作確認だけしてみました. arduino,IDEまでついてて便利なんだけど,いかんせんこのIDEが使いづらいのですね. fontとか多少設定いじればよいのだろうけど.. そもそも補完機能とかあるのかな?
まぁ仮に便利だったとしても,どうしてもエディタの変更ってストレスがたまってしまいますよね. 慣れ親しんだエディタのキーバインドを打ち込み,「あ,これないんだった」とか. (最近xcodeで":"打つたびに辛い.vimのプラグイン入れようかなぁ) そこで,vimからarduinoを使えないか調査してみました.
そしたらvim-arduino-syntaxなるものがありました. 先人に敬礼です.
さっそく
NeoBundle "sudar/vim-arduino-syntax" :NeoBundleInstall
インストールされました! neobundleについてはググってください.
先ほどの"blink"スケッチを表示してみます.
cd /Applications/Arduino.app/Contents/Resources/java/examples/01.Basics/Blink vim Blink.ino
色ついたー!
これだけでも割と使いやすくなりそうです.vimの機能が使えるのでね.
書き込みについて
同作者さんのプログラムでArduino-Makefileというのがありました. これを使うとコマンドラインからコンパイルやら書き込みやらできるようです.こことか参考になるかな.
【Arduino】Linuxで快適Arduino開発(Vim + Makefile):とさいぬの隠し部屋
なのですが,自分の環境ではperl関連のプログラムインストールで手間取ってしまいました. iterm2の設定によりC-SPCでターミナル表示を切り替えられるようにしてあるので,vimはあくまで編集だけにして,書き込みは標準エディタの書き込みボタンを使おうかなと思います.改善できたらまた記事にしようかな.