IC・トランジスタで出来たコンピューターを設計・製作するためのブログ

Jeans & Development 電子ブロック工房 三日坊主 フロントページ

PIC18F14K50を使った、キャラクターディスプレイ(紹介編) [PIC]

2012年1月28日

Microchip社のPIC18F14K50を用いた汎用のキャラクターディスプレイを作成したので、紹介します。

技術的な話は後の記事に譲ることにして、ここでは性能と使い方に関しての説明です。

仕様
・PIC18F14K50と、簡単な周辺部品だけで動作。
・コンポジットビデオ信号(NTSC)を介した白黒出力。
・横32文字・縦20行で、アルファベット大文字とカタカナを表示可能(shift-JIS半角文字互換)。
・表示させる文字は、パラレルインターフェースで入力。

電源を入れると、使用可能な文字が次のように表示されます。
2012-01-28-IMG_9601.jpg

PIC18F14K50を使った、キャラクターディスプレイ(製作編) [PIC]

2012年1月23日

PIC18F14K50を用いて、パチパチマイコン用のキャラクターディスプレイ・インターフェースを作成中。

2012-01-23-IMG_9589_2.jpg

パチパチ1号、完成 [Z80]

2011年12月25日

パチパチマイコンが、完成品になった。

2011-12-25-IMG_9501_2.jpg

JavaScript Z80 tiny disassembler [Z80]

2011年12月21日

JavaScriptで出来た、Z80用の、簡易、逆アセンブラー。

dasm_v03.html

アセンブラーは、こちら

カセットテープインターフェース、ハードはほぼ完成 [Z80]

2011年12月9日

カセットテープへの保存と読み出しのための回路は、ほぼ完成した。

2011-12-09-Image.png

パチパチマイコン用 bootloader [Z80]

2011年12月6日

パチパチ式のコンピューターでは通常、電源を入れた後にトグルスイッチを用いて小さなプログラムを入力し、このプログラムを用いて紙テープインターフェースなどから大規模なプログラムを読み込む。現在製作中のパチパチマイコンも、この方式に従っている。

しかしながら、紙テープからの読み込みプログラムは非常に小規模ですむが、カセットテープインターフェースからの読み込みプログラムは少し規模が大きくなる。これを毎回打ち込むのは大変だ。

そこで、そういった小規模のプログラムの入力を、PICマイコンに行わせることにした。少しルール違反のような気もしたが、トグルスイッチでの入力を肩代わりするだけと考えれば、これもよいだろうと言うことで。

2011-12-06-Image.png

カセットテープインターフェース [Z80]

2011年11月22日

オシロスコープが動くようになった。本来ならば、このオシロの記事を先に書くべきなのであるが、これを使ってカセットテープインターフェースの回路試作版を作成することが出来たので、こちらを先に。オシロの方は、波形の表示にExcelを使ったりしているので、まだ公表する段階になっていない。こちらについては、また後日。

2011-11-22-TapeInterface.png

18F14K50で、簡易オシロスコープ その2 [PIC]

2011年11月14日

先の記事で、「家庭用のコンセントの周波数60 Hzを読み取ることが出来た」と書いた。PC側の制御プログラムを完成させようと、この結果を解析してみると、少し問題があることがわかってきた。

まず、PICに1秒間、1ミリ秒当たり24回の測定をさせて、1ミリ秒ごとにデーターを送信させてみた。得られた結果を、Excelでグラフにすると、下のようになった。
2011-11-14-oscillo1.png

18F14K50で、簡易オシロスコープ [PIC]

2011年11月13日

18F14K50で、USB通信の続き。

先の記事で、とりあえずHIDでの通信ができるようになったと書いた。USBの仕様は膨大かつ複雑であり、これをブラックボックスとして扱わないと、先に進めない。当分の間、この複雑な仕様の部分は「改訂新版 PICで楽しむ USB 機器自作のすすめ」に頼って進めることにする。

HIDでは、一定のタイミングで、PCからPICへ、PICからPCへ、通信が行われているらしい。これは、デスクリプタでもそう宣言しているし、ネットで色々調べてみても、普通はそのような形で行くようだ。

18F14k50で、USB通信 [PIC]

2011年11月7日

現在、週末はパチパチマイコンのプログラミングで楽しんでいる。16ビットのかけ算ルーチンが完成したので、次は円周率の計算に行こうと、電源を切らずに置いておいた。が、週の半ばで突然の停電。ここカリフォルニアでは、しょっちゅう停電する。為に、プログラミング途中のコードが全部失われてしまった。また一から打ち込まなければならない。

こんな事になる前に、まずカセットテープインターフェースなどの、保存装置が必要だ。もっとも、カセットテープからのデータを読み込むためのプログラムは、電源を切らずにRAMに置いておくか、毎回手打ちするか、この部分はPROMに焼くかをしないといけないのだけれど。

カセットテープインタフェースの回路設計のため、手持ちの部品で、CMOS-ICからの出力をパソコンで録音して、その録音した音をCMOS-ICに認識させるなどのテストを行ったが、どうやらオシロスコープが必要だということが分かった。

オシロスコープも最近は一万円ほどの値段からあるが、今回のインターフェースが完成すれば後は使うことはなくなるかもしれないし、今回の用途は最小限の性能の物で良さそうなので、自作することにした。MicrochipのPICマイコンにはA/Dコンバーターが付いているので、その値を逐次読み取って、PCに送信するだけの簡単な回路で良さそうだ。

そこで、先延ばしになっていた、PCとPICの間を、USBで通信する手法の会得に着手することに。

先日、日本に一時帰国にしたときに、「改訂新版 PICで楽しむ USB 機器自作のすすめ」を買ってある。しかも、パチパチマイコンの部品を購入する際、ついでにPIC18F14k50と、12 MHzの水晶やUSBプラグ差し込み口等も購入してある。お膳立ては出来ている。
<<前の記事   後の記事>>