今回は卒研で使うマイコンの選定を行う.
卒研を進めるにあたり,必要となる要件は以下.
- キーマトリクスにアクセスするための26のIOポート
- USBデバイス機能
- 暗号化ライブラリ
- 安価
通常のキーボードは8*18程度のピンによりキーマトリクスの読み込みを行う.
そのため,USBや電源の他に自由に扱えるIOポートが26必要となる.DIPは多くても28ピンなので,扱いやすい44pinTQFPなどが最適な候補と考える.
キーボードの接続はUSBを用いることが多い.また,扱いやすい点から接続にはUSBを用いる.そのため,USB機能が必須となる.
データは暗号化するため鍵共有や暗号化について扱いやすいライブラリが存在することが望ましい.
実際に実装して使用することを考えると,安価であることが望ましい.
以上の条件を考えると,PIC32MX1XX/2XXシリーズが適当であると考えた.28pinDIPや44pinDIPが存在し,USB機能も持つ.PIC32ファミリなのでHarmonyを用いることでAESやECC,DH鍵共有を扱うことができる.価格についても,PIC32MX210F016であれば28pinDIPが382円,44pinTQFPが396円となっている.
そしてなにより手持ちでPIC32MX210F016B(28pinDIP)が何故か5つもあったため,ひとまずこれを用いて実験を行う.ただしプログラムメモリが16KBしかないため,プログラムメモリが足りない場合は容量の大きいモデルに変更する.
ここから追記
USBと暗号を使う場合プログラムメモリ16[kB]では足りないことがわかった.USBキーボードのデモだけで20[kB]ほど使う.最低でも32[kB]以上はほしい.そのため,容量が大きいモデルを探す必要がある.PIC32MX270F256Bとか.これは大体600円くらい.