ハンドROMライタ製作記
ハンドROMライタとは?
その仕様。
2002.May.31
製作に至った過程

さて、とある事情でEP−ROMを手に入れた訳ですが、実は前々から会社にあるのは知っていたし、欲しいなぁ〜という目でずっと上司のことを見つめていました。
買えよって感じですが、ROMって結構高いし、会社では使ってないしね。 上司のご好意により頂いちゃいました。

俺が手に入れたのはM27C2001で2Mビット(256KBx8)という、そこそこ有名。
で、なんで「ROMライタを作ろう」と思ったのかというと、実はある人に影響されたからです。
その人は「昔ながらのプログラマ」な人で、今のワンチップマイコンならずワンボードマイコンの頃、今の俺と同じく自作ROMライタを作ったそうです。
しかしその頃は、パソコンという高価なもので、RS232Cという高等技術を用いてROMに焼く。なんて手法は皆無で、手動ROMライタを作ったのです。
どういう手法でROMに焼いていたのかは、実際にその人のページを見てください。

TekuRobo工作室

バカな俺はこの人のこの手法に、頭をトンカチで叩かれたような衝撃にあいました。
当時としては当たり前だったのかもしれませんが、今の「なんか知らんけど焼けちゃった」的な要素は1つもなく、原始的だがまさに原点であるその手法に憧れをも抱きました。
いつかメールでお礼をしたいと思ってますが、それは今回の製作が終わって写真でもとってからにしようと思ってます。

さて、今回の「ハンドROMライタ」は、その人が行った手法よりもう一歩進んだ形のもののような感じで作ろうと思います。
もちろん頭に「ハンド」と付いているので手動書き込みです。
RS232Cでもよかったのですが、それをやるとやはり俺の技術力ではマイコンを使う事になりそうだし、なにより手動書き込み機を作りたかったのです。
実用性は全くありませんが。
初心者の人って昔やってた人の手法に憧れませんか?

ROMに書く(焼く)とは

最近になってから電子回路に興味を持ち始めた人。
マイコンから入った人。
そういう人達って案外どうやってROMに書いているか分からない人が多いと思います。
しかもマイコンしかやった事ない人だと、I/OとかタイマーとかA/Dなんて標準で内蔵されてるし、「え?別々なの?!」とか驚く人もいるかもしれません。(さすがにいないか)

まずワンチップマイコンというと、1つのチップにCPU・ROM・RAM・PIOなど全て内臓されているICの事を指します。
しかし今でもたまに見かけますが、もう1つ、ワンボードマイコンというものがあるんです。
これは上に書いた機能1つ1つが独立したICであり、それらを上手く繋いで1枚の基板に収めたものの事を指します。
Z80からやっている人から見れば「そんな事も知らないのか!」と憤慨するかもしれませんが、今のPICなんて回路の知識などなくてもソフトさえ組めれば勝手に動いてくれます。
俺は「ワンチップマイコン」はプログラムで言えば「高級言語」にあたり、初心者向けなのではないかと思っています。

話が逸れてしまいましたね。
ROMに焼くというのは、手順としてこんな感じです。

・ アドレス(1バイトを書き込む場所)を指定してやります。
・ VPPに電圧を加えます(普通は12V)
・ そのROMを有効にします(E端子をLに落とす)
・ 書き込みモードにします(PをLに落とす。GをHにする)
・ データを送ります。(データバスにそれぞれのビットを立てる)

品種などによって若干タイミングや電圧など変わってきますが、大体こんな感じでROMに1バイト(8ビット)ずつデータを焼いていきます。
これを手動でやるのです。
仕様を決めよう

物を作る場合、必ず必要になるのが「仕様」です。
ここでは大雑把に「ハンドROMライタ」の仕様を説明したいと思います。

まず第一のコンセプトとしては「マイコンは使わない」です。
TTLでロジックをガシガシ組みます。
細かい仕様はこんな感じです。

・ 5Vと12Vは2電源のDC電源を使う(俺がそれしか持ってないから)
・ データは16進スイッチを2個使い、それぞれ上位4ビット下位4ビットとして使う
・ 書き込みはタクトスイッチかなんかでポチッと1発書き込み
・ さすがにアドレスをビット指定するのは疲れるので、TTLで2進カウンタを組む。書き込みスイッチを押すと+1進むように
・ EやPやG端子のイネーブルタイミングが狂わないようになんとかする(笑)
・ ベリファイ機能も付けて、正しいデータが書き込めたかLEDか7セグで表示させる

と、かなり大雑把ですね。
回路図は現在作成中です。
このページは週一くらいで更新できたらいいなぁ〜と思ってます。
部品も全て揃っているわけではないんで「本当にこの人作るのか?」と自分でも思ってしまいますが、「製作しない」とか「諦めた」という事は100%ないでしょう。
「更新しない」ということはありそうですが・・・。
興味のある人は週一くらいで見に来てください。更新されていなかったらメールで苦情をください。




[次のページへ]

リンクフリー  Copyright (C) K_Yaguchi