タグ「MC68EZ328」が付けられているもの


DragonBall-EZで遊んでみた(初めてのプログラム編)

DragonBall-EZ(MC68EZ328)に64KByteのメモリ空間ができましたので何かプログラムを動かしてみます。

ちょうどMC68EZ328ADSTOOLS2_0.zipの中にメモリテストプログラムがありましたので、これを実行してみます。

今回アセンブラはEASy68Kを使いました。実は今回のDragonBall-EZで遊ぶきっかけはこのサイトのフォーラムで知った情報なのです。

ソースコードは少しの修正だけでEASy68Kでアセンブルすることができました。

メモリ空間が0x0000〜0x0FFFFまでですので、データは0x01000〜、プログラム本体は0x02000〜とし、0x04000〜0x0FFFFまでをメモリテストの対象としました。

アセンブルを行って生成したSフォーマットファイルをBBUG.EXEで読み込ませます。

bbug_memtest1.png

読み込んだあとにプログラムの先頭アドレスの0x2000から実行します。

bbug_memtest2.png

無事PASSと表示されました。実行後のメモリを見ると昇順に値が書き込まれていることがわかります。

これである程度のプログラムを動かすことができるようになりました。

BBUG.EXEは最低限の機能しかありませんので、この次はもう少し高機能なモニタプログラムを作って動かしてみたいと思います。

あとはフラッシュメモリとかDRAM(残念ながらMC68EZ328はSDRAMは使えません)とかを接続すればモニタを固定して広いメモリ空間を使うことができるはずです。

でも、その前におきまりのLチカをしないといけないですね。

DragonBall-EZで遊んでみた(SRAM接続編)

DragonBall-EZ(MC68EZ328)のブートストラップモードとBBUG.EXEを使うことで、メモリダンプやプログラムを実行する機能は使えるようになりましたが、肝心なプログラムを置くためのメモリがありません。

プログラムを動かすためにはCPUに何らかの外部メモリ(SRAMやDRAMやフラッシュメモリ)を接続する必要があります。

3.3Vで動くメモリはないかなと探したところ、手元に秋月電子で販売されている3.3V電源で使える256Kbit(32K×8bit)のSRAMがありましたのでこれをDragonBallに接続してみました。

このSRAMを2個使うことで16bitバスとします。1個が下位8ビット、もう1個は上位8ビットとなります。メモリ空間は0x0000〜0xFFFFの64KByteとなります。

mc68ez328_sram1.jpg

DragonBall-EZで遊んでみた(BBUG.EXE編)

ひょんなところからMC68EZ328(DragonBall-EZ)を手にいれました。昔Palm PDAで使用されていた68KのCPUです。

MC68EZ328CPU.jpg

このCPUはブートストラップモードがあり、CPUに水晶をつなぐだけで、シリアルポートにPCを接続して、BBUG.EXEというDOSプログラムを使ってメモリの表示、メモリの変更、プログラムのロード、および実行を行うことができます。外付けメモリが全く無くても動くのが面白いところです。まずはCPU単体を動かし、メモリを接続し、プログラムをロードして実行するまでがシリアルポートとBBUG.EXEだけで済んでしまうのです。大掛かりな開発ツールや専用の開発用機器は不要です。

BBUG.EXEはMC68EZ328ADSTOOLS2_0.zipというファイルに含まれています。www.nxp.comのサイトで検索すれば見つかります。

DragonBall-EZのユーザーズマニュアルやドキュメントもwww.nxp.comから入手することができます。

BBUG.EXEを動かすための回路図は以下の通りです。簡単です。

mc68ez328_bbug_curcuit.jpg