まごころせいじつ堂

浜町庄金 研究開発  マイコンで遊んでばっかりで

2018年03月

68HC11命令一覧表

 前回の6800系命令一覧表の追加で68HC11の命令一覧表を作りました。

 6800 Instruction Table


 68HC11はMC6801/MC6803の上位互換で新たにYレジスタが追加されている。これにともない、0x18、0x1a,0xcdのコードはプレフィックスとして扱われる。
07
 ビットを操作するBSET/BCLR、ビットを見て分岐するBRSET/BRCLRと除算IDIV/FDIV命令が追加。
 HD6303と同等のXGDXとXGDY、似た動作をするSTOP、テストモードに入るTEST命令が追加。ただしXGDX命令が割り当てられたコードは異なる。
 HD6303で追加されたAIM/OIM/EIM/TIM命令はない。

33
 プレフィックス0x18はインデックスアドレッシングモードでYレジスタを使うバリエーションが追加されている。

59
 プレフィックス0x1aは新規命令CPDとYレジスタを操作する命令がインデックスアドレッシングモードでXレジスタを使うものがはいる。
 プレフィックス0xcdはXレジスタを操作する命令がインデックスアドレッシングモードでYレジスタを使うものがはいる。

 8080命令がそのまま動くZ80は現行品、6800命令がそのまま動く68HC11も現行品。8ビットマイクロプロセッサのオリジンたちのコードが今も動いているというのはいいですね。

6800系命令一覧表

 MC6800/MB8861/MC6801(MC6803)/HD6301(HD6303)の命令一覧表を作りました。ニーモニックとアドレッシングモードがわかっているかた向けです。
以下のGoogleDriveスプレッドシートで公開しています。コピーしてご自由にお使いください。

※ 2018/3/9 typo STA→STAA,STB→STAB 修正済
※ 2019/2/21 $9D/$DD HCF追加 https://en.wikipedia.org/wiki/Halt_and_Catch_Fire @haserin09 はせりん氏より ありがとうございます

 6800 Instruction table

 作成にあたり各データシートと小松さんの半導体コレクション展示会場を参考にしました。



 表はクリックすると大きめに表示されます。

・MC6800
スクリーンショット 2019-02-21 1.06.37
 始祖。わりあい空きが目立つ。


・MB8861
スクリーンショット 2019-02-21 1.05.59
 富士通製の互換品。独自の命令拡張5種6命令が追加されている。


・MC6801/MC6803
44
 アキュムレータAとBを連結したDレジスタが追加されたシングルチップマイコン。
Dレジスタ周りの操作と乗算MUL、飛ばない分岐命令BRN、Xレジスタの操作とダイレクトモードのJSRが追加。
 アセンブラの表記ではASLをLSLと呼ぶなどのエイリアスが追加されている。表記のみの話で命令が追加されたわけではない。


・HD6301/HD6303
06
 日立がMC6801/MC6803をCMOS化した製品だがXGDM,SLPとMB8861類似のAIM/OIM/EIM/TIM命令が追加されている。
 MC6801/MC6803では$4E/$5Eのコードが"force the PC to function as a 16-bit counter"とあって実行するとフリーランしそうな感じなのだけれども、HD6801/HD6303は未定義命令となっている。これ以外は上位互換。
 なお日立のデータシートではInherentをImpliedと呼んでいる。


 なにか誤りがあれば教えてください。各命令の命令長とサイクル数は各自の宿題とします。

M5Stack Faces入手

 スイッチサイエンスでM5Stackの扱いが始まったのでM5Stack Facesを購入した。

M5Stack[公式]
M5Stack Faces(9軸IMU搭載、各種カバー付き)[スイッチサイエンス]

紹介記事:
M5Stackであそぼう[スイッチサイエンス]
M5Stack −LCDとWi-Fi付きの小型マイコン− と開発環境M5Cloudをためしてみる #m5stack[Developers.IO]
M5Stack : ESP32を利用した開発モジュール[Visuariddim]
M5Stack Faces Pocket Computer[macsbug]

 M5Stack FacesはM5Stack Grayのモデルの電池・裏蓋部分がキーボード取り付け可能なベースになったもの。キーボード部分は3種類のパネルを選んで取り付けることができる。1mくらいのUSB Type-Cケーブルとジャンプワイヤー、ネジ類が付属。説明書はない。

2018M5-1

 LCDコントローラはILI9341。ArduinoではAdafruit-GFXライブラリで制御。
2018M5-2

 キーボードパネル側にはATMega328が乗っていて本体側のESP32とはI2Cで通信する。これらのArduinoスケッチも公開されている。https://github.com/m5stack/FACES
今のところとりあえず作った感がありますね。例えばGameBoy.inoは同時押しには対応していないみたい。

2018M5-3

 Arduino IDEによる開発環境は以下の方法でインストール。たぶんWindows環境ではいちばん簡単。
公式サイトからDownloadを選択し、CP2102ドライバとEPS32-Arduino-IDEをインストール。これだけ。

 クレードルが付属しており置くだけで充電できる。ただし充電中かどうかはわからない。クレードルはI2C端子がポゴピンで出ているが、クレードル側には特に何もないようだ。
2018M5-4


 M5Stackはモジュール間の接続を2x15のコネクタと磁石で固定しているのでスチール机にひっつく。側面の電源ボタンは1回押すとON/リセット、2回カチカチと押すとOFF。ただし側面からUSBで電源供給している場合は電源断になりません。バッテリー駆動かクレードル経由の給電だとOFFになります。
2018M5-5

TFT_graphicstest_PDQを走らせてみたら4〜8時間程度動いていたようです。

 プロトモジュールを付けてみた例。こんな感じになります。
2018M5-6


M5Stack 公式ストア



記事検索
プロフィール

hardyboy

カテゴリ別アーカイブ
月別アーカイブ
QRコード
QRコード
  • ライブドアブログ