あやの
NゲージをベースとしたDCCについての日記を 書いています。 ある程度貯まりましたら、鉄道模型のDCCのまとめサイトに まとめています。 借りている容量が最大に達しましたので、移転します。 ★移転先:http://maison-dcc.sblo.jp/
最近のDecoder基板の薄型化に触発されて板厚0.6mmバージョンの
SmileFunctionDecoderを検討しています。
回路はこんな感じ。
CPU Attiny85
両極性端子(ヘッドライト:調光可能/テールライト:On/Offのみ) 2FXとしても使用可能
2FX(室内灯とかパンタスパークとか車掌灯など)
LED用電源は12V
LED用の電流制限抵抗は載せたい・・・
新しい事は
ブリッジダイオードはRoHMのUMR12N SOT-363パッケージで小型!
5V電源はツェナーダイオードを使用
両極性ドライバとしてHブリッジのMP6513(モータは動かせないよ!)
2FXドライバとしてRoHMのUMG1Nのデジタルトランジスタ
この抵抗はLED用の電流制限抵抗です。
大きさは、25.4mm x 7.62mm 厚さは1.6mmくらい。
SmileConnectorが不要な方はミシン目から切り離せる感じに。
もう一つのパターンは、部品を両面に実装して、長手方向をシェイプアップした
タイプ。
大きさは、15.494mm x 7.62mm 厚さは3.2mmくらい。
【追記】
議論用のスレッドを立ち上げました!
SmileFunctionDecoderを検討しています。
回路はこんな感じ。
CPU Attiny85
両極性端子(ヘッドライト:調光可能/テールライト:On/Offのみ) 2FXとしても使用可能
2FX(室内灯とかパンタスパークとか車掌灯など)
LED用電源は12V
LED用の電流制限抵抗は載せたい・・・
新しい事は
ブリッジダイオードはRoHMのUMR12N SOT-363パッケージで小型!
5V電源はツェナーダイオードを使用
両極性ドライバとしてHブリッジのMP6513(モータは動かせないよ!)
2FXドライバとしてRoHMのUMG1Nのデジタルトランジスタ
この抵抗はLED用の電流制限抵抗です。
大きさは、25.4mm x 7.62mm 厚さは1.6mmくらい。
SmileConnectorが不要な方はミシン目から切り離せる感じに。
もう一つのパターンは、部品を両面に実装して、長手方向をシェイプアップした
タイプ。
大きさは、15.494mm x 7.62mm 厚さは3.2mmくらい。
【追記】
議論用のスレッドを立ち上げました!
ファンクッションは当初
出発時 F4
PM9 F5
AM0 F6
AM3 F7
AM6 F8
ヤード F9
で作りましたが、DCS50k がF9認識しなかったので、AM6無くしてF8 ヤードになっています。
また、DCS50Kは電源を入れ直しても、前回のファンクッションを覚えている様で
いろいろ対策入れました。
勝手にF4が始まるのはガードしきれていません。
ヤードはランダムに点灯する様に作ってみました。
出発時 F4
PM9 F5
AM0 F6
AM3 F7
AM6 F8
ヤード F9
で作りましたが、DCS50k がF9認識しなかったので、AM6無くしてF8 ヤードになっています。
また、DCS50Kは電源を入れ直しても、前回のファンクッションを覚えている様で
いろいろ対策入れました。
勝手にF4が始まるのはガードしきれていません。
ヤードはランダムに点灯する様に作ってみました。
void Elm_Control(){
static char state = 0; // ステート
static char lamp[8]={0,0,0,0,0,0,0};
static char sw = 0;
static long cnt=0;
long selL =0;
switch(state){
case 0:
if(gState_F4 == 0){
lamp[0] = 0;
} else {
lamp[0] = 1;
}
if(gState_F5 == 0){
lamp[1] = 0;
} else {
lamp[1] = 1;
}
if(gState_F6 == 0){
lamp[2] = 0;
} else {
lamp[2] = 1;
}
if(gState_F7 == 0){
lamp[3] = 0;
} else {
lamp[3] = 1;
}
if(gState_F8 == 0){
lamp[4] = 0;
} else {
lamp[4] = 1;
}
if(gState_F9 == 0){
lamp[5] = 0;
} else {
lamp[5] = 1;
}
digitalWrite(O1, LOW);
digitalWrite(O2, LOW);
digitalWrite(O3, LOW);
digitalWrite(O4, LOW);
cnt ++;
if (cnt==10){
state = 1;
cnt =0;
}
break;
case 1:
if(gState_F4 != lamp[0]){
// F4 受信時の処理
// 出発時
digitalWrite(O1, LOW);
digitalWrite(O2, HIGH);
digitalWrite(O3, LOW);
digitalWrite(O4, LOW);
lamp[0] = gState_F4;
break;
}
if(gState_F5 != lamp[1]){
// F5 受信時の処理
// PM9時
digitalWrite(O1, HIGH);
digitalWrite(O2, HIGH);
digitalWrite(O3, HIGH);
digitalWrite(O4, HIGH);
lamp[1] = gState_F5;
break;
}
if(gState_F6 != lamp[2]){
// F6 受信時の処理
// AM0時
digitalWrite(O1, HIGH);
digitalWrite(O2, HIGH);
digitalWrite(O3, HIGH);
digitalWrite(O4, LOW);
analogWrite(O4, 10);
lamp[2] = gState_F6;
break;
}
if(gState_F7 != lamp[3]){
// F7 受信時の処理
// AM0時
digitalWrite(O1, HIGH);
digitalWrite(O2, HIGH);
digitalWrite(O3, HIGH);
digitalWrite(O4, LOW);
lamp[3] = gState_F7;
break;
}
if(gState_F8 != lamp[4]){
// F8 受信時の処理
// AM6時
digitalWrite(O1, LOW);
digitalWrite(O2, LOW);
digitalWrite(O3, LOW);
digitalWrite(O4, LOW);
state = 2;
lamp[4] = gState_F8;
break;
}
if(gState_F9 != lamp[5]){
// F9 受信時の処理
// ヤード
digitalWrite(O1, LOW);
digitalWrite(O2, LOW);
digitalWrite(O3, LOW);
digitalWrite(O4, LOW);
state=2;
lamp[5] = gState_F9;
break;
}
break;
case 2:
if(gState_F4 != lamp[0]){
state =1;
break;
}
selL = random(3);// 0 - 2
cnt = random(1,5);
FlashTimer = millis();
switch(selL){
case 0:
state = 3;
break;
case 1:
state = 4;
break;
case 2:
state = 5;
default:
break;
}
break;
case 3:
if((millis()-FlashTimer) >= 200){
FlashTimer = millis();
if(sw==0) {
digitalWrite(O1, LOW);
sw = 1;
cnt--;
} else {
digitalWrite(O1, HIGH);
sw = 0;
}
if(cnt==0){
state = 2;
}
}
break;
case 4:
if((millis()-FlashTimer) >= 300){
FlashTimer = millis();
if(sw==0) {
digitalWrite(O3, LOW);
cnt--;
sw = 1;
} else {
digitalWrite(O3, HIGH);
sw = 0;
}
if(cnt==0){
state = 2;
}
}
break;
case 5:
if((millis()-FlashTimer) >= 400){
FlashTimer = millis();
if(sw==0) {
digitalWrite(O4, LOW);
sw = 1;
cnt--;
} else{
digitalWrite(O4, HIGH);
sw = 0;
}
if(cnt==0){
state = 2;
}
}
break;
default:
break;
}
}
ブログ内検索
カテゴリー
最新記事
(12/31)
(12/31)
(12/29)
(12/23)
(12/18)
リンク
プロフィール
HN:
あやのすけ
性別:
非公開