You are here

マイコン

マイコン

マイクロプロセッサ・マイクロコントローラ等です。

NS32016ボード(ハードウェア編)

テーマ:

カテゴリー:

約半年ぶりにマイコンボードを作ってみました。


今度のはNS32016のボードです。もちろんEMILY Boardを使っています。

8ビットバスのNS32008を使った方が配線が少し楽になりますが、こちらは入手しずらいのと、NS32016はいくつも持っているからです。

TMS7000

テーマ:

カテゴリー:

未動作のプロセッサが積み上がってる自覚はあるんですが、珍しいプロセッサ見かけるとつい買ってしまいます。一期一会な面がありますからね。

というわけでこれ。


Texas InstrumentsのTMS7000です。

TMS7000ファミリは8ビットのシングルチップマイコンですが、この7000はROM無しのものです。他に2kB/4kBのマスクROM内蔵のものやピギーバックなどもあります。

このファミリには動作モードが以下の5つあります。

高速Z80

テーマ:

カテゴリー:

Z80 CPUは以前にも取り上げました(1回目2回目)が、またまた買ってしまいました。


最高クロック20MHz版です。

今さら大昔のCPUを動かすのに速度を追求してもしょうがないと思ってクロック上限には拘っていませんでしたが、PLLが動き始めているのでオーバークロックで遊んでみても面白いかもと考えが変わってきました。

さらにDIP版の入手が難しくなってきたような話も聞いていたので、買えるうちに確保しておこうと思ったのでした。

はじめ安さに惹かれてeBayで買ったのはちょっと怪しかったのですが、追加で買ったこれはDigiKeyからなので真正品と考えられます。

古のマイコン開発法(補足)

カテゴリー:

その1その3までの「古のマイコン開発法」に少し補足しておきます。

これ「無いものは(道具も含めて)作る」のですけど、道具の無い状態では作るのは大変なので「とりあえず必要最小限」を作ってそれを道具にして自分自身を改善していきます。最終的には不要なものでも途中で必要なものは作るしかありません。

持っているものがあれば楽になります。

古のマイコン開発法(その3)

カテゴリー:

その2で市販トレーニングキットと同じように使えるようになりました。

しかしまだハンドアセンブルしたバイナリを入力して実行することしかできません。何らかの高級言語を使いたいところです。そうなると16進キーパッドや7セグメントLED表示器では不足です。

というわけで......

キーボード
16進キーパッドと異なりスイッチを並べて自作するのは難しいですが、当時でもキーボードは入手できたようです。

もちろんUSBのような共通のインターフェイスがあったわけではありません。単にキースイッチが並んでいるだけで自分でマトリクスを配線しなくてはならないもの、マトリクスの配線までされているもの、エンコーダまでついているものなどがあったようです。マトリクスタイプならキーパッドの数が増えただけのようなものなのでソフトウェアの変更は容易でしょう。

ディスプレイ
表示装置そのものの製作は困難なので既製品を利用します。最も安価なのはテレビで代用する方法で、ビデオ入力が無い場合はRFモジュレータを用意してアンテナ端子から入力します。

古のマイコン開発法(その2)

カテゴリー:

その1でプログラムを実行できるようになりましたが、スイッチを操作して書き込むのは非常に手間がかかります。また電源を切れば消えてしまい、再度入力しなくてはなりません。

バッテリバックアップ
SRAMを電池でバックアップ(あるいは電源を入れっぱなしに)すれば毎回入力しなくて済むようになります。

プログラムを暴走させて壊してしまうリスクはありますが、RAMを2つ搭載して片方の書き込み信号をスイッチで切れるようにして保護する方法もあります。

キーパッド
16進キーパッドと7セグメントLED表示器を搭載すれば入力が楽になります。

これを制御するためのプログラムはスイッチ操作で入力する必要があります。必要最小限のプログラムをスイッチ操作で入力し、キーパッドが使えるようになったらそれを利用して機能を拡張していくことで効率よく入力できます。

カセットインターフェイス
カセットインターフェイスを製作すれば入力したプログラムを保存しておくことができます。

古のマイコン開発法(その1)

カテゴリー:

ちょっとTwitter(もう「X」と書かなきゃいけないのか)で話が出たので大昔のマイコン開発について書いてみることにします。

マイコン開発といってもツールに恵まれていたであろう業務でやっていたような人ではなくアマチュアの話です。

今マイコンボードを開発するというと、フラッシュメモリを内蔵したマイコンとPCを接続(接続ケーブルなどは簡単に作れるか個人でも買える程度の価格)して簡単に書き込めますし、書き込むソフトウェアの作成もコンパイラなどのツールも無償で使えるものも多く存在します。マイコンの機能はほぼチップの中で完結しているので基板もI/Oの引き出しがメインになります。

一方で1970年代から80年代の頭にかけてアマチュアがマイコンボードを作るといった場合、パソコンを持っていないからいっちょ作ってみるかというパターンが結構あったのです。

当時の本や記事を読むとこの状況を前提として書かれているものがあります。それらを元に当時の人がどうやって何もないところから作り上げていったか書いてみようと思います。

まず当時はCPU, ROM, RAM, I/Oが一つになったデバイスはほとんどありません。

ATmega164でWDTが勝手に動作した件

カテゴリー:

PLLシンセサイザ(その5)のところで「ちょっとトラブルがあった」と書きましたが、今回はそれについて書いてみようと思います。

VCOが出来たのでD/Aコンバータから電圧を与えてV-F特性を見ようと電源を入れたのですが......

何故かマイコンがリセットを繰り返してしまいD/Aを操作できません。最後にD/Aコンバータを確認したときには動作していましたし、それからソフトウェアは変更していません。ハードウェア的には電源とD/Aの出力をくらいでマイコンの動作に影響を与えるとは考えにくいのです。電源が揺れれば考えられなくはありませんが、オシロで見ても問題なさそうですしVCO基板を外しても解決していません。

以前試したときは(初期化を忘れていたのに)偶然動いていただけかもしれません。未使用割り込みベクタをreti命令を指すようにしたり、I/Oポートの初期化を見直したりしましたが効果ありません。

N8X305 と NS32016D

テーマ:

カテゴリー:

残るは2つですが、どちらも似たものをこれまでに取り上げていますのでまとめて紹介することにします。


一つ目はSigneticsのN8X305、これはN8X300の改良版です。8935がデートコードかな? だとすると1989年製ということになりますね。

N8X300との相違点はどこなのかということで両者のデータシートを見比べているのですが、相違点が明確に書かれていません。

SigneticsのN8X305のデータシートが見つからず、セカンドソースのAMDのデータシートを参照しています。

ハードウェア的にはN8X300の上位互換らしく、そのまま挿し替えが可能なようです。

Am2901

テーマ:

カテゴリー:

前回のと一緒に調達したものがいくつかあるので何回かに分けて取り上げようと思います。


これはAm2901 4ビットスライスALU、AMDのAm2900ファミリの一員です。

以前取り上げたIDM2911もこのファミリ(セカンドソースですが)ですね。

その時も書いたようにこのファミリは一般的なプロセッサとペリフェラルといったものではなく、プロセッサを構成するための部品の集合体です。しかも決まった完成形があるわけではなく、すべてが回路設計者に任されています。命令デコーダは各自設計する必要があるのでAm2900命令セットといったものは存在しません。

Pages