VFD(IV-11&IV-15)をテスト

ちょっと探しものをしていたらなかなか見つからず、部屋の隅の魔境に手を出したところかなり前に作るだけ作って放置してあったVFD時計用のテスト基板を発見しました。いつぐらいに作ったのかとちょっと調べてみたら2013年5月に作ったらしい…。せっかく見つけたのでテストでもしてみようと思ったのですが、当時何を考えて作ったのかがよくわからん為に断念。何とかできるけどなんとかするのに時間かかるので断念。Orz

img_2009

それではということでブレッドボードに挿してテストしてみました。ネット上の情報ではピン配置が非常にわかりにくいため若干補足。IV-11は文字盤を正面にした状態にして一番手前側から反時計回りで以下になります。

・FL(+/-)
・GRID
・Anode(c/h/b/a/g/f/e/d)
・FL(+/-)

■ブレッドボードに挿してテスト風景(スタティック)
img_2012img_2011

IV11は25V必要らしいですが半分の17.5Vあれば十分見えます。逆に、IV15は35Vまで上げてもかなり暗いです。フィラメント電圧上げたりしてみたんですがあまり改善されないので使い方を考える必要があるかもしれません。

次にそのへんに転がっていたMAX6921を使ってテストしてみます。構成はESP8266+MAX6921+IV11でその辺にライブラリでも転がっているかと思ったのですが、ありませんね。しょうがないのでデータシート読んでみるとMAX6921は出力ゲート付きのシフトレジスタなんですね。簡単にArduinoのスケッチ作ってテストしてみます。ちょっとハマったのがデータがOUT19から入ると何故か勘違いしてうまく点かなくてひとしきり悩んだのと、ESB8266のPWMは標準状態で10bit仕様なので255が最大ではなく1023が最大になることです。

■テスト風景

img_2018

■MAX6921テストコード

#define VFD_LOAD 15
#define VFD_CLK 13
#define VFD_DIN 12
#define VFD_BLANK 5

// -ABCDEFG
const int seg[19] = {
B11111100, // 0
B01100000, // 1
B11011010, // 2
B11110010, // 3
B01100110, // 4
B10110110, // 5
B10111110, // 6
B11100000, // 7
B11111110, // 8
B11100110, // 9
B00000000, // 10 (blank)
B00000001 // 11 (DP)
};

void setup() {
Serial.begin(9600);

pinMode(VFD_LOAD, OUTPUT);
pinMode(VFD_CLK, OUTPUT);
pinMode(VFD_DIN, OUTPUT);
pinMode(VFD_BLANK, OUTPUT);

analogWrite(VFD_BLANK, 1023);//esp8266(0-1023)

}

int count=0;

void loop() {

digitalWrite(VFD_LOAD, LOW);

for( int i = 0; i < 3; i++) // SEG-Group(HH/MM/SS) - OUT17-19
{
digitalWrite(VFD_CLK, LOW);

digitalWrite(VFD_DIN, HIGH);

digitalWrite(VFD_CLK, HIGH);

digitalWrite(VFD_DIN, LOW);
}

// colon - OUT16
digitalWrite(VFD_CLK, LOW);

digitalWrite(VFD_DIN, LOW);

digitalWrite(VFD_CLK, HIGH);
digitalWrite(VFD_DIN, LOW);

for (int j=0; j<2; j++) // 1&10-digit - OUT0-7/8-15
{
for (int k=0; k<8; k++) // degit { digitalWrite(VFD_CLK, LOW); digitalWrite(VFD_DIN, bitRead(seg[count], k)); digitalWrite(VFD_CLK, HIGH); digitalWrite(VFD_DIN, LOW); } } digitalWrite(VFD_LOAD, HIGH); analogWrite(VFD_BLANK, 1023/10*count); delay(1000); if(count>9){count=0;}else{count++;}

}

テストコードは最終的に時計にしたいのでそのあたり考えた部分があります。OUT0-7/OUT8-15がグループ、桁制御はOUT017-19、独立してIV15点灯制御がOUT16予定のコードです。

チップ間接続
MAX6921(LOAD) – ESP-WROOM-02(GPIO15)
MAX6921(CLK) – ESP-WROOM-02(GPIO13)
MAX6921(DIN) – ESP-WROOM-02(GPIO12)
MAX6921(BLANK) – ESP-WROOM-02(GPIO5)

MAX6921(OUT0) – IV11(a-seg)
MAX6921(OUT1) – IV11(b-seg)
MAX6921(OUT2) – IV11(c-seg)
MAX6921(OUT3) – IV11(d-seg)
MAX6921(OUT4) – IV11(e-seg)
MAX6921(OUT5) – IV11(f-seg)
MAX6921(OUT6) – IV11(g-seg)
MAX6921(OUT7) – IV11(dp-seg)

MAX6921(OUT17) – IV11(GRID)

5V – 220Ω – IV11(FL+)
GND – IV11(FL-)

■テスト動画(数字が大きくなると輝度が落ちます)

さて、せっかくテストしたのでどうしましょうかね…。そういえば、探しものは見つかっていません。(泣)

  1. コメントはまだありません。

  1. トラックバックはまだありません。

 
%d人のブロガーが「いいね」をつけました。