ついこの間、仙台にお出かけしました。仙山線(仙台駅と羽前千歳駅を結ぶ路線、ラフに言うと仙台~山形を結ぶ)で隣駅、「東照宮」駅に降り立ちました。
その名の通り仙台東照宮があるわけですが、きっぷ収集を兼ねて地下鉄の北四番丁駅まで歩いていました。
完全な余談ですが...
東照宮駅には「みどりの窓口」がありません。と言って券売機しかないかというとそうでもなく、一部時間帯には有人窓口が開いています。
みどりの窓口ではないので指定席は取れませんが(取れるところもある。詳細は略)、POS 端末というものがあり、きっぷマニアの心をくすぐります。その POS 入場券がこれってわけです。
普通のマルス券(新幹線とかのきっぷ)と似ていますが、POS 券の特徴は左上に □東 とあるところです。これが JR 東日本の POS 端末で発券されたものを示すわけです。「POS って POS レジ?」と思った方、そうです。その POS システムにプリンタをつけたのが POS 端末です。
...それはさておき、東照宮駅から歩いているとふいに見つけました。マルスマルツを。
何という偶然でしょう。東北地方に1箇所しか無い、あのアキバで有名なマルツパーツの営業店に遭遇してしまったわけです。何という運だ。
道路の反対側を歩いていた僕は咄嗟に横断歩道を渡り、これまで来た道のりを少し逆走して店内に入るのでした...
そこには秋葉原店を1/3くらいに圧縮したような店舗。やっぱり若干高いマイコンボード。店員に相談をする女性の姿。これぞ、懐かしい雰囲気を醸すプチ秋葉原でした。あ、そうそう、僕は今酒田に住んでいます。
マイコンボードみつけた
マルツといえば高いマイコンボードで(自分の中では有名)ですが、実際高いだけあって独自であり便利な物が多いです。学生時代は手が出せませんでしたが、独身社会人パワーの貴族力を以てすればこんなの余裕です(フフーン)。
ということで買いました。CHEWING GUM(MD6603)です。回路図もこちらからどうぞ。
このマイコンボードの特徴は...
- サンケン電気 の MD6603 搭載
- サンケン電気のマイコンを弄れる時がくるとは...
- Intel 8051 コア搭載
- 汎用オペアンプ、高速 12bit ADC 搭載
- GPIO は 5V トレラント
- DSP を2つ搭載し、リアルタイムなタスク切換えを実装
- こんな古風なコアなのに動作周波数は 60MHz と超高速
- 可能性を感じる...
といった内容です。なんだか変態性を見出してしまいました。そりゃあ買いますよ。
ちなみにこのマイコンボードを買おうか冷静に考えていたせいで、青葉城を見学する時間が無くなりました。
...正直まだまだよくわかっていませんが、記事を書きつつ勉強していきたいと思います。
開発環境の導入
さぁやってきました。ただし、このマイコンの開発環境は Windows 限定です。
そういえば最近、Windows アンチから、実は Windows 便利じゃね派になりつつあります。WSL が思ったより快適すぎてやばい。フォントレンダリングは相変わらず糞だけど。
まずは購入したパッケージの中にあるマルツの説明書をどこかに置いていきます。これは冗談ではなく、最近 IDE のアップデートがあったんですね。マルツの説明書ではすでにレガシーとなった IDE について説明されていますので今回は最新の IDE をインストールします。Eclipse ベースです。
まずこちらから「設計サポート」をクリックし、一番上の表にある 64bit 版のツールをダウンロードします。登録が必要。
ゲットした zip ファイルを展開するとそのまま IDE です。実行ファイルをダブルクリックすると IDE が起動します。
その他ツールの導入
実はこのままでは使えず、外部ツールを2つほど導入する必要があります。
それは同梱されている README を読めばいいのですがここで説明します。
まずコンパイラである SDCC の導入。やっぱり Intel 8051 といったら SDCC ですよね。こちらより win64 の実行ファイルを落としてインストールしましょう。
途中出てくるチェックボックスは何も触れずにそのままウィザードを進めていけば OK。そういえばウィザードってもう時代遅れの言葉??昔は「魔法使いのように簡単に設定を進められるという意味で Windows 98 とかに
続いてドライバです。このボードでは CP2102 という Silab の USB-シリアル変換 IC が搭載されていますのでドライバが必要です。README に記載の通り ここから CP210x VCP Windows をインストールします。
サンプルプロジェクトのビルド
これにて開発環境導入は終わりです。次に IDE でサンプルプロジェクトを動かしてみましょう。
あ、そうだ。Eclipse を使った IDE には珍しく、付属の Help Viewer から公式のヘルプが見られます。メニューバーの Help から Help Contents をたどると見えます。英語だけどね。
例によって File からサンプルプロジェクトを作成します。Device は MD6603 を選択し、右側 Examples から Blinking LED なんちゃらというサンプルが選べます。適当にプロジェクト名を打ち込んで作成しましょう。
あとは Project -> Build Project でビルドできます。ihx ファイルができているはずです。
ソースコードは...素直にレジスタを叩いているだけみたいですね。好感が持てます。
書き込み
書き込みにはお察しの通り UART を利用します。
まず書き込みのためにはメニューバーのProject -> Write ihx file で OK です。Sillicon Labsと書かれているものを選択すれば書き込み完了。
そのあとにSW1というリセットスイッチを押すと動き始めます。サンプルプロジェクトでは赤→消灯→緑→消灯となっていれば正常動作。お疲れさまでした。
なんかサンプルプログラムが動いた。コードを見るとただレジスタを直打ちしてるだけみたい。好感が持てる pic.twitter.com/gQmReOpHFY
— しまじゃき (@obknt) August 16, 2021
ちなみに、虫のアイコンを押すとデバッグもできます。回路図を見る限りつないでいるのはあくまでもシリアル通信なのですが、どうやらシリアル通信を介して Eclipse のデバッグ機能を使えるようにしているらしいです。すごい!!
〆
以上導入です。今後はソースコードを読み解いたり色々なプログラムを書いたりしていきたいです。
現状テクニカルマニュアルでさえも持っていない状態なので、早いうちにゲットして研究を進めたいと思っています。