組込み系マイコンとMac

仕事でAVRというマイクロコントローラー(以下マイコン)を使って、
組み込み系」とよばれる機器開発も行なっている。

汎用の制御信号を受けて、処理を行い、
目的の振る舞いをするようにプログラムする。

35歳からやり始めて、実務で使えるようになるまで1年くらいか。
今では某所で3年間毎日トラブルなく動いている機器もある。

僕の扱うレベルのマイコンはMicroChip社のPICが有名だが、
当時よりMacでの扱いやすさから旧Atmel社のAVRシリーズを使用してきた。
今はこのAtmel社は前出の競合MicroChip社に買収されて、
PIC、AVRとも同じ会社が取り扱うこととなった。
積み上げた開発環境がいつまで使えることやら。

開発言語C
アセンブラで種類ごとに書き換え、最適化高速処理を求めるよりは、
C言語でわかりやすい記述で汎用性があるほうが目的に合っていたし、
年齢的に、その時理解できた選択肢から始める方がよかった。

現在の環境
MacBookAir11-inch,Mid 2011
1.6GHz intel Core i5
2GB 1333MHz DDR
MacOS10.12.6 Sierra

MacBookPro13-inch,Mid 2014
2.6GHz intel Core i5
8GB 1600MHz DDR3
MacOS10.12.6 Sierra

CrossPack for AVR
公式ではないが、Macで開発環境を手っ取り早く構築できる。
最新は
CrossPack-AVR-20131216
だが、もう更新されてない。
もちろんMicroChip買収前なので新規マイコンには未対応。
avr-gcc 4.8.1,avrdude 6.0.1が同時にインストールされる。

Xcode9.2
昔は使用するのに登録が必要だった気がするが、今はどうなんだろう。
CrossPackからコマンドでXcodeProjectを生成してくれる。
C言語の関数に色つけしてくれたり、打ち間違えに気付けて良い。
コマンドラインツールを別途インストールする必要がある。
マイコンへの書込み作業もXcodeでできるが、
バージョンアップするたびに方法が変わるので、
後述のOSX標準のTerminalから書込み。

Terminal
UNIX系端末エミュレーター
主にマイコンへの書込みに使用。

AVR ISP mk2
マイコン書込み機
Atmel社の純正品だがもちろん生産終了
後継機はAtmel-ICE Basicというが購入してまだ開封してない。
今の環境では書込みできないらしい。

主な使用マイコン
ATtiny2313A-SU
ATmega328p

マイコンは買収されるは、書込み機は生産中止で、
後継機は開発環境いじる必要があるわで、ちょっと環境更新停滞中。

MacでAVR開発をされている方は少ないようで、
もはや情報がなくなってきている。
僕も少しでも情報を残そうと思う。

AVR freaksという海外フォーラムが勉強になる。
https://www.avrfreaks.net

ちなみにWindowsには正規開発環境が用意されている。