PIC

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

PIC32MXで、USBメモリーを扱う [PIC]

2017年4月1日

ちょっと訳あって、マイコンからUSBメモリーへのアクセスの方法を探っている。この手のことをする場合、最近はほとんどMicrochip社のPIC32MXを使っているので、今回もこれでどうやるのかを探ってみた。

回路は、以下の通り。なお、パスコンはすべて0.1 μFで。
2017-04-01-schematic.png

KM-BASIC for MIPSの紹介 [PIC]

2015年4月14日

KM-BASIC for MIPSは、PIC32MX上で動く整数型BASICコンパイラーです。ケンケンさん作成のPIC32テレビゲームシステム(以下、PIC32TVGS)上で動くアプリケーションとして作成しました。表示はテキストのみですが、カラーでの表示が可能です。BASICプログラムを機械語コードにコンパイルしてから実行するので、高速な動作が特徴です。SDカードに複数のBASICプログラムを入れておき、PIC32TVGSの選択画面で選択して実行することが可能です。SDカード上のファイルの配置方法については、ダウンロードファイルのreadme.txtを参照して下さい。記事の最後に、ダウンロードのためのリンクがあります。

MIPS用BASICコンパイラーを制作中 [PIC]

2014年7月28日

ケンケンさんのPIC32MX用SDカードブートローダー(+カラーNTSC出力)用に、整数型BASICコンパイラーを作成することにした。仕様は、以前にMZ-80用に作成したKM-BASICと同じに。必要最小限の仕様。SDカードにBASICのソースコードをテキストファイルで置いておけば、それをコンパイルして即実行するような物を考えている。

9割以上出来上がっているのだが、最後に、RAM上のプログラムの実行権限を得るところで手間取っていて、公開は次の週末以降になる見込み。ここでは、基本的な構造に関する覚え書きなど、記しておく。

SDカードブートローダー用API [PIC]

2014年6月22日

ケンケンさんのSDカードブートローダーは、PIC32MX150F128Bを搭載した、SDカードのアクセスとカラーのビデオ出力(NTSC)が可能な、ゲーム用のシングルボードコンピューターである。hexファイルをSDカードに書き込むことで、様々なアプリケーションを読み込んで実行することが可能な仕様だ。これ用のアプリケーションを色々と考えるのは、PIC使い(最近はPIC32ばかり)の私にとっては凄く楽しい。

このブートローダーは24KBの大きさがあり、SDカードへのアクセスとカラーのキャラクターディスプレイの機能がすべて含まれている。アプリケーションを作成する場合、これらの機能が使えるようになれば、色々と応用が利くし、バイナリーのサイズも小さく抑えることが出来る。

そこで、アプリケーション側から、ブートローダーのSDカードアクセスと、カラー・キャラクターディスプレイのコードを呼び出して、これらの機能を簡便に使うことが出来るようにしてみた。

KM-Z80 gameの紹介 [PIC]

2014年6月15日

KM-Z80 gameは、ケンケンさん製作の、SDカードブートローダー用のソフトウェアで、MZ-80K互換機で動くゲームを楽しむための物です。

MZ-80K用のゲームは、例えば以下のサイトでフリーで配布されています。
http://www.retropc.net/mz-memories/mz700/
http://www.maroon.dti.ne.jp/youkan/mz700/zeplis/

これらのファイルをSDカードから読み込んで楽しむことが出来ます。

KM-Z80C miniの紹介 [PIC]

2014年5月19日

KM-Z80C miniは、Microchip社のPIC32MX350F256Hを用いた、1チップMZ-80C互換機です。KM-Z80 mini (ver 0.3)では、24 KBのRAMを搭載していましたが、KM-Z80C miniでは、48 KBになりました。また、カセットテープインターフェースに加えて、SDカードを用いたプログラムのLOAD/SAVEが行えます。

2014-05-19-IMG_0592.jpg2014-05-19-IMG_0593.jpg

PIC32MXと23LC512をSQIモードで接続 [PIC]

2014年5月10日

Microchipの8ピンSRAMの23LC512は、65536バイトの容量を持つSRAMで、通常はSPI接続で使用する。最高速度が20 MHzであるが、1バイトの読み書き共に、32クロックを要するから、1.6μ秒(0.625 MHz相当)を要することになる。MicrochipのAN1277を見ると、実際にはその1.5倍ほど、2.4μ秒(0.42 MHz相当)ぐらいかかるようだ。この速度では、拙作のKM-Z80 miniの外部メモリーとしては、使えない。
一方、23LC512には、4本のデーターラインを平行して扱う、SQIモードというのがあるので、コレを使えば、4倍速で接続できるようだ。実際、どれぐらいの速度で読み書きできるようになるのか、試してみた。

KM-Z80 C mini 制作中 [PIC]

2013年9月23日

TQFPパッケージのPIC32MX350F256Hを用いて、MZ-80C(48 KB RAMを搭載)互換機を作成中。"KM-Z80 C mini"と名付けることにした。

2013-09-23-AUT17966.jpg

とりあえず、KM-Z80 miniの上位互換機として、0x1000-0xCFFFの領域に48 KBのRAMを持たせて動作を確認したのが上の写真。このままでは単にRAM容量が増えただけなので、SD-cardを使ってプログラムの読み込みと保存が出来るようにしてから公開したい。

今後の予定

・PIC32MX350F256Hのバージョン(上記、KM-Z80 C mini)で、SD-cardに対応
・PIC32MX150F128B(DIP-28)のKM-Z80 miniも、SD-cardに対応
・DIP-28で48 KBのRAMを持つPIC24EP512GP202を用いて、44 KBのRAMを搭載したバージョンを作成

8 color 320x240 graphic display using PIC32MX [PIC]

2013年8月10日

PIC32MX150F128Bを用いて、8色320x240ピクセルの、グラフィックディスプレイを作ってみた。
2013-08-10-AUT17901.jpg
8色320x240ピクセルのデーター保存には最低288000バイト必要だから、PIC32MX150F128BのRAM容量・32768 bytesはぎりぎりである。同じPICマイコンを使ったグラフィックディスプレイとしては、ケンケンさんの32768色240x224ピクセルの作品があって、これは素晴らしい。今回の物は、性能的には劣るが、一石で仕上げるということ、目標とするMZ-700のディスプレイの規格は満たせること、私自身のカラービデオシグナル作成の勉強を兼ねるということで、8色320x240ピクセルで作ってみた。

KM-Z80 mini version 0.3 [PIC]

2013年7月27日

PIC32MXを用いたMZ-80K互換機の3号機が完成し、ほぼ安定して動くようになった。なお、回路図及びPICプログラムが若干変更になり、ver 0.3としている。

2013-07-27-AUT17763.jpg
表側は、こんな感じ。左から、電源スイッチ、パイロットランプ(カナの時は赤)、PS/2キーボードコネクタ、テープレコーダー(もしくはiPod)入力端子。
<<前の記事