漢字ROMな日々
2005/07 1th 02p
VFDを使うべく70V 1Wを用意する方法を模索する。簡単に出す方法として、馬鹿の一つ覚えブロッキング発振を試みる。トランジスタは秋月で3個パックが\200だったダーリントントランジスタ2SD1128を使用hfeが1000以上。100V超耐圧は手持ちでこれしかなかった。負饋還にも2SD1128。コイルはジャンク箱に転がってたヤツにベースコイルを手巻き。これだけテキトーに作ってもちゃんと70V1.5W出た。ただコイルが大きすぎたらしく発振が可聴域でうるさい。ダーリントントランジスタはVCEが大きくて効率が悪いらしい。1kΩ0.5Wの抵抗を使ってたのだけど、これが燃えるとは恐るべし。
2005/07 2th 01p
7/8 電源を少し改良して使える状態に作り直す。100kの半固定抵抗を10kに変更。1kの抵抗を470に変更。効率は4割。周波数が可聴域なのはどうすれば?―ファンを付けて誤魔化す(笑)
2005/07 2th 04p
パワートランジスタ
型番 | Vceo | Ic | Icbo | Iebo | Vce | Vbe | hfe | 価 |
2sc3751L | 800V | 1A5 | 10uA | 10uA | 2.0V | 1.5V | 15-30 | 秋25 |
2sd1128 | 100V | 5A | 1mA | 1mA | 1.5V | 2.0V | 10k | 秋67 |
2sd1407A | 100V | 5A | 100uA | 1mA | 2V | 1.5V | 40-240 | 千100 |
2sd1415A | 100V | 7A | 100uA | 3mA | 0.9V | 1.5V | 2k-15k | 千100 |
2sd2206 | 100V | 2A | 10uA | 4mA | 1.5V | 2.0V | 2k- | 千50 |
2sd2241 | 100V | 4A | 2.0uA | 2.5mA | 1.5V | 2.0V | 1k- | 千100 |
2sd2257 | 100V | 3A | 10uA | 4mA | 1.5V | 2.0V | 2k- | 千80 |
2sd2386 | 140V | 7A | 50uA | 50uA | 2.5V | 3.0V | 5k-30k | 千300 |
2sd2387 | 140V | 8A | 5.0uA | 5.0uA | 2.5V | 3.0V | 5k-30k | 千300 |
2sd2536 | 100V | 2A | 10uA | 1.5mA | 1.5V | - | 2k- | 千50 |
2sd2604 | 110V | 5A | 100uA | 4.0uA | 1.5V | 2.5V | 2k-15k | 千100 |
7/9 グラフィックなデバイスに漢字を表示させたいときは所謂 漢字ROM が必要になる。
データは、さすがに何千字もドット打ちする勇気はないので、既存のフォントを使わせてもらうことにする。
とりあえず、Shift-JISコードを見渡すために 0x0000 から 0xffff までが並んだバイナリファイルを作る。
テキストエディタに読み込ませフォントの無い所を斬ったら8640文字になった。ソース sjis.exe sjis.txt
2005/07 2th 05p
7/10 フォントデコーダを書く。
マイコンでTTFを展開するのは辛そうなので、あらかじめパソコンでビットマップ(?)に展開しておくことにする。
TTFをバイナリで開いて自力で展開するのは辛そうなので、windows様に展開してもらうことにする。
あとはこれをMMCに書き込めば シリアル漢字ROM が出来上がる。
ソース font.exe←32dot位まで
2005/08 2th 01p
8/13 VFD。送信したフォントデータを直接表示するとこまでできた、バッファとコントローラが内蔵されてるので楽。
DC-DCコンバータが発熱するので、トランジスタにが放熱板をつけるが、コイルもあっちっちなのはどうすれば?
そもそも、5Vから70V35mAを搾り出そうとするのが間違いか。
あぅ、基板にmmcを載せるスペースがない
2005/08 2th 02p
8/14 朝。基板にmmcをくっつけて、SPIモードで初期化するとこまでプログラムを書く。今回はVFDのパラレルIOが5VなのでH8も5V、だからmmcのためにレベル変換をしないといけないのだが、どうしたものか。受動部品だけのかんたんな回路にしたい。H8の閾電圧が低めなら楽なんだけど。
2005/08 3th 00p
8/17 レベル変換、抵抗で分圧するのが最適という結論になった。
2005/08 3th 01p
MMCを操る関数が出来てきた。はまりどころは、ダミークロックだった。
コマンドを発行する前に0xffを幾つか送るようにしたら上手く行った。
レスポンスでエラーが出るとコマンドを発行しなおしたりもさせる。
2005/08 3th 02p
8/18 フォントデータの「PC→マイコン→MMC」という転送ができて、MMCから読んだデータをVFDにそのまま表示。先週の写真と同じものが表示された。
2005/08 3th 03p
8/20 S-JISコードから当該文字ビットマップ先頭のアドレスを出すハッシュ関数を作って、任意の文字列を表示できるようになった。
C言語は、PC上で関数単位のデバグができるのでアセンブラに比べてかなり早く進む。その分、自分の頭を使ってないということだけど。
現状の問題:半角はビットマップがないので表示できない。
2005/08 4th 00p
8/24 VFD。各種コマンドを用意。
このモジュールは来年ビッグサイトでキット販売するという話があったりする。
そのためには、低価格化のためにRAMが128Bしかない AVRで動くとこまで持ってゆかねばならない。
今のプログラムではRAM使いすぎ。
2005/08 4th 01p
8/25 昔の月刊アスキーで特集してた。あまり知られてないけど、unixで言うシェルスクリプトの様なものがwindowsにもあって、その一つにJavaScriptがある。JavaScriptはhtmlに埋め込んで使うのが有名だったりする。
なんと、ファイルにアクセスしたり他のプログラムを開始させたりもできる。で、思いつきで、html埋め込みJavascriptとして
とやってみたら、IEで動いたw。comポートから信号が出る。一応警告が出るけど、IE恐るべし。
2005/09 1th 04p
9/5 このレベル変換は怪しい。MMCのDOにはVcc3.3Vへの保護ダイオードが入ってるからDOは3.3Vを大きく超えないと思ってた(a)けど、MMCの消費流が少ないと3端子リニアレギュレータで作ったVcc3.3Vの電圧が3.3Vより高くなる疑惑(b)。
4.7kΩの抵抗かツェナダイオードをレギュレータの負荷にすればよさそう(c)。現状でも動いてるんだけどね。
【最新】 かてごり 逆順
01 02 03 04 05 06 07 08 09 10 11 12 2003
01 02 03 04 05 06 07 08 09 10 11 12 2004
01 02 03 04 05 06 07 08 09 10 11 12 2005
01 02 03 04 05 06 07 08 09 10 11 12 2006
01 02 03 04 05 06 07 08 09 10 11 12 2007
01 02 03 04 05 06 07 08 09 10 11 12 2008
01 02 03 04 05 06 07 08 09 10 11 12 2009
01 02 03 04 05 06 07 08 09 10 11 12 2010
01 02 03 04 05 06 07 08 09 10 11 12 2011
01 02 03 04 05 06 07 08 09 10 11 12 2012
01 02 03 04 05 06 07 08 09 10 11 12 2013
01 02 03 04 05 06 07 08 09 10 11 12 2014
01 02 03 04 05 06 07 08 09 10 11 12 2015
01 02 03 04 05 06 07 08 09 10 11 12 2016
01 02 03 04 05 06 07 08 09 10 11 12 2017
01 02 03 04 05 06 07 08 09 10 11 12 2018
01 02 03 04 05 06 07 08 09 10 11 12 2019
01 02 03 04 05 06 07 08 09 10 11 12 2020
01 02 03 04 05 06 07 08 09 10 11 12 2021
01 02 03 04 05 06 07 08 09 10 11 12 2022
01 02 03 04 05 06 07 08 09 10 11 12 2023
01 02 03 04 05 06 07 08 09 10 11 2024
Copyright 2006 naru
naruken diary system