PIC

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

KM-Z80 mini 進捗 [PIC]

2012年12月9日

32ビットPIC(PIC32MX150F128B)を用いた1チップMZ-80K互換マイコン作成の進捗状況。NTSCビデオ信号送出とZ80 CPUのエミュレーションまで完成し、モニタープログラムが起動するところまで来た。

2012-12-09-kmz80mini.jpg

現在、PS/2キーボードからの信号を処理する部分を書いている。これが済めば、とりあえずコンピューターの体を成すことになる。

KM-Z80 miniを製作中 [PIC]

2012年6月24日

Microchip社のPIC32MX150F128Bを使った、1チップMZ-80K互換マイコンを製作中。

2012-06-24-hello.jpg

MPLAB C32 compilerを使ってみた [PIC]

2012年4月27日

Microchip のPIC32シリーズに、PIC32MX150F128B / PIC32MX250F128B という、DIP-28 の石を見つけた。RAM も 32 KB あるし、PIC32MX250F128B の方は USB ホストとしても使えるので、色々と面白いことに使えそう。価格も、$5 前後と、手ごろである。早速注文したので、2-3日で届くはずだが、待ちきれず、MPLAB C32(PIC32 用の C コンパイラー)で少し遊んでみた。

PIC32は、Microchip独自の開発のCPUではなく、MIPS (Microprocessor without Interlocked Pipeline Stages)という、MIPS Technologiesが開発している RISC アーキテクチャの CPU を用いている。どうやら、ARM に似ているらしい。

レジスタは、32 bit 幅だから、長サイズの整数や浮動小数点演算などは、得意なはずだ。他方、組み込みマイコンではI/Oなどとの連絡を行う必要がある。そちらはどうかと、色々調べてみた。

PIC18F26K22をPICkit2で使う [PIC]

2012年3月17日

PIC18F26K22を購入した。64MHzで使えること(MIPS: 16MHz)と、25本のI/Oピンを持っていることが特徴。今考えているある回路で、このスピードとI/Oの数が必要なため、購入した。

この石は、MicrochipのページではPICkit3でないと書き込みできないことになっている。私はまだPICkit3は購入しておらず、PICkit2しか持っていない。なので、通常、この石は使えないことになる。

しかし、web検索して見つけたこのページによると、PICkit2ソフトウェアのdevice fileをアップデートすることで使えるとある。

PIC18F14K50を使った、キャラクターディスプレイ(シリアル通信編) [PIC]

2012年2月6日

PIC18F14K50を使ったキャラクターディスプレイを、シリアル通信で使えるようにした。

一本の通信線でデーターを受け付けることができるため、PICをはじめとしたマイクロコントローラを用いた機器の情報表示用に、使える。シリアル通信のボーレートは、1200。

以下の写真は、PCにRS232Cでつないで、テストを行っているところ。

2012-02-06-IMG_9605.jpg

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

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プラグ差し込み口等も購入してある。お膳立ては出来ている。
<<前の記事   後の記事>>