1. はじめに
ソフトウェアの設計段階では、状態遷移表や状態遷移図をよく作成します。殊に
組み込み用途に関しては、有効な設計手法だと言えます。個人的には最近、
Excelにて表形式で記述しますが、状態遷移表が完成してからそれをコーディン
グ&デバッグして適切に状態遷移が行われているか、またその時の出力 (アクシ
ョン)は正当かを検証しなくてはなりません。今回の企図はこの「コーディング
とデバッグ」のコストを軽減させるツールを作成することです。実はこのような
機能を含む市販品もあり、「ZIPC」(キャッツ(株))という CASEツールが有名な
ようです。私は使用したことはありませんが、Webページ
http://www.zipc.com/j_title.htmを見た限りではかなり強力なツールでモデ
リングからデバッグまでサポートされています。ZIPC もソースを自動生成しま
すが、C/C++ソースです。一概には言えませんが通常、C/C++ソースよりアセンブ
リ言語で記述した方がプログラムサイズは節約できます。今回取り上げさせてい
ただくツールはアセンブリ言語ソース、Cソースを自動生成するもので、ROMサイズの制約
を受けていたり、また開発環境がアセンブラ主流であったりするような場合に有
効と思われます。また、機能的にも簡単・明瞭なので使い方も至って簡単
です。状態遷移表コンパイラは Win32コンソールアプリケーションです。
Windows95/98 のコンソール画面から実行します(1)。対応マイコンは、NEC
78K/0シリーズ(8bit)、富士通F2MC-8Lシリーズ(8bit)、富士通F2MC-16LXシリーズ(16bit:C言語)です。
アセンブラ/コンパイラはそれぞれ、RA78K0.EXE、 ASM96.EXE 、FCC907S.EXE を対象としました。これから示
す例は NEC 78K/0 です。汎用のCソースも生成できます。
現状はこれらシリーズしか対応していませんが、拡張可
能な仕様にしてありソースも公開しますので、他のターゲットにも対応可能です。
ソースは Borland C++ Compiler 5.5.1 でコンパイル出来るので開発環境はフリ
ーで入手出来ます。
This document was generated
by Kiyoshi Masumoto on June, 15 2001
using texi2html