goo blog サービス終了のお知らせ 

Sim's blog

電子工作はじめてみました

Gainer mini+ブートローダのインストールメモ

2009-02-06 01:00:31 | その他のマイコン
2/11 追記 ダウンロード先等、最新の情報と異なっています。最新の情報はsenshuさんの掲示板の記事「GAINER mini にBootLoaderを導入する」を参照してください。


senshuさんがブートローダ付きのGainer miniファームを作ってくださいました。

手順がいっぱいあるので、後で思い出せるようにメモです。
おおざっぱに1. ブートローダの書き込み、2. Gainer miniファームウェアの書き込みの2段階です。

1. ブートローダの書き込み(要PICライター)

1.1 ダウンロード(1)
senshuさんの掲示板の「[PIC] Gainer mini用のブートローダと対応ファームウェア」という記事のリンクから
【1】Gainer-boot.zip → HEX/20M-18f2550-GAINER.hex
【2】GainerMini_firm090115_r02-UBW.zip → HEX/GAINERmini.hex
をダウンロードします。

1.2 ブートローダ書き込み
Gainer-boot.zipに入っている20M-18f2550-GAINER.hexを手持ちのPICライターを使って書き込みます。

1.3 ダウンロード(2)
senshuさんのUBWのページの「☆ UBW開発ツールアーカイブ(2008-9-5改訂)[Download] ☆」という記事から
【3】07 UBW用inf(ドライバ) MCHP-USB.zip → どれだっけ?
【4】11 書き込みツール fileMyboot-UBW-2008-0812.zip → bin/Myboot.exe
をダウンロードします。

2. Gainer miniファームウェアの書き込み

2.1 USBドライバのインストール
Gainer miniをUSBポートに挿してから、ブートローダモードで起動します(後述)。PC側で新しいUSBデバイスを認識するので、MCHP-USB.zipの中にあるデバイスドライバをインストールします(このあたりは記憶が欠けてるのであいまい><)。

2.2 Gainerファームウェアの書き込み
先ほどダウンロードしたfileMyboot-UBW-2008-0812.zipに入っているMyboot.exeを起動します。Open HEXボタンで、GainerMini_firm090115_r02-UBW.zipに入っているGAINERmini.hex (2009/2/3 13:18 43861バイト)を選んでから、Write_Verifyボタンを押して書き込みます。次にSet Boot Flagボタンを押してブート時にユーザーアプリが起動する設定にします。
MyBootの使い方はsenshuさんの記事「MyBootの概要」を参考にします。

たぶん以上でブートローダ付きGainer miniができるはずです。
ブートローダがアップデートしたときは1.から、Gainerファームウェアのアップデートだけなら、2.2から再開します。

上で後述すると言っていた「ブートロードモード」での起動ですが、senshuさんの記事「Gainer mini用のブートローダと対応ファームウェア」にあるようにRB0を200ΩくらいでGNDに接続してからリセットします。スイッチをつけていれば、スイッチを押したままリセットボタンを押すという動作になります。

GAINERmini.hexはブートローダ用にsenshuさんがTsuneoさんのソースを改造したものです。ブートローダ専用なので注意が必要です。

最後に、senshuさんありがとうございました。

Gainer miniクローン弐号機

2009-01-21 00:29:18 | その他のマイコン
動作検証用にブレッドボードで組んでみました。

赤くなくてすみません。

部品表
PIC18F2550       1 秋月 500円
20MHz水晶発振器  1 秋月 150円
USB-007A         1 ドスパラ 330円
0.1uF積セラ      2
10kΩ抵抗        1
LED              1
LED用抵抗        1 510Ω(LEDによって変える)

一声1000円くらいでしょうか。秋月のPIC18F2550モジュールの1000円って安すぎです。水晶発振器でなく水晶発振子にすれば、ちょっと安くなります。ただしブレッドボードだとちゃんと発振するか不安です。USBケーブルも、いらないのをちぎって作ればもっと安くなりますね。

USB-007Aは、PC用のパーツでUSB Aコネクタとパラのピンの接続ケーブルです(メーカーページ)。

ブレッドボードに直接挿せるので便利です。川崎のドスパラで見かけて買いました。

弐号機の動作状況ですが、秋月モジュールと同じです。processingからはPC直結のみ可、tera termからはPC直結、USBハブ経由、USB増設カード経由のいずれも可です。

スイッチサイエンスさんもGainer mini

2009-01-20 23:11:27 | その他のマイコン
スイッチサイエンスさんもGainer miniの取扱いをはじめました。1月中は3980円と安く販売されるそうです。


Gainer miniクローンの方は、おぐらむさんに色々教えてもらいながらぼちぼち進めています。
なぜかUSBパケットキャプチャをすると、今まで動作しなかったUSBハブ経由でも動作します。たぶんタイミングにセンシティブな動作にパケットキャプチャのディレイがはいったせいで動作するようになった雰囲気です。場所はrxtxSerial.dllの中身じゃないかと思います。
使ってみたUSBパケットのキャプチャソフトはUSB Sniffer for Windows(ファイル名はSnoopyPro.exe)というものです。

なんか全然Gainerっぽいことしてない気がします。

千石の店頭販売HC08

2009-01-18 11:34:11 | その他のマイコン
千石の店頭販売AVRの続きです。

千石電商のオンラインショップではHC08が3つしか掲載されていませんが、店頭ではもっとたくさん販売しています。店頭(秋葉原店)でメモしたものをご参考まで紹介します。型番とか値段とか間違ってるかもしれないので、あくまで参考程度ということでお願いします。店頭ではRAMサイズ等スペックも書いてあって親切です。

MC9S08QG4CE      230
MC9S08QG8CPBE    270

MC68HC908QY2CP   240
MC68HC908QY1CP   200

MC68HC908QT1ACPE 180
MC68HC908QT2ACPE 210
MC68HC908QT4ACPE 250

MC68HC908QB8CPE  370
MC68HC908QB4CPE  330

MC68HC908QY4ACPE 260

MC9S08SH8CPJ     290

MC9RS08KA1CPC     90
MC9RS08KA2CPC    100
MC9RS08KA8CPC    180

MC9S08QE8CPG     320
(棚の順番)

いっぱいあります。

フリースケールの8ビットマイコンはHC08, HCS08, RS08の3種類あります(丸文のページ)。MC68HC908から始まるのがHC08、MC9S08から始まるのがHCS08、MC9RS08から始まるのがRS08のようです。続く2文字のアルファベットがおおまかな分類(ファミリー)示しています。QGとかQTとかです。
千石さん、ぜひとも通販してください。

PICは更新されているので、雰囲気的にホームページの整備がまだ進んでいない感じです。

Gainer miniのファームウェアアップデート

2009-01-18 10:38:49 | その他のマイコン
アールティロボットショップさんのGainer miniのファームウェア(Gainer mini内の制御プログラム)がバージョンアップしています。内容はMac OSX 10.5 Leopard対応とのことです。ダウンロードページに新ファームも公開されています。
最新版への無償書き換えもしてくれるそうです(お知らせ)。2月末までです。書き換え環境を持っていない方もいるでしょうから実に親切です。

アールティさんで公開しているprocessing用のライブラリはprocessing1.0でも使えています。


うちの状況ですが、(1)本体直結、(2)USBハブ経由、(3)USB増設PCカード経由という3つの接続経路で、teratermだと(1)~(3)の全てが動作しますが、processingからは(1)だけが動作しています。ファームウェアをアップデートしても状況は変わりませんでした。
ソースを追っかけてみるとClient.javaの177行目のopenでPortInUseExceptionが発生しているようです。トレースはやりかたが分からないのでエラーメッセージから判断しました。この部分はGainerから呼び出しているrxtxSerialというRS-232C用のライブラリの内部にあります。rxtxのページはこちらです。

gainer.ccからダウンロードできるprocessing用ライブラリはprocessing1.0だとエラーが出ます(gainer.ccのダウンロードページ)。ソースを再コンパイルしてgainer.jarを作ってやるとprocessing1.0でも動作するようになります。再コンパイルに必要になるのはprocessing1.0をインストールしたフォルダにあるcore.jarとrxdxSerialのRXTXcomm.jarの2つです。クラスパスに設定してやる必要があります。確か以前masatoさんがGainer関連で色々していたような気がするので後で調べてみます。

うちの状況(tera termはok、processingはNG)だと、rxdxSerialがいけないような気がします。

3軸加速度センサーにつないでみる

2009-01-15 22:21:54 | その他のマイコン
Gainer miniクローンの続きになります。

Gainer miniクローンは通信が怪しげです。もうちょっとテストした方がいいかなと思いました。Gainerへの出力だけでなく、入力も試したいということで、エレキジャックのもあさんの連載から、3軸加速度センサーをつなぐ例題を試してみました(Ginger/Pepper/Sugarでフィジカル・コンピューティング(9))。

1つ目の例題は、フォントの登録が必要でした。
2つ目の例題は、ボールがどこかに行ってしまいます。ソースを解析してみると、38行目と39行目のanalogInput[]の添え字の0と1が逆になっていました。直すと動き始めました。

3軸加速度センサーを使ってボールをコントロールできます。
ブレッドボードを立てた状態(USBケーブルが上)を初期状態にしないとy方向の移動が手前方向にしか移動しなくなります。寝かせた状態だとy方向の読み取り値の初期値が最大値なので減る方向にしか移動できなくなるせいです。

ゲームみたいで実に楽しいです。
hamayanさんのhiiリモコンを思い出してしまいました。

Gainer miniクローン

2009-01-14 00:46:26 | その他のマイコン
PIC18F2550でLEDチカチカの続きです。

アールティロボットショップさんのGainer miniは回路図やファームウェアは公開しています。CPUはPIC18F2550を使っています。このPICはUSB機能を搭載しているので部品数が少なくなるという利点があります。以前、秋月で売っているPIC18F2550モジュールでも動かないだろうかと妄想したところ、おぐらむさんが検証してくださいました。難航しているとのことで、お手伝いしなきゃと思い、前回のLEDチカチカはPICに書き込んだりツールを使う練習でした。と思ったら、もう解決されていました。

去年のうちにもあさんも検証されています(記事)。

やったことは、最新のファームウェアを書き込んでUSBドライバをインストールしたくらいです。
とりあえず、USBコントローラ(?)との相性があるっぽいです。USBハブ経由と、USB増設PCカード経由では動作しませんでした。本体のUSBポート直結のときは動作しました。Gainer miniが動いているUSBコントローラは「Intel(R) 82801DB/DBM USB Universal Host Controller - 24C4」というものみたいです。
動作確認は、(1)TeraTerm、(2)シリアルプロキシーgsp.exe、(3)Processingの3つで行いました。

ポートの対応表です。
AIN0  RA0    AOUT0  RB7
AIN1  RA1    AOUT1  RB6
AIN2  RA2    AOUT2  RB5
AIN3  RA3    AOUT3  RB4
DIN0  RA5    DOUT0  RA4
DIN0  RB2    DOUT1  RC0
DIN0  RB3    DOUT2  RC1
DIN0  RB1    DOUT3  RC2

とりあえず動いてるっぽいけど、なんか不安な感じです。

PIC18F2550でLEDチカチカ

2009-01-12 15:10:41 | その他のマイコン
秋月で売っているPIC18F2550のUSBマイコンボード(通販コードI-02161)を使ってみました。


USB給電です。

開発ツールはMPLABというIDEとC18というCコンパイラです。
MPLABのダウンロードページ
MPLAB C Compiler for PIC18のダウンロードページ
IDEとCコンパイラは別々にダウンロードしてインストールしないといけません。また、ダウンロードするのに登録をする必要があります。
PIC24USBのときにVMWareにMPLABをインストールしたのでC18だけ追加しました。

プログラマは秋月のAKI-PICプログラマー Ver.4を使いました(写真右)。ファームウェアを最新版にするとPIC18F2550を使うことができます(サポートページ)。


USBマイコンボードをプログラムするときはJP1のジャンパーをはずします(写真左上)。USBコネクタのついている方を下側にして装着します。

ソースコードです。
#include <p18cxxx.h>
#include <delays.h>

#pragma config FOSC = HSPLL_HS
#pragma config WDT = OFF
#pragma config PLLDIV = 5
#pragma config CPUDIV = OSC1_PLL2
#pragma config USBDIV = 2
#pragma config PWRT = ON
#pragma config BOR = OFF
#pragma config BORV = 2
#pragma config LVP = OFF
#pragma config VREGEN = ON
#pragma config MCLRE = OFF
#pragma config PBADEN = OFF

void main(void)
{
    TRISB = 0;
    LATB = 0x00;
    while(1){
        Delay10KTCYx(100);
        LATB ^= 0xff;
    }
}

コピペして張り合わせただけなので中身は全く理解していません。コンフィグがいっぱい必要なんですね。
クロックはボード上の20MHz(のはず)です。Delay関数の単位は何なんでしょうか?

おぐらむさんが困ってられたので、自分でも試してみようと思いました。とりあえず第一歩はなんとかなりました。

第二回「ColdFireアプリケーション・コンテスト」入賞者決定

2008-12-19 00:23:36 | その他のマイコン
入賞された皆様おめでとうございます。一覧はフリースケールのプレスリリースから見れます。

フリースケールのプレスリリース「フリースケール主催 第二回「ColdFireアプリケーション・コンテスト」最優秀賞決定
フリースケール・フリークで入賞作品を見れるようになるそうです(12/19 10:00より)

Interface誌「ColdFireマイコン基板アプリケーション制作コンテスト 入賞者決定!
入賞作品はInterfaceでの解説記事が予定されているそうです。

アドバンスト部門賞の「でんすけ

スクリプト部門賞の「iPaperPlane
コンテスト会場の詳しい様子もレポートされています。

マルツでpickit2が3900円

2008-12-12 22:53:27 | その他のマイコン
今月号のトラ技(p.320)に載っているのに気づいたのですが、通販サイトの方を見てみるとpickit2が3900円に値下げになっています。秋月が4000円なので国内再安でしょうか?あと1350円何かを買えば、送料も無料になります。


とかいいつつ、digikey3695円になっています。AVRISP mk2も3590円です。円高おそるべし。

PIC24USBを作ってみました。

2008-12-08 22:19:36 | その他のマイコン
すんさんの掲示板でオプティマイズさんから発売されているPIC24USB基板の話を知りました。土曜日ITプラザで買ってきたのですが、はんだづけしてみました。

部品一式

PICは最初から付いています。つけるのはチップ部品ばっかりです。一応完成品も販売されています。

表です。


裏です。

作るコツは部品をなくさないことと、つける場所を間違えないことです。

いいなと思ったところは、
- 1980円と安い
- ROM256k RAM16kとやたら広い
- セルフ書き込みなので、ライターがいらない
- 3.3V動作だけど5.5V耐圧になっている。逆にオープンドレイン出力可
- USBがそのまま使える?
- コンパクト
- サイトの説明が丁寧。PICはろくに触ったことがなかったけど、そのとおりやったらLEDチカチカまではすぐできました。

文句をつけるとすると、ブレッドボードにそのままは刺さらないというくらいでしょうか。

PICというと、アセンブラというイメージでしたが、C言語も普通に使えるみたいです。

C言語ではじめる PIC24F活用ガイドブック」も以前買ったまま積んであったものがあります。

2x13のピンソケットは秋月で売っています(C-00084)

へたくそのくせしてチップのはんだづけに異様に執念を燃やすのは、我ながら変です。1608はしたことがあったのですが、そのせいか2016は大きく感じました。中島敦の名人伝のように蚤を見る特訓を3年間しないといけないかもしれません。