早速買ってみた。
箱はきれい。
内箱?もきれい。
グレアパネルだw
アダプタは100V~240V対応
メニューはデフォルトで英語。
日本語メニュー発見。
輝点も発見。マウスの先の奴です他はゴミ。
コントラスト処理して色むらをちぇっく。
2008年9月29日月曜日
S9706
デジタルカラーセンサです。
秋月でなんとなく買ってきました。
PSoCの勉強がてらこれを使ってなんか作ってみます。
ありきたりな感じに・・・カラーセンサからのデータを
フルカラーLEDに反映させると。
まずはデータ取得。
データシートから・・・
ある程度の時間計測してから各色12bitづつクロックを入れればデータが取れるようね。
適当に書いてみる。
//初期化
PRT1DR &= 0b00000000; //すべてL
//Range設定
PRT1DR |= 0b00000010; //RangeをH
nop(500);
//測光
PRT1DR |= 0b00011000;//測光開始
nop(5000);
PRT1DR &= ~0b00011000;//測光終了
nop(1);
//赤データ取り込み
for(r=0;r<=11;r++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
rd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
rd2 = rd2 + (rd <<>
}
とりあえずこんなんで取れてる模様。
ビットシフトを初めて使ってみたw
前から存在は知ってていまいち使いどころが不明だなぁと思ってたんだけど
マイコンとかCPUに近いところだとすげぇなコレって感じで有用ですw
あとは取れたデータをPWMにそのまま入れてみます。
んで、できたのがコレ。
#include // part specific constants and macros
#include "PSoCAPI.h" // PSoC API definitions for all User Modules
#include
void nop(int count){
int i;
for(i = 0; i < count; i++){
}
}
void main(){
int r;
int rd;
int rd2;
int g;
int gd;
int gd2;
int b;
int bd;
int bd2;
char red[];
char green[];
char blue[];
LCD_Start();
//初期化
PRT1DR &= 0b00000000; //すべてL
//Range設定
PRT1DR |= 0b00000010; //RangeをH
nop(500);
//測光
PRT1DR |= 0b00011000;//測光開始
nop(5000);
PRT1DR &= ~0b00011000;//測光終了
nop(1);
//赤データ取り込み
for(r=0;r<=11;r++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
rd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
rd2 = rd2 + (rd << r);
}
//緑データ取り込み
for(r=0;g<=11;g++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
gd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
gd2 = gd2 + (gd << g);
}
//青データ取り込み
for(b=0;b<=11;b++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
bd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
bd2 = bd2 + (bd << b);
}
//表示
itoa(red,rd2,10);
LCD_Position(1,0);
LCD_PrString(red);
PWM16_1_WritePeriod(4095);
PWM16_1_WritePulseWidth(rd2);
PWM16_2_WritePeriod(4095);
PWM16_2_WritePulseWidth(gd2);
PWM16_3_WritePeriod(4095);
PWM16_3_WritePulseWidth(bd2);
PWM16_1_Start();
PWM16_2_Start();
PWM16_3_Start();
}
かなり適当です。LCD表示はRだけだし・・・
各色の調整してないから白にならないし・・・
それは今後の課題ってことでw
秋月でなんとなく買ってきました。
PSoCの勉強がてらこれを使ってなんか作ってみます。
ありきたりな感じに・・・カラーセンサからのデータを
フルカラーLEDに反映させると。
まずはデータ取得。
データシートから・・・
ある程度の時間計測してから各色12bitづつクロックを入れればデータが取れるようね。
適当に書いてみる。
//初期化
PRT1DR &= 0b00000000; //すべてL
//Range設定
PRT1DR |= 0b00000010; //RangeをH
nop(500);
//測光
PRT1DR |= 0b00011000;//測光開始
nop(5000);
PRT1DR &= ~0b00011000;//測光終了
nop(1);
//赤データ取り込み
for(r=0;r<=11;r++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
rd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
rd2 = rd2 + (rd <<>
}
とりあえずこんなんで取れてる模様。
ビットシフトを初めて使ってみたw
前から存在は知ってていまいち使いどころが不明だなぁと思ってたんだけど
マイコンとかCPUに近いところだとすげぇなコレって感じで有用ですw
あとは取れたデータをPWMにそのまま入れてみます。
んで、できたのがコレ。
#include
#include "PSoCAPI.h" // PSoC API definitions for all User Modules
#include
void nop(int count){
int i;
for(i = 0; i < count; i++){
}
}
void main(){
int r;
int rd;
int rd2;
int g;
int gd;
int gd2;
int b;
int bd;
int bd2;
char red[];
char green[];
char blue[];
LCD_Start();
//初期化
PRT1DR &= 0b00000000; //すべてL
//Range設定
PRT1DR |= 0b00000010; //RangeをH
nop(500);
//測光
PRT1DR |= 0b00011000;//測光開始
nop(5000);
PRT1DR &= ~0b00011000;//測光終了
nop(1);
//赤データ取り込み
for(r=0;r<=11;r++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
rd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
rd2 = rd2 + (rd << r);
}
//緑データ取り込み
for(r=0;g<=11;g++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
gd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
gd2 = gd2 + (gd << g);
}
//青データ取り込み
for(b=0;b<=11;b++){
PRT1DR |= 0b00000100; //CKをH
nop(9);
bd = (PRT1DR >>7) & 0b00000001;
nop(1);
PRT1DR &= ~0b00000100; //CKをL
nop(10);
bd2 = bd2 + (bd << b);
}
//表示
itoa(red,rd2,10);
LCD_Position(1,0);
LCD_PrString(red);
PWM16_1_WritePeriod(4095);
PWM16_1_WritePulseWidth(rd2);
PWM16_2_WritePeriod(4095);
PWM16_2_WritePulseWidth(gd2);
PWM16_3_WritePeriod(4095);
PWM16_3_WritePulseWidth(bd2);
PWM16_1_Start();
PWM16_2_Start();
PWM16_3_Start();
}
かなり適当です。LCD表示はRだけだし・・・
各色の調整してないから白にならないし・・・
それは今後の課題ってことでw
2008年8月22日金曜日
LS-WH1.0TGL/R1
電脳売王で上記NASのドンガラを入手。
手持ちのHDをつなげていきなり電源ON。
きゅいーーん・・・カコン。
エラーコードが出るな・・・16はコントローラエラーorz
リセットボタンを押すとエラーは消えたがEMにもならず無反応。
PCとクロスケーブルでつなげてWIRESHARKを起動。
アドレスは192.168.11.150らしい。1に何か送ってるな・・・
PCのアドレスを192.168.11.1に変更。
パケットを見ると、tftpで何か要求してる。
PCにTFTPサーバを入れて起動。共有はアップデータのフォルダ。
initrd.buffaloを要求してるんでinitrd.imgが怪しいんでzipで解凍。
パスワードとか聞かれるんでゴニョゴニョ・・・
ファンの音が大きくなって起動プロセスに入った模様。
なんかDHCP鯖を探してるようだけど放置。勝手に169とか付くでしょ。
しばらくするとおとなしくなったのでアップデータを起動。
予想通りアドレスが169だったんでPCのアドレスも合わせて設定。
はい。アップデータ動きました。あとは問題ないっしょ。
手持ちのHDをつなげていきなり電源ON。
きゅいーーん・・・カコン。
エラーコードが出るな・・・16はコントローラエラーorz
リセットボタンを押すとエラーは消えたがEMにもならず無反応。
PCとクロスケーブルでつなげてWIRESHARKを起動。
アドレスは192.168.11.150らしい。1に何か送ってるな・・・
PCのアドレスを192.168.11.1に変更。
パケットを見ると、tftpで何か要求してる。
PCにTFTPサーバを入れて起動。共有はアップデータのフォルダ。
initrd.buffaloを要求してるんでinitrd.imgが怪しいんでzipで解凍。
パスワードとか聞かれるんでゴニョゴニョ・・・
ファンの音が大きくなって起動プロセスに入った模様。
なんかDHCP鯖を探してるようだけど放置。勝手に169とか付くでしょ。
しばらくするとおとなしくなったのでアップデータを起動。
予想通りアドレスが169だったんでPCのアドレスも合わせて設定。
はい。アップデータ動きました。あとは問題ないっしょ。
2008年8月5日火曜日
2008年8月2日土曜日
なんか急に工作熱が沸いてきて何かおもしろそうな物は無いかと物色してると
AVRなるものが・・・以前PICでは微妙に挫折したのだがコレなら行けそう。
環境がAVR STUDIO+WinAVRのほぼ1択ってのが個人的には好き。
LinuxよりFreeBSDが好きってのも似たような理由かも。
秋葉へ買い出しと思ったのだが、暑いんで中止。
通販ですませる事に。秋月とマルツで注文。
単価が安い物が多く買い忘れると送料がまたかかるんで
珍しく慎重にポチポチ。
金曜に注文して火曜には到着。
秋月は土日休みでマルツは振込みなんで実質当日発送か。
速く届いてもなかなか時間がとれないんだけどね。
んでやっと今日サクサクっと作ってみた。
とりあえずはプログラマーと繋がるだけw
せめてLEDかなんかピコピコさせないと面白くないなぁ・・・
2008年8月1日金曜日
HSP
会社でログ整理にperlで組んでたのがイマイチ不評なんで
簡単にGUIにできそうなHSPで組み直してみる。
入門書を読んでみたけど読むのに結構時間かかった
2時間位かな。前はもっと速く読めたんだけど頭鈍ってるのかな・・・
perlと比べるとテキストを扱うのはチト苦手っぽい感じかな。
デフォだと正規表現使えないし・・・
repeat 24,0
if cnt>10 :aaa(cnt)=1
loop
repeat 24,0
mes aaa(cnt)
loop
こんなのもダメっぽい必要な所だけビット立てるような使い方だと
ダメで条件付けて0か1を振ってあげるか最初に全部0を入れるかしないと・・・
デフォ値くらい付けとけよーと思う。
まーお約束みたいなモンで覚えちゃえば使えるっていえば使えるっていうか
使うしか無いって言うか・・・
簡単にGUIにできそうなHSPで組み直してみる。
入門書を読んでみたけど読むのに結構時間かかった
2時間位かな。前はもっと速く読めたんだけど頭鈍ってるのかな・・・
perlと比べるとテキストを扱うのはチト苦手っぽい感じかな。
デフォだと正規表現使えないし・・・
repeat 24,0
if cnt>10 :aaa(cnt)=1
loop
repeat 24,0
mes aaa(cnt)
loop
こんなのもダメっぽい必要な所だけビット立てるような使い方だと
ダメで条件付けて0か1を振ってあげるか最初に全部0を入れるかしないと・・・
デフォ値くらい付けとけよーと思う。
まーお約束みたいなモンで覚えちゃえば使えるっていえば使えるっていうか
使うしか無いって言うか・・・
半田ゴテ
今使ってる半田ゴテは中学生の頃に買った年代物。
確か12w、30w、60wの3本。
んで半田吸取り器を探してたんだけどなぜか半田ステーションにw
値段的にSKZ-01とFX-950の2択。
適当に拾ってきた画像をリサイズしてみてペンの比較をしてみた。
全体的なバランスはSKZで先っちょの長さならFXって感じかな。んで温度特性を見ると圧倒的にSKZかな。
使用したハンダの量の条件が違うんだけど
計算してみるとFXが10でSKZが11。
単位は面倒なので省略。μcc?
105w強しって所かな。
ん??アレ何か・・・グラフずれてるなぁ・・・
150秒の所で合わせたんだけど・・・
FXの方が0-50秒で圧縮してるのか。
セコイぞHAKKO
確か12w、30w、60wの3本。
んで半田吸取り器を探してたんだけどなぜか半田ステーションにw
値段的にSKZ-01とFX-950の2択。
適当に拾ってきた画像をリサイズしてみてペンの比較をしてみた。
全体的なバランスはSKZで先っちょの長さならFXって感じかな。んで温度特性を見ると圧倒的にSKZかな。
使用したハンダの量の条件が違うんだけど
計算してみるとFXが10でSKZが11。
単位は面倒なので省略。μcc?
105w強しって所かな。
ん??アレ何か・・・グラフずれてるなぁ・・・
150秒の所で合わせたんだけど・・・
FXの方が0-50秒で圧縮してるのか。
セコイぞHAKKO
登録:
投稿 (Atom)