自分自身のための ものづくり / 自分自身のためのものづくりメモ

* XRGB-2plusのドットクロックをファミコンに合わせる

#RGB #ファミコン
 スーパーモードを有効にして、DTC_TYP を[USER]に、USR_DTCを1023に設定。

 SCAN は [SVGA](47kHz) に設定しておく。VGA(31kHz)では、スキャンライン毎に表示されるドットがずれる。また、SVGAモードの方がPPUの動作に伴う(?)「縦線」ノイズが目立ちにくい。
(というか、XRGB-2plusの31kHzモードでやたら縦線ノイズが目立つ。サンプリング周期/2以上の周波数のノイズが突き抜けているのか? 出力がVGAかSVGAかで変わるのが謎だ。出力が違っても入力のサンプリングは変わらないだろうに…。)

http://nesdev.parodius.com/2C02%20technical%20reference.TXT
+---------------+
|PPU base timing|
+---------------+
(中略)
  • Pixels are rendered at the same rate as the base PPU clock. In other
words, 1 clock cycle= 1 pixel.

  • 341 PPU cc's make up the time of a typical scanline (or 341/3 CPU cc's).
341*3 = 1023

* マイクロスイッチのチャタリングの様子の観測

#電子工作 #実験 #メモ

はじめに

 チャタリングによるダブルクリックが頻発する IntelliMouse Explorer 3.0 を、Windows上で動くフリーソフトの ChatteringCanceler を用いて騙し騙し使っている。
 色々不毛で不便。ハードウェア的にパッチをあてるために、まずは、マイクロスイッチのチャタリングの挙動を観測してみた

機材

 PICkit2のソフトに簡易ロジアナ機能があるので、それを利用。3chまでしか観測できないけど、1chあれば十分。

 PICkit2の1ch,2chには内蔵の4.7kΩプルダウンがある。なので、マイクロスイッチのコモンを1chに接続。NO接点にPICkit2のVDDを接続し、VDD出力にチェックを入れる。
 トリガを1chの立ち上がりに設定し、RUNして、スイッチを押す。

結果

 0.5msでだいたい安定するが、1.5ms程度まではチャタリングが時折発生する。

 IME3.0のチャタリングは、こんなパルスを拾った結果なのだろうか。

対策

 色々な手法はあるけど、はて、どうしたものか…。
 H/Lで+1/-1してカウンタを増減させて、上下の閾値に達したら論理確定、ってあたりが確実か。
 パラメータは、500μ秒の連続ON/OFFで切り替わるぐらいで。マウスのボタンなら、0.5ms遅延したところで全く問題ない。

 マイコンを使うことを考えていたが、素直に積分+シュミットトリガゲートの方が…いや、5ch分のCRは場所食いだ。無駄に集積回路を使うけどマイコンの方が部品点数は少なくて済む。

* シリアルマウス

PC mouse info
http://www.tkk.fi/Misc/Electronics/then/mytexts/mouse.html
更新:リンク変更

PIC K iT PS/2⇔シリアル マウスインターフェイス
http://members.jcom.home.ne.jp/irv/documents/sermouse/0511123_SirialMouse_manualB0.pdf
スクロールマウスのデータフォーマットの情報あり。その他にも色々参考になる。


 比較的簡単なハードウェアとソフトウェアでWindows機(等)にマウス扱いされる自作ハードを繋げるのは魅力だが、Windows2000, XPでは電源ON時にしか認識されない(?)等、微妙に面倒が多いのが難点。
 あと、近頃はシリアルポート搭載率が減少傾向。USB<->シリアル変換はシリアルマウスには対応していないのが多い。

#電子工作

* PIC12F615が秋月通商に登場

#電子工作 #部品調達 #PIC

 PiPoにはうってつけだな。
#夏コミの申し込みは結局しなかったのだけど…。

8ピンPICマイコン@秋月電子通商

PIC12F615

単価100円
◆クロック20MHz動作!
 (内蔵RC発振は4MHz, 8MHz)
◆10ビット4chA/Dコンバータ内蔵
◆フラッシュ1Kワード
◆RAM:64バイト
◆データ用EEPROM:無し

PIC12F675

単価 110円(10個以上)
◆クロック20MHz動作!
 (内蔵RC発振は4MHz。OSCCAL Valueの扱いがちと面倒)
◆10ビット4chA/Dコンバータ内蔵!
◆フラッシュ1Kワード
◆RAM:64バイト
◆データ用EEPROM:128バイト

PIC12F683

単価 150円
◆最大20MHz
 (内蔵RC発振は125kHz〜8MHz)
◆プログラムメモリ:2048ワード
◆SRAM:128バイト
◆EEPROM:256バイト
◆ADコンバータ:10ビットx4ch
◆コンパレータ:1ch
◆タイマ:8ビットx2/16ビットx1

* RSオンライン

#部品調達 #電子工作
 RSオンラインの送料が代引き手数料込みで460円になっていた。これなら、まとめ買いしなくても割と気楽に品を買える。

 個人でも特に問題なく利用できるので、アマチュアの味方秋月やら千石やら若松やらで扱っていない品が必要な時に重宝する。


※弊社は基本的に法人・学校様でご登録をいただいてご注文をお願いしておりますが、
  個人様からのお問合せも多いことから、下記条件にご了承いただいた個人様とお取引をさせていただいております。
  ・代金のお支払い方法は【商品代引】のみとなります(手数料は無料です)
  ・ご自宅へのカタログ送付は承っておりません
RSオンラインからの確認メールから抜粋)

マイコン工作の実験室→ - フォーラム
http://micon.arrow.jp/modules/newbb/viewtopic.php?topic_id=44&forum=5&start=10
RS イギリス本国の方針で個人ユーザ様が優遇されない仕組みになって
  しまっています。私どもとしては個人のお客様は大歓迎ですので、
  ○○電子や○○企画といった屋号を名乗るなどしていただければ、
  企業様としてお取引ができます。

* deny from 64.124.85.0/24

#Web
 再び、BecomeBotに検索履歴をかき回されたので、.htaccessにて排除することにした。
robots.txt BecomeBot締め出し
http://baku.homeunix.net/WiKi/rnx/index.rb?1138996756.txt
にてのけ者にしたはずなのだが、BecomeJPBotは別物というわけか。え゛ー。
 ちなみに、robots.txtは最初にちゃんと読んでる。

 20秒に一度のアクセスだったり、UAの項に載っている http://www.become.co.jp/site_owners.htmlは「お客様が指定されたページは見つかりませんでした。」だったり、かなり感じ悪い。
(ちなみに、正しくは、http://www.become.co.jp/site_owner.html だそうだ。その辺の食い違いも感じ悪いぞ)
 また、他の多くのクローラの挙動と違ってリファラを送る点で、RandomeNoteの敵。

↓はた迷惑なアクセスの記録
(ReadMore...)

* 色々な掲示板spam

#掲示板spam対策 #Web
 うちの掲示板へ書き込みを試みたspam投稿ロボットの形跡を挙げる。
(ReadMore...)

* スクロール専用USB接続「ホイール」

#電子工作 #途中経過
 故障した2.5インチHDDを部品として、USB接続マウスの回路を流用し、スクロール専用のUSB接続「ホイール」を作成した。
 ぐるぐると回してスクロールさせる操作感はとても気持ちいいのだが、使いどころは限られる。Picasaとの相性は抜群。特に、タイムライン表示をぐるぐる回すのはとても気持ちいい。


 スクロール専用なので、マウス(等)と併用する。

(ReadMore...)

* 秋月で売っている8ピンPICが値下がりしてた

#電子工作
PIC12F675
1 個 140円(税込)
10 個以上 1個単価 110円 [計\1,100]
 以前(少なくともC70頒布版のPiPo Ver.4を組んだ時)には、1個150円・10個以上なら単価130円だったはず。
 PIC12F629も値下がりしているけど、675との価格差が相変わらず10円なので、あえて629を買うことはあるまい。

 残念ながら、PIC12F683は変化無し。

* serial keys

#電子工作 #途中経過 #メモ
 お手軽にWindowsマシン(等)にキーボードのふりをするデバイスを繋ぐことができる「シリアルキー」に関するメモ。
 マウスカーソルの絶対座標移動とかもできて、色々使いでがありそう。
(近頃はレガシーデバイスが絶滅危惧種で、あまりお手軽でもないかも)

テクニカルライター後田 敏の部屋 PICマイコンーシリアルキーズ
http://goda.blog3.fc2.com/blog-entry-84.html
 十数回にわたるシリーズ。日本語キーボード設定での不具合などに関して詳しく書かれていたりして、かなり参考になる。

テクニカルライター後田_敏の部屋_(2)シリアルキーズ
仕様まとめ

シリアルキーによる補助装置のプログラミング
http://support.microsoft.com/default.aspx?scid=kb;ja;260727
 送信する文字列の表が見やすい。

site:www.microsoft.com serial-keys - Google 検索
http://www.google.com/search?hl=ja&lr=lang_ja&q=+site:www.microsoft.com+serial-keys
 各種Windowsでの設定方法


GIDEIの概要
http://www5.wind.ne.jp/ja1syk/uni_design/gidei-j1.htm
 マウスのコマンドなども規定されている。
 WindowsXPでも有効らしい。

日本におけるシリアルキーの経緯
http://www5.wind.ne.jp/ja1syk/serialkeys.htm
 Windows日本語版におけるシリアルキーの冷遇されっぷりが切々と記されている。


#「シリアルキーボード」とか「serial keyboard」とかで検索してもプロトコルの情報が引っかからなくて悩んでたのだけど、「シリアルキー」「serial keys」だったのか。

* DigiKeyでATTINYが安い

Digi-Key品番 ATTINY25-20PU-ND 数量

単価価格
1151.00000151
25136.600003415
100126.7400012674

メーカー品番 ATTINY25-20PU
商品概要 IC AVR MCU 2K 20MHZ 8-DIP

送料がそこそこかかるのが難だけど、秋月でPIC12F683を買うよりも幸せかもしれん。

* PS2版スターブレード用連射装置

#電子工作 #途中経過 #シンクロ連射 #PIC



  • 部品は、ほぼPIC12F675のワンチップ
  • PS用コントローラを利用する
  • 1/60秒ごとに、トリガA,Bを交互に叩く。
  • 出力をLに固定し、ポートの入出力方向を切り替えて、LとHi-Zを出力
  • 1/60秒はソフトウェアにててきとーにカウント
(ReadMore...)

* シンクロ連射回路

 PS2版スターブレード(鉄拳Vがおまけにつく)用のシンクロ連射が欲しい。
 新宿スポーツランドの筐体についていたトリガ交互連射のに慣れた身では、普通の連射パッドの連射では破壊力が足りない。

ボタンとのI/F

 PSあたりとお話しするのは大変なので、コントローラを乗っ取る。

AVRは全てのポートでオープンコレクタっぽい出力ができる。 PORTxxを0にして、DDRxxを操作すればそのポートは外付けの部品なしに Hi-Z or L の出力ができる。
naru 日記
http://naruken.cweb.tk/diary/diary.cgi?b=06084

 PICとかでも、たぶん、同じようなことができるな。

連射制御

 最初は「AVアダプタからコンポジットビデオ信号をもらってLM1881Nで同期信号をとりだして」と考えていたが、マイコン使うなら1/60秒測ればいいじゃん、と思った。
 昔からの多くの作例で同期信号を使っていたのは、汎用ロジックで組む場合には結局それが一番楽だったからだろう。しかし、扱うのは本来手で押すボタンなのだから、精密な同期は必要ない。
 同期信号を使うのは、映像信号の取り回しとか色々面倒が多く、部品点数も増える。マイコンで1/60秒測るなら、極端な話、本当にワンチップで済むだろう。

 ただ、マイコンで1/60秒を測った場合、VSYNCとの微妙なずれから「うなり」が生じるかもしれない。乱数でタイミングを揺らしてやるべきか?

#電子工作 #途中経過 #シンクロ連射

* レトロゲーム的グラフィック

…といっても、ファミコンどころではなく、インベーダーより前の話。


現状のスペック
 横56ドット、24ライン
 各ライン毎に1バイト割いて、前景色・背景色を8階調で指定できる
(手持ちのPIC16F648Aだと、VRAM形式ではこれが限界かな…?)

 ちょっと灰色を表示できるだけで、白黒のみに比べて格段に表現力が上がると感じた。
 灰色の直線は「床」とか「壁」に見立てることができる。各ライン毎に色を指定できるので、パレットアニメーションでスペースハリアー風の地面表現で疑似3Dものもいけるかも。
…とか、色々妄想できる。

#PIC #電子工作 #途中経過

* PIC + R-2R D/A でビデオ出力

 1kHzの正弦波とかを出していても楽しくないので、ビデオ信号を出してみた。

(ReadMore...)