2008年2月24日日曜日

チャタリング防止の実験 - PICマイコンで電子工作&ゲームを作ろ�

チャタリング防止の実験 - PICマイコンで電子工作&ゲームを作ろ�


もう一つ、チャタリング防止についての記事です。

ここで紹介されている「DELAY_MS()」という関数を、
EZ-USBの開発で使うことができるのかどうかわかりませんが、

単に待たせるのではもったいないので
各処理に共通のカウンタを使って分散して処理するという案を
書いていらっしゃいます。


毎日少しずつ賢くなっている錯覚に陥っています(^^;

2008年2月20日水曜日

So-net blog:新適当マイコン電子工作研究所:USB プロジェクト - ReportDescri..

So-net blog:新適当マイコン電子工作研究所:USB プロジェクト - ReportDescri..


またしても記事の紹介です。
キーボードのdescriptorに書いてある内容の解説があります

勉強になりますなぁ

2008年2月1日金曜日

猫のトラックボールルーム ~創朋 使えてマウス! 3DUSB/PS2/OFF-TABLE~

猫のトラックボールルーム ~創朋 使えてマウス! 3DUSB/PS2/OFF-TABLE~

猫のトラックボールルームバナー(縁なし)http://mineko.fc2web.com/box/tb-room/index.html

次の写真と表はすべて上記「三猫」様のページから無断転載しました。ごめんなさい。
Microsoft Trackball Explorer
メーカー 創朋
(製造元:3G Green Green Globe)
ボタン数 3ボタン
ホイール なし
エンコーダー ゴム巻きシャフト式
ボール支持 スチール小球による3点支持
ボール経 19mm
コネクタ PS/2・USB



俺が作ってる「キーボード+トラックボール」の、トラックボール部分に使おうとしているものが、
これです。

色違いのグレーですが。

この↓の発光部とセンサ部なんですが、それぞれ4ピンあります。
どうやって使うんだろう…そもそも型番とか分からないのです…
メイン基盤 メイン基板です。

この手の内部スペースに乏しい器機は基板にしわ寄せが来ることが多いのですが、 とてもシンプルでオーソドックスな形状です。 しみじみこのトラックボールは、設計が上手よね。
エンコーダ 綺麗にユニット化された発光部とセンサ部。 真ん中のスリットにゴム付きシャフトについた羽根車がピタリとはまります。

外からの光でセンサが邪魔されるのを防止するためと思われるカバーは 意外に他の器機では見ることが少ないです。 そこに本機の品質へのこだわりを感じさせます。

俺も昔、アキバじゃなくて買っていて、
追加で今回の工作用にアキバでもう2つ買いました。

さらに他の機種も買ったんだけど、ボールの大きさと動きの滑らかさから
こっちの機種を使うことにしました。

猫のトラックボールルームバナー(縁なし)http://mineko.fc2web.com/box/tb-room/index.html
「三猫」さま、素晴らしいページ、写真、情報をありがとうございます!

2008年1月8日火曜日

113.ロータリーエンコーダを使う

113.ロータリーエンコーダを使う


自分で同じもの2回アップしてたりして…
ボール式マウス(トラックボール)を作るには必須の情報でしょう。
作者に感謝!

2007年12月25日火曜日

Pull up/down

Pull up/down

これまたすばらしいページです。
世にあまたある情報かもしれませんが、
ググルのカミが上位に上げたので、リンクを保存…

プルアップとかプルダウンとか
さっぱり分からなかったけど、
なんとなく分かってきました。

2007年12月20日木曜日

PSoCでUSBマウスを作る (dinop.com)

PSoCでUSBマウスを作る (dinop.com)


なんかヒントがありそうな気がする。
やっぱり割り込みを使ってボールの移動量を増減しているようだ。
使ってるチップもサイプレスの「CY8C24794-24LFXI」だし。


以下は上記ページから転載。。。。

#pragma interrupt_handler GPIO_INT

void GPIO_INT(void)

{

if((SW_1_PORT & SW_1_A) == 0)

{

if(SW_1_PORT & SW_1_B)

abMouseData[1] -= 10; //move to left

else

abMouseData[1] += 10; //move to right

}



if((SW_2_PORT & SW_2_A) == 0)

{

if(SW_2_PORT & SW_2_B)

abMouseData[2] -= 10; //move to up

else

abMouseData[2] += 10; //move to down

}



if(PRT1DR & 0x10)

abMouseData[0] |= 0x01; //left button down

else

abMouseData[0] &= ~0x01; //left button up



if(PRT1DR & 0x20)

abMouseData[0] |= 0x02; //right button down

else

abMouseData[0] &= ~0x02; //right button up

}




2007年10月4日木曜日

2週間って、どうよ?

EM・ONEを「α」にするために、1万円の出費と、
2週間手元にない状態を甘受しなければならないらしい。

なんでそんなにかかるんだろう。
ビックカメラのイーモバイルの売り場に1時間預けたら出来そうなもんだけどなぁ。
1000円くらいで。

発売前から予約して、発売日の朝に開店前から並んでいたユーザには、
そんくらい したまえよ、
って思う。