今年の目標は低レイヤーから攻めることです。
前回CPUを自作したので、少しレイヤーを上がってアセンブラを触ってみたいな〜なにかいい環境はないかな〜マイコンとかどうかな〜ということでやってみました。
Arduinoでいいんじゃない?という声が聞こえてきそうですが、低レイヤーを生で触っている実感が欲しかったので直接アセンブラが書ける&情報が多そう、ということでPICを選びました。
しかし、書籍もネットも如何せん情報が古い・・・
参考にしたのは「やさしいPICマイコンプログラミング入門」https://www.amazon.co.jp/やさしいPICマイコンプログラミング入門-高橋-隆雄/dp/4798018333/ref=sr_1_1?__mk_ja_JP=カタカナ&keywords=「やさしいPICマイコンプログラミング入門」&qid=1647177916&sr=8-1 という2008年の本なのですが、環境構築含めていろいろと躓いたので同じ思いを持つ人のために記録として残しておこうと思います。
ライターから電源を供給してやらないとICが認識されずにエラーになったので最初はやっぱり互換品じゃダメか、とがっかりしましたが大丈夫でした。
開発環境としてはMPLAB IDE(Xじゃないほう)を選択しました。なぜなら本にそう書かれていたので。
バージョンは一番古いものにしないとPickit3が使えないようでした。公式のアーカイブから落とせました。
なんとかIDEからPickitを認識させていざコーディング、をしてみたのですが、どうも10F200だとアセンブラ(機械語に変換する方)がMPASMを選択できていないっぽい。インクルードにも失敗するし早々と諦めました。
続いて12F629で試したところこちらはちゃんとMPASMでプロジェクトが作れてビルドも通りました。
実行しようとすると「インナークロックとMCLREがどっちもONだとまずいよ」という警告が出ましたが当てはまらないので無視して実行。
人生初アセンブラで動くものを作りました。
アセンブラでなにかしら動くものを作る環境って整えるのが難しいんだなあということを思い知った2022年でした。
今後はPICをもう少し続けて、dsPICでイケてるギターエフェクターを作りたいと考えています。