<?xml version="1.0" encoding="UTF-8" ?>
<rss version="0.91">
  <channel>
    <title>Y-Lab. Blog</title>
    <description>趣味の電子工作など</description>
    <link>http://ydot.blog.shinobi.jp/</link>
    <language>ja</language>
    <copyright>Copyright (C) NINJATOOLS ALL RIGHTS RESERVED.</copyright>

    <item>
      <title>おしらせ</title>
      <description>&lt;span style=&quot;color: #ff0000;&quot;&gt;[2016/05/20]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #ff0000;&quot;&gt;独自ドメインを取得しましたので、ブログを移行します。&lt;/span&gt;&lt;br /&gt;
（新アドレス：&lt;a href=&quot;http://blog.y-lab.org/&quot; title=&quot;&quot;&gt;http://blog.y-lab.org/&lt;/a&gt;）&lt;br /&gt;
以降記事は新しいブログにのみ追加していきます。</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/58/</link> 
    </item>
    <item>
      <title>汎用カーブトレーサ（半導体アナライザ）の試作 [UDAS-01] その1</title>
      <description>&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0734.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463321425/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
USB 接続で動作する汎用のカーブトレーサを製作しています。&lt;br /&gt;
型番は UDAS-01 と名づけました。&lt;br /&gt;
これは USB Device Analyzer System の略称のつもりです。&lt;br /&gt;
未知のダイオードやトランジスタに対して、以下のようなグラフが取れます。&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/graph_1s2076a_01.png&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463321593/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
このデバイスは HID デバイスの USB キーボードとして動作します。&lt;br /&gt;
Excel を起動した状態でスイッチを押すと、&lt;br /&gt;
自動的に取得したデータが打ち込まれていきます。&lt;br /&gt;
&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0733.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463321423/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
（上面図）&lt;br /&gt;
写真に見るように、3ch の DAC と 16bit の ADC を搭載しています。&lt;br /&gt;
また、MCU には AVR の ATmega88V を使用しています。&lt;br /&gt;
上記写真右側のコネクタに V-I コンバータや V-F コンバータなどの&lt;br /&gt;
プラグインボードを接続して使用します。&lt;br /&gt;
汎用性を重視したつくりになっており、&lt;br /&gt;
半導体のみならずスイッチングレギュレータの特性など、&lt;br /&gt;
いろいろ計測することを想定しています。&lt;br /&gt;
スタンドアローンでも、15V 100mA 程度までグラフが引けます。&lt;br /&gt;
&lt;br /&gt;
ちなみに、秋月で扱いのある半導体アナライザ (DCA-75) も&lt;br /&gt;
カーブトレーサ機能がありますが、100mA も電流を流せません。&lt;br /&gt;
もっとも、手軽さの点では市販品の方が優れていることは&lt;br /&gt;
いうまでもありません。&lt;br /&gt;
&lt;br /&gt;
下記はいろいろな Tr の Ic-hFE 特性をグラフにしたものです。&lt;br /&gt;
(Vce = 3V (小信号) または 5V (中電力))&lt;br /&gt;
&lt;br /&gt;
(1) 2SC1815&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/graph_2sc1815_01.png&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463321429/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
2SC1815 は汎用の小信号 Tr です。&lt;br /&gt;
一般にバイポーラ Tr は定格付近で hFE が低下してしまいます。&lt;br /&gt;
今回使用した個体は GR ランクですが、hFE の落ち込みが顕著でした。&lt;br /&gt;
Ic&amp;lt;5mA で hFE がやや低いのは測定誤差によるもので、&lt;br /&gt;
基本的に Ic&amp;lt;50mA の領域で hFE はフラットです。&lt;br /&gt;
&lt;br /&gt;
(2) 2SC2021&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/graph_2sc2021_01.png&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463321433/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
2SC2021 は ROHM の定番汎用小信号 Tr です。&lt;br /&gt;
Ic 定格 100mA ですが、hFE の落ち込みは 2SC1815 ほど顕著ではありません。&lt;br /&gt;
一方、低 Ic の領域では、2SC1815 ほどフラットではないように見えます。&lt;br /&gt;
&lt;br /&gt;
(3) 2SD468&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/graph_2sd468_01.png&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463321431/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &amp;nbsp;&lt;br /&gt;
2SD468 は日立の中電力 Tr です。(Ic=1A)&lt;br /&gt;
電源容量の都合で 180mA まで引きましたが、hFE は落ちません。&lt;br /&gt;
&lt;br /&gt;
(4) 2SC827&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/graph_2sc827_01.png&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463321432/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &amp;nbsp;&lt;br /&gt;
2SC827 は富士通の SW 用 Tr です。 (Ic=0.5A)&lt;br /&gt;
&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/2SC827.jpg&quot; alt=&quot;&quot; height=&quot;125&quot; width=&quot;100&quot; /&gt;&lt;br /&gt;
TMe (三重拡散メサ型)ということで選んでみましたが、&lt;br /&gt;
hFE の電流依存性に関しては EP の電力用 Tr と同程度でしょうか。&lt;br /&gt;
(5) 2SD2171S&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/graph_2sd2171_01.png&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1463323704/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
2SD2171 は ROHM の中電力 SW 用 スーパー&amp;beta;トランジスタです。&lt;br /&gt;
スーパー&amp;beta;トランジスタとは文字通り hFE の非常に高い Tr のことで、&lt;br /&gt;
グラフを見ての通り hFE の桁が違います。&lt;br /&gt;
この Tr が役立つところはえてして MOSFET の方が適格となるので、&lt;br /&gt;
意外と使いどころが難しいういやつです。</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/57/</link> 
    </item>
    <item>
      <title>USB バージョンを取得する (VC++)</title>
      <description>PC に接続されている USB デバイスのバージョンがどう認識されているか&lt;br /&gt;
（ハイスピードの USB2.0 なのか、USB1.1 なのか&amp;hellip;等）&lt;br /&gt;
知りたいことがあります。&lt;br /&gt;
これを取得する直接的な API はないようですが、&lt;br /&gt;
Microsoft の WinDDK に含まれる usbview サンプルが参考になります。&lt;br /&gt;
&lt;br /&gt;
USB バージョンを調べるには、ルートハブからデバイスを走査していき、&lt;br /&gt;
DeviceIoControl 関数を使って USB_NODE_CONNECTION_INFORMATION_EX 構造体の情報を取得して、&lt;br /&gt;
デバイスディスクリプタの bcdUSB を見るというのが確実な方法だと思います。&lt;br /&gt;
bcdUSB には BCD で USB バージョンが入っています。&lt;br /&gt;
&lt;br /&gt;
USB デバイスの VID と PID から USB バージョンを返す C++ のクラスをつくりました。&lt;br /&gt;
-&amp;gt; &lt;a href=&quot;www.y-lab.org/programming/GetUSBVersion.zip&quot; title=&quot;&quot;&gt;ダウンロード&lt;/a&gt;&lt;br /&gt;
CGetUSBVersion::GetUSBVersion(pid, vid) を呼び出すことで、&lt;br /&gt;
USB バージョンが BCD で帰ります。&lt;br /&gt;
（たとえば 2.0 なら 0x200）&lt;br /&gt;
取得失敗で負の値が帰ります。&lt;br /&gt;
&lt;br /&gt;
なお GetRootHubName などの一部の関数は、WinDDK のサンプルから引用しています。</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/56/</link> 
    </item>
    <item>
      <title>(メモ)I2C 絶縁回路</title>
      <description>&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/i2c_isolation.png&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1462292084/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
ADC などの I2C デバイスを絶縁させて動作させたい場合があります。&lt;br /&gt;
I2C は双方向バスなので、インタフェースに少し工夫が必要です。&lt;br /&gt;
上記はフォトカプラを使用した簡易的な I2C 絶縁回路で、&lt;br /&gt;
クロック 1kHz 程度なら問題なく動作します。&lt;br /&gt;
（なおクロックストレッチは対応せず）&lt;br /&gt;
回路定数は重要であり、フォトカプラの CTR も 100% 以上必要でしょう。&lt;br /&gt;
東芝 TLP521-GR が適当です。</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/55/</link> 
    </item>
    <item>
      <title>TTL IC で自作する Atari Pong(5)</title>
      <description>&lt;p&gt;ひとまず完成ということで、Pong を動作している動画をアップロードしました。&lt;/p&gt;
&lt;p&gt;&lt;iframe width=&quot;417&quot; height=&quot;235&quot; src=&quot;https://www.youtube.com/embed/yXl7AZiADFg&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;実際は 2ヶ月前に回路は完成していたのですが、一度動いてしまうと満足してしまい、&lt;br /&gt;
しばらく放置してしまっていたのでした。&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://ydot.blog.shinobi.jp/Entry/54/&quot; target=&quot;_blank&quot;&gt;つづきはこちら&lt;/a&gt;</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/54/</link> 
    </item>
    <item>
      <title>TTL IC で自作する Atari Pong(4)</title>
      <description>&lt;p&gt;* ものは完成しているのですが、執筆が間に合っていません&amp;hellip;&lt;/p&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0688.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1453049989/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;4 枚目はゲームコントロール回路、サウンド出力回路です。参考にした回路図には少し誤りがあるので、原本を参照したほうがよいかもしれません。右下の SW はゲーム開始ボタンです。&lt;/p&gt;
&lt;p&gt;オリジナルの回路にはアンテナ入力があるのですが、役割がよくわかりません。この信号と /SRST 信号は Tr で組まれたラッチ回路の入力となっており、客が近づいたら ATTRACT モードになるという動作でいいのでしょうか？今回はこの部分も TTL IC に変更しています。また、オリジナルのオーディオ出力には DC 成分が残りますので、10uF でカップリングしています。&lt;/p&gt;
&lt;p&gt;IC のデカップリングキャパシタですが、IC 1 列ごとに 3.3uF のタンタル C、フリップフロップに別途 0.1 uF のセラミック C を乗せています。少し足りないかとも思いましたが、この程度で十分のようです。ただし、使用した IC は半分以上 74LS なので、スタンダード 74N を使用するなら、もう少し多く載せたほうが良いかもしれません。&lt;/p&gt;</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/53/</link> 
    </item>
    <item>
      <title>TTL IC で自作する Atari Pong(3)</title>
      <description>&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0689.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1452003961/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;3 枚目はボール位置のカウンタ、ボール速度の計算回路を載せています。&lt;br /&gt;
毎度美しくない配線ですが、このほうが後のデバッグに都合良いのです&amp;hellip;&lt;/p&gt;
&lt;p&gt;Pong の回路の面白いところは、上下左右に動くボールの「位置」を 74161 (同期式カウンタ&amp;hellip;オリジナルでは Fairchild 9316 ですが) によって演算させていることです。どういう仕組みなのかというと、例えば次のフレームでのボールの縦位置は現在位置の &amp;plusmn; N とするためには、ディスプレイの縦幅が 252 ラインなので、74161 のプリセットを 4+N (&amp;gt;0) とした modulo 256-(4+N) のカウンタ回路を構成します。このカウンタを水平同期信号でフリーランすると、カウンタがプリセットされるタイミングの V 位置 y(t) として y(t) = y(t-1)+N となるわけです。（説明を理解するより回路を見た方が早いでしょう）&lt;/p&gt;
&lt;p&gt;ボールの垂直速度、水平速度は動的に変わってゆきます。垂直速度はボールがパドルに当たった位置によって変化するので、ボールの移動角 度が変わることになります。水平速度もゲームが進むにつれて高速になります。これらの工夫により、Pong というゲームは素朴ながらゲーム性が高くなっているわけです。&lt;/p&gt;</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/52/</link> 
    </item>
    <item>
      <title>TTL IC で自作する Atari Pong(2)</title>
      <description>&lt;h3&gt;基板 1 枚目&lt;/h3&gt;
&lt;p&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0691.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1451547457/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;やはり 1 日がかりの作業となってしまいました。1 枚目の基板にはクロック（14.31818 MHz の 2 分周）を含む、映像タイミング生成回路を中心に乗せています。&lt;/p&gt;
&lt;p&gt;ケーブルによる配線は基板の表面を這わせています。裏面を Point-Point で配線した方が表面からの見栄えが良く、配線スピードも速くなるのですが、配線ミスが見つけにくくなります。難しいところです。今回は表面での配線で統一しようと思います。&lt;/p&gt;
&lt;p&gt;基板間の配線は L 型ピンヘッダを使用して、マザーボード経由の配線もしくはフラットケーブルによる配線を考えています。一昔前ならカードエッジコネクタでしょうが、今はそのほうがコスト大です。&lt;/p&gt;
&lt;p&gt;このユニバーサル基板では、パターンの制約から、DIP IC を乗せて使うとあまりスペース効率が良くなりません。パターンカットすればこの 2-3 倍の IC を乗せることができるのですが、配線が窮屈になりすぎて不都合です。この点、サンハヤトの IC ユニバーサル基板は良くできているのですが、少し高価です&amp;hellip;&lt;/p&gt;</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/50/</link> 
    </item>
    <item>
      <title>TTL IC で自作する Atari Pong (1)</title>
      <description>&lt;p&gt;去年から ロジック IC をたくさん収集していましたが、そろそろ消費するフェーズかなと思います。冬休みということもあり、Atari のアーケードゲーム &lt;a href=&quot;https://en.wikipedia.org/wiki/Pong&quot;&gt;Pong&lt;/a&gt; を作ろうと考えました。&lt;/p&gt;
&lt;p&gt;本稿の題名は「TTL IC で自作する Atari Pong」としましたが、オリジナルの Pong は 74 シリーズの汎用ロジックで組まれているので、サービスマニュアルの回路図を元に製作することにします。サービスマニュアルや回路図は archive.org 等で手に入りますが、&lt;a href=&quot;http://atarihq.com/danb/Pong.shtml&quot;&gt;このページ&lt;/a&gt;（Dan B's Video Game Tech Page）に清書済みの PDF があるので、参考にさせてもらいます。&lt;/p&gt;
&lt;p&gt;製作にあたって設けたルールは以下の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;使用する IC は 74N、74LS (+555) に限る&lt;/li&gt;
&lt;li&gt;配線には UEW を使わない&lt;/li&gt;
&lt;li&gt;チップ部品を使わない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;製作にはおおむね 60 個程度の TTL IC を使用しますが、ほとんど手持ちストックの中から揃えることができました。ただし、ストックの都合で、以下の IC は別の IC で代用することにします。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;7425 -&amp;gt; 7432 (+7404)&lt;/li&gt;
&lt;li&gt;7450 -&amp;gt; 74LS51&lt;/li&gt;
&lt;li&gt;74107 -&amp;gt; 7473, 74LS113&lt;/li&gt;
&lt;li&gt;9316 -&amp;gt; 74LS161&lt;/li&gt;
&lt;li&gt;7483 -&amp;gt; 74LS283&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;color: #009900;&quot;&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0685.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1451319744/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &amp;nbsp;&lt;br /&gt;
ストックから集めた IC&lt;/p&gt;
&lt;p&gt;今回は以下のようなユニバーサル基板を調達しました。「新印 8.5CM*20CM」と書かれており、ロジック IC の実装に便利そうです。これ 1枚に 16 個程度の IC が楽に乗せられるので、複数枚を用いてモジュール構成とします。&lt;/p&gt;
&lt;p style=&quot;color: #009900;&quot;&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0686.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1451319755/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
IC 向けユニバーサル基板&lt;/p&gt;
&lt;p style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;以下次回。&lt;/span&gt;&lt;/p&gt;</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/49/</link> 
    </item>
    <item>
      <title>ニキシー管テスタのその後</title>
      <description>&lt;p&gt;以前紹介していた TR-6364 マルチメータですが、&lt;br /&gt;
電源ケーブル欠品という問題がありました。&lt;br /&gt;
&lt;br /&gt;
特殊な規格のコネクタのようで、どうしてもケーブルが手に入らなかったので、&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0668.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1437399711/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
写真のように、普通のメガネコネクタに付け替えてしまいました。&lt;br /&gt;
（ちなみにこれはマルツで購入したもの）&lt;br /&gt;
&lt;br /&gt;
これで、電池動作に加えて、内蔵トランスからの動作ができるようになりました。&lt;br /&gt;
電池動作との動作の違いは、内部動作が電池電圧直結から安定化 +15V になることで、&lt;br /&gt;
これにより&lt;br /&gt;
・AC-DC 変換部分オフセットの安定化&lt;br /&gt;
・内部 DC コンバータのピー音の解消&lt;br /&gt;
などのメリットがありました。&lt;br /&gt;
&lt;br /&gt;
&lt;a target=&quot;_blank&quot; href=&quot;http://file.ydot.blog.shinobi.jp/Dscf0670.jpg&quot; title=&quot;&quot;&gt;&lt;img src=&quot;http://file.ydot.blog.shinobi.jp/Img/1437399716/&quot; alt=&quot;&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
実は半年前に改造・調整していたのですが、&lt;br /&gt;
今動かしても ACV レンジでちゃんと 0 が出ます。&lt;br /&gt;
よかった。&lt;/p&gt;</description> 
      <link>http://ydot.blog.shinobi.jp/Entry/48/</link> 
    </item>

  </channel>
</rss>