秋月ファンクラブ掲示板

  1. [2952] 信号の切替えにリレーを使った8チェンネルのオーディオセレクタを以前紹介しました。
    http://bbs3.fc2.com//bbs/img/_454800/454703/full/454703_1357104076.jpg
    本文はjunk boxに入っています。
    http://junkbox.info/akizuki-fan/bbsold/179.html

    リレーの代わりにフォトMOSリレー(TLP222A-2)を使ったバージョンを紹介します(添付図)。信号選択と状態保持の部分は以前と同じですが、フォトMOSリレーの駆動電流は小さいので、Dフリップフロップ(74HC175)の出力(Q)で直接駆動しています。リレーを使っていないので信号切替え時に音は発生しません。

    8個のプッシュスイッチのどれかをチョイ押しすると、それに対応したラインの入力(IN)と出力(OUT)間だけが導通します。スイッチを離してもその状態は保持されます。他のスイッチを押すとそれに対応したラインのIN-GND間がONになります。電源投入直後は全てラインがOFFの状態になります。

    このフォトMOSリレーの信号切替え部分はスイッチ回路と完全に絶縁されています。また、切替える信号は直流でも交流でも大丈夫ですが、最大電圧は48Vに制限されます(AC100Vの切替えはできない)。ON抵抗が2Ωくらいあるので信号電流は最大500mA程度になります。

    TLP222A-2の-2というのはフォトMOSリレーが2組入ったものです。一方はIN-OUT間のスイッチとして使っていますが、もう一方はON/OFF比の改善のために、IN-OUT間がOFFのときにOUT-GND間をONにするようにしてあります。切り替える信号が直流や低周波(<100Hz)のときはIN-OUT間だけをON/OFFにしても問題ありませんが、信号周波数が1kHz以上ではの場合、IN-OUT間をOFFにしても信号が少しOUT側に漏れてしまうので、IN-OUT間がOFFのときは、もう一方のフォトMOSリレーを使ってOUT-GND間をONにすることで信号の漏洩を小さくしました。もう一方のフォトMOSリレーを駆動するために、Dフリップフロップの反転出力(Q_)を使っています。このように、この回路ではIN-OUT間がOFFのときはOUT-GND間がONになるので、信号入力は必ずIN側としてください(逆にすると信号源の出力が短絡されてしまう)。

    TLP222にはTLP222AとTLP222Gがありますが、AのほうはON抵抗が2Ω、Gは35Ωという違いがあります。今回はAのほうを使っていますが、OUT側につなぐ機器の入力インピーダンスが大きければ、どちらを使ってもいいと思います。Gのほうが信号の漏洩は少ないかもしれませんが、手元にないので実験していません。

    この回路の上半分の回路(SW1からSW4まで)をブレッドボードに組んで動作確認しました。半分だけの動作確認でも、74HC175の9pin(クロック入力)とGND間の100kΩの抵抗は必要です(これがないと動作しない)。添付図の回路では各チャンネル(ライン)で切替えられる信号は1系統だけなので、オーディオ信号等で2系統必要なときはTLP222A-2を2組使う必要があります。

    TC74HC175AP http://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=4Z27-2SGV
    TLP222A-2 http://akizukidenshi.com/catalog/g/gI-07672/
    1N4148 http://akizukidenshi.com/catalog/g/gI-00941/
    フォトMOSリレーを使った8チャンネルセレクタ
    inara1 2017/03/18 09:23 *
    1. [2955] オーディオ信号等で2系統必要なときは、TLP222A-2を2組使って添付図のように配線すればいいです。Re: フォトMOSリレーを使った8チャンネルセレクタ inara1 2017/03/18 12:56 *
      1. [2956] SW1〜SW4の部分をブレッドボードに組んだときの写真です。LEDはON動作の確認用です。SW4の回路にだけフォトMOSリレーを2組つないで2系統の切替えができるようにしています。

        その下の写真は、フォトMOSリレーがONのときとOFFのときの入出力波形です。OFFの写真はブレてしまってますが、100kHz・10Vppの矩形波入力に対して、OFF時の出力リークは5mVpp(-66dB)くらいになっています。
        Re^2: フォトMOSリレーを使った8チャンネルセレクタ
        inara1 2017/03/18 13:03 *
        1. [3586] 次のネタをどうしようかと考えていたのですが、原点回帰でこれに取り組みたいと思います。

          2012/10/24 (Wed) 16:53、旧秋月ファンクラブ掲示板で初めてinara1さんに質問したのが「4chオーディオセレクタ 」でした。
          「どのマイクを(入力選択)どの無線機に(出力選択)」にPTT(PushToTalk)スイッチとスピーカーも絡めたセレクタをというネタでした。おまけにLEDサウンドメーターまで詰め込んだぎゅう詰めで、お蔭様で完成にこぎつけました。お世話になりました。

          で、今になってみるとハンダ付けも怪しく死んでいるCh等の不具合も出て、マイクやリグ(無線機)のコレクションも増えたことだし心機一転新しい回路であらためて作ろうと思います。

          全体像は図のとおり前作と変わりません。
          入力セレクタ部は、マイクを平衡で使いたいので(キャノンコネクタを使いたいというこだわりで)、マイクのH/C2芯を切り替えるのがよいかと思います。GNDは共通でよいのかもしれませんが、後段の無線機も含めそれぞれのシャーシGNDが結ばれていないしPTTスイッチもあるので、GNDも含め4ラインを切り替えることを考えています。
          出力セレクタ部は、マイクH/CとPTTが「8Chのどれへ」なのですが、以前の回路が双方向可だったのとは違い今回の回路には、
          > 信号入力は必ずIN側としてください(逆にすると信号源の出力が短絡されてしまう)。
          と但し書きがありますね。この点は回避できるでしょうか。また、スピーカー切替(どの無線機出力をSPに繋ぐか)は「8Chから一択」なのですが同一セレクタでいっしょに切替できるのではと思います。
          普通のリレーを使った回路のほうがシンプルに双方向にできるでしょうか。

          マイクはインピーダンス600Ω、PTTスイッチはDC5〜12V(機種により異なる)のON/OFF、スピーカーはインピーダンス8Ωと想定しています。

          フォトMOSリレーを複数パラにして扱える信号ラインを増やす作戦で行けますよね。
          Re^3: フォトMOSリレーを使った8チャンネルセレクタ
          daruma 2017/12/25 23:24 *
          1. [3587] >> 出力セレクタ部は、マイクH/CとPTTが「8Chのどれへ」なのですが、

            この件はなんでもないことだと、布団の中で気がつきました。
            入力セレクタは、8本のOUTをひとつにまとめて出力、出力セレクタは8本のINをひとつにまとめておいて各OUTを取り出すと、それでいいことですね。

            各チャンネルにTLP-222G-2を豪華装備で5個ずつ付けておこうかと思いますが、74HC175直接でまかないきれるでしょうか。

            入出力コネクタを並べるだけで結構なスペースがいるので、大きなケースにゆったり配置ということになりそうです。回路基板が電源込みで大きいほうの基板1枚に、これが入力セレクタと出力セレクタで2枚、フォトMOSリレーは別基板にズラリ並べて小さい基板1枚あたり1Chぶん5個搭載の8Chぶん8枚と、そんな感じでしょうか。5個を駆動するのにトランジスタを入れるとしても、各リレー基板に配置できますね。
            Re^4: フォトMOSリレーを使った8チャンネルセレクタ
            daruma 2017/12/26 11:14
            1. [3588] 今日は午前中で仕事納めです。新年は1/9からです。

              無線機が8台もあるのに同時には1台しか送信できないというのはどういう使い方なのでしょうか。送信中はスピーカから自分の声がモニタできる構造になっているのでしょうか。

              スピーカの切替えはフォトMOSリレー1個でいいです。スピーカはインピーダンスが低いので信号リークは無視できると思います。TLP222AのほうはON抵抗が2Ωなので、8Ωのスピーカをつなぐと、直結の場合より音量が少し下がるかもしれません。TLP222GはON抵抗が35Ωと大きいのでスピーカの切替えには使えません。

              無線機のスピーカ端子の一方が無線機の信号GNDにつながっているかどうかでフォトMOSリレーの入れ方が変わります。以下のどちらか調べられますか(たぶん(2)のほうだと思いますが)。

              (1) スピーカの2つの端子の両方ともGNDから浮いているのなら、スピーカ端子に出力コンデンサが入っていないので、スピーカの2つの端子の両方をフォトMOSリレーで切り替える必要があります(複数の無線機のスピーカ端子同士を直流的に接続するとアンプが壊れる可能性があるため)

              (2) 無線機のスピーカ端子の一方が無線機の信号GNDにつながっているのなら、GNDにつながっていないほうのスピーカ端子にだけフォトMOSリレーで切り替えればいいです(スピーカのGND側は共通とすればいい)

              (1)か(2)の判断はポケットテスターの抵抗測定で分かります(10Ω以下なら電気的につながっている)。

              マイク側は信号が非常に小さいのですね。マイクアンプの入力インピーダンスも小さくはないと思うので、信号リーク抑制が必要かどうかはちょっと分かりません。2チャンネルだけを切替える回路を作ってみて判断したほうがいいですね。2チャンネル分の回路は後で書きます。
              Re^5: フォトMOSリレーを使った8チャンネルセレクタ
              inara1 2017/12/26 14:27 *
              1. [3589] 今日が仕事納めでしたか。お疲れ様でした。

                > 無線機が8台もあるのに同時には1台しか送信できないというのは

                HF機、VHF機、などなど入りまじり現在のところ4台積み上がってます。アンテナは1基のタワーにHF用のダイポールと八木(21)、50の八木、133/430兼用のグランドプレンが上がっています。HFとVHSなどなら同時運用も可で実際そうやっている人もいるようですが、7/14/21/28など逓倍バンドは自分の出した電波の逓倍波が入ってきたりで使い物になりません(と私は思っています。)ですから、複数の無線機のうち1台を使っての運用が普通です。バンドによってこれを使うと決めていたり、とっかえひっかえ使ってみたりです。
                送信はともあれ受信は複数バンドを同時に聞いていたりする人もいますが、私はそれもやりませんし、受信機個々にスピーカーがあるより単一のスピーカーから出せるほうがスマートだと私は思っています。あっちを切り換えこっちを切り換えだとスマートじゃないので、ボタン一つで選択できるのがいいなというのがこの手のセレクタを使いたい動機です。

                > スピーカの2つの端子の一方が無線機の信号GNDにつながっているかどうか

                はい、(2)です。片方はGNDです。

                > マイク側は信号が非常に小さいのですね。

                機種によってインピーダンス600Ωのマイクをと指定しているものや10kΩのマイクをというもの、600〜10kΩとしているものなどいろいろです。マイク自体も、ダイナミックマイクやコンデンサマイク、それぞれ出力レベルの比較的大きなもの小さなものといろいろです。マイク入力にはマイクを直接入れれば足りるようになっているのが普通です。
                マイクによる差を埋めるためにマイクごとにマイクアンプを入れ、それを通って送信機のマイク端子(内蔵マイクアンプ経由)に入れたり内蔵アンプを通らない変調入力部に入れたりと、手を変え品を変えです。以前作ったマイクアンプは、ハム界で評判の方々設計のオペアンプを使った回路を4枚作って、マイク4本それぞれを繋いでいました。
                その後真空管のものなどいくつか作って、マイクアンプはとっかえひっかえできたほうがいいと思うに至ったので、マイクからセレクタ入力までの間に何を繋ぐかあるいは直結するのかは別に考えることにします。コンデンサマイクだと電源も送らなきゃなりませんし。

                無線機自体はマイクを不平衡で入れるようになっているのが一般的ですが、XLRコネクタで引いてきてどの段階で不平衡にするのが良いのかはよくわかりません。マイクの根元はXLRでもケーブルの先は標準単頭プラグ、マイクアンプ出力はRCAなんてスタイルも見かけますが。
                Re^6: フォトMOSリレーを使った8チャンネルセレクタ
                daruma 2017/12/26 15:43
                1. [3590] 添付図をありがとうございます。

                  スピーカー切替の部分は、冒頭回路図のようにTLP222G-2内の2回路を使わなくても半分使えばいいということですか。

                  冗長でも他と同じ回路にしておくというのではいけませんか。
                  Re^7: フォトMOSリレーを使った8チャンネルセレクタ
                  daruma 2017/12/26 15:49
                  1. [3591] <冗長でも他と同じ回路にしておく
                    汎用性を持たせるために(1)のような配線にするということですか。それでも構いません。

                    数時間前、TLP222A-2を使ってスピーカを切替える実験をしていたら、Yahoo知恵袋で、アンプにつなぐ2つスピーカを切り替える方法の質問がありました。
                    https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11183850641
                    こういう偶然はよくあります。

                    daramaさんのは複数の無線機を1つのスピーカにつなぐので、無線機とスピーカを逆にすればいいだけです。実験してみると、スピーカの切替えにはプチ音対策が必要なことが分かりました。無音状態で切り替えればプチ音はしませんが、そういう場合ばかりでもないでしょう。マイクの切替えにも必要か実験してみます。手元にエレクとレットコンデンサマイクがあるので、それで屋外の音を拾って切替えてみます。
                    Re^8: フォトMOSリレーを使った8チャンネルセレクタ
                    inara1 2017/12/27 10:07
                    1. [3592] > 汎用性を持たせるために(1)のような配線に

                      そうです。そのほうが頭が混乱しないかなと思って。

                      リレー基板をこのようにと考えました。40×55穴の基板です。配線が整然とできるかと思います。

                      ところで、TLP222A-2の数が数だけに部品代がけっこうかさみますね。

                      あれ、上で「TLP222G-2」と書いてしまってました。「TLP222A-2」ですよね。

                      @180×40×2=14,400円。う〜ん、4Chにしようかな。ソケットだけズラリ並べておいて必要分だけTLP222A-2を取り付けるのがいいかな。

                      ※※ コネクタもスイッチもですからばかになりませんね。
                         すみません。今回は規模縮小で4Ch版にしたいと思います。
                         もう半分はあとから拡張も可能ですよね。
                      Re^9: フォトMOSリレーを使った8チャンネルセレクタ
                      daruma 2017/12/27 17:13 *
                      1. [3594] 4Ch版でリレー基板を描いてみました。こういうことですよね。

                        入力セレクタで使うか出力セレクタで使うかは、フォトMOSリレー出力のピンに4チャンネルにまたがる長いジャンパピンを挿して、INどうしをショートするかOUTどうしをショートするかで切り替えます。

                        ところで、回路図ではTLP222G-2になっていますが、TLP222A-2に読み替えていいんですよね。
                        Re^10: フォトMOSリレーを使った8チャンネルセレクタ
                        daruma 2017/12/27 23:29 *
                        1. [3595] >> INどうしをショートするかOUTどうしをショートするかで切り替え

                          右端に置いたような2列ソケットを作って、1段ずらして取り付けることで入力選択か出力選択かを使い分けます。2列にしたのは、空中配線をせずすっきりさせるためと取り付け強度のためです。
                          あれ用これ用と区別なく同じものを作っておけばいいというのがわかりいいかと思って。
                          Re^11: フォトMOSリレーを使った8チャンネルセレクタ
                          daruma 2017/12/28 09:37 *
                          1. [3596] 上の回路図のTLP222Gは間違いですね。TLP222Aが正解です。

                            TLP222Aが4個直列になっているのは、マイクとスピーカを同時に切り替えるためでしょうか。5Vで確実にONになりますか。100Ωの抵抗は実験して決めたのなら大丈夫だと思いますが。
                            Re^12: フォトMOSリレーを使った8チャンネルセレクタ
                            inara1 2017/12/29 03:33
                            1. [3597] > TLP222Aが4個直列になっているのは、

                              5個直列です。マイクの2芯、スピーカー、PTTスイッチで4系統、それに予備ひとつです。
                              抵抗は1つなら470Ω2つなら330Ωなら、5個では100Ωくらいとあたりを付けたのですが、ちゃんと計算しようとデータシートを見たら、
                              http://akizukidenshi.com/download/ds/toshiba/TLP222Aj.pdf
                              トリガLED電流:標準1.6mA最大3mA
                              順電圧:最小1.0V標準1.15V最大3V
                              とありました。これでは5個直列にはできませんね。
                              2個直列と3個直列を並列にすればいいですか。
                              電源電圧を9Vくらいにすればいいかなと思って、74HC175のデータシートを見ると、
                              http://www.datasheet.jp/pdf/541378/74HC175AP.html
                              電源は2〜6Vですか。じゃあ、だめですね。
                              TLP222AのLEDにかかる電圧を昇圧するとすると、それは4チャンネルの1-2pinLEDと3-4pinLEDそれぞれにいれなければなりませんか。それは現実的ではありませんね。

                              う〜ん、やっぱり5個直列をせず並列にですか・・・。

                              予備1系統をやめて4個直列にとどめれば、ぎりぎりおさまりますか。
                              Re^13: フォトMOSリレーを使った8チャンネルセレクタ
                              daruma 2017/12/29 17:12
                              1. [3598] 100Ω+4個直列で動いたとしても2号機では動かないかもしれません。確実に動くように設計するには、TLP222のLEDのVf(順方向電圧)が最大値(1.3V@10mA)でもLEDに10mA流れるような抵抗にします。

                                2個直列なら
                                R[Ω] < ( 電源電圧[V]−2*VF[V] )/0.01A = ( 5 - 2.6 )/0.01 = 240Ω→ 220Ω

                                3個直列なら
                                R[Ω] < ( 電源電圧[V]−3*VF[V] )/0.01A = ( 5 - 3.9 )/0.01 = 110Ω→ 100Ω
                                になります。トリガ電流(スイッチがONになるLED電流)の最大値は3mAですが、3mAでのVfはデータシートからは分からないのですが、10mAでのVfのほうが大きいので、LEDに10mA流すように設計すれば確実にONになります。

                                4個直列だと R < 0 となるのでダメです。Vfは個体バラツキがあるので、Vfが1.2Vより低いTLP222を使えば、4個直列でも動作します(そのときのR<20Ω)が、Vfを選別する必要があります。確実に動作させるには2個直列と3個直列を並列ですね。

                                74HCシリーズのロジックICの電源電圧範囲は2V〜6Vです。TC4538などの4000シリーズのロジックICの電源電圧範囲は3V〜16Vですが、4000シリーズの中で74HC175と同じ機能のものは簡単には入手できないです。
                                Re^14: フォトMOSリレーを使った8チャンネルセレクタ
                                inara1 2017/12/29 18:05
                                1. [3599] 3個直列と2個直列の並列組み合わせで描けました。
                                  LED Cubeで使ってみた両面ノンスルーホール基板がサンハヤトの基板よりデッドスペース少なくて収まりました。両面で配線できるのも便利です。ジャンパだと裏から表に抜ける穴が必要なところを回避できます。(この図はジャンパでもいけますが)
                                  LED Cubeでこの基板を使う以前は、ジャンパは裏の配線と交差するだけにしてきたのですが、こんなふうに表と裏で並走するのは邪道ですか?
                                  Re^15: フォトMOSリレーを使った8チャンネルセレクタ
                                  daruma 2017/12/29 22:56 *
                                  1. [3600] >表と裏で並走するのは邪道ですか?
                                    片面基板
                                    http://akizukidenshi.com/catalog/g/gP-00518/
                                    なら大丈夫ですが、あまり長く並走させるのは避けたいです。高電圧の配線では1点交差もやらないほうがいいです。

                                    両面スルーホール型
                                    http://akizukidenshi.com/catalog/g/gP-00185/
                                    はダメです。両面基板はピンヘッダを裏面に付けることができて便利ですが、表と裏のランドがつながっているのでジャンパー線が使えなくなります。

                                    マイク部分がその方式で大丈夫か実験してみます。これはハム倶楽部で要望があったものなのですか。
                                    Re^16: フォトMOSリレーを使った8チャンネルセレクタ
                                    inara1 2017/12/30 08:23
                                    1. [3601] ノンスルーホール両面だと片面と同じように配線することはできるんですが、「繋がっているかいないか」で配線を考えるまでで、「しないほうがいい」あたりのことはどうもよくわかりません。

                                      このサイズ片面のはサンハヤトのしか手元になく、四隅のデッドスペースがひとつ多すぎて縦方向が詰められません。秋月のを買おうかな。
                                      ショップは年末休みで、部品調達は正月明けまでお預けです。それまでせっせと図面描きです。
                                      Re^17: フォトMOSリレーを使った8チャンネルセレクタ
                                      daruma 2017/12/30 09:15
                                      1. [3603] 念のために確認しますが、フォトCMOSリレーでセレクターを作りたいんですよね?

                                        もし、8CHセレクターが欲しいだけなら、上記の仕様(3系統8入力→3系統1出力+3系統1入力→3系統8出力+1系統8入力→1系統1出力)なら、

                                        このようなアナログ信号用のセレクタICがありますので
                                        http://www.chip1stop.com/pdf/product/TOSH/TC74HC4051AF_TC74HC4053AP_JA_DATASHEET_071001.PDF

                                        スピーカー信号は直接切り替えられないので、リレーで切り替えるとして、リレー駆動用トランジスタのベース電流を4051で切り替えれば、制御はBCD制御のみで連動切り換えが出来そうです。

                                        TC74HC4051が7個+8 TO BCDデコーダもしくはマイコン(14〜18ピン)+トランジスタ8本、リレー8個



                                        もっと多ピンのマイコンでリレードライブ用のトランジスタはマイコンで直接制御するなら4051は1個減って

                                        TC74HC4051が6個+16F883I/P 1個 +トランジスタ8本、リレー8個

                                        で実現できそうです。



                                        TC4051BP ¥40
                                        http://akizukidenshi.com/catalog/g/gI-10914/

                                        とか
                                        5V小型リレー 接点容量:2A 946H−1C−5D ¥60
                                        http://akizukidenshi.com/catalog/g/gP-07342/

                                        で問題がなくて、制御にマイコンを使うなら基板上の部品は1000円台前半に収まると思います。

                                        ざっと見ただけなので実現可能かは未確定ですが、出来そうな気がします。

                                        但し他の機器とグランド(電源)を共有しないで、専用のグランドアイソレートされたACアダプタ(トランス式が良いですが)を使用する必要があると思われます。
                                        Re^18: フォトMOSリレーを使った8チャンネルセレクタ
                                        なんじゃらほい 2017/12/30 19:53
                                        1. [3604] 8Chセレクタの配線図が描けました。リレー基板は4Chで1枚ですが、本体回路は8Chぶんを1枚に収めました。リレー基板の短辺と向き合うように小さいサイズの基板です。
                                          >> 大きなケースにゆったり配置
                                          と言いながら、結局daruma流ぎゅうぎゅう詰めです。
                                          これを入力セレクタと出力セレクタの2枚作ります。せっかく8Chあるんだからリレー基板も2枚ずつ作ろうかという気もしてきています。

                                          考えたのですが、入出力はあれ用これ用と区別せず、全てRCAジャックにしようと思います。マイクも、ケーブルの先は不平衡で2ピンにします。ジャック基板間はどれもシールドにしておきます。編線側は直結にして切り替えるのは芯線側だけにします。スピーカーもPTTスイッチのDCもです。
                                          ということで問題ないですよね。

                                          なんじゃらほいさん、ご提案ありがとうございます。
                                          inara1さんは完成形の回路図を示してくださっていて、ハードル(工数・コスト)は高くてもゴールが見えるのが何よりなので、その路線で行かせてください。

                                          とうとう大晦日ですね。inara1さん、なんじゃらほいさん、今年中はお世話になりました。sealockman、lactamanさん、お声かけありがとうございました。
                                          みなさん、どうぞよいお年をお迎えください。新年もよろしくお願いいたします。

                                          ※ ジャンパ線の不都合と2本の足が同じ穴に刺さってる(!)があったので、図を修正し差し替えました。
                                          Re^19: フォトMOSリレーを使った8チャンネルセレクタ
                                          daruma 2017/12/31 11:36 *
                                          1. [3606] 配線図の左下のDC入力のコネクタが基板固定ネジとぶつかりませんか。

                                            >みなさん、どうぞよいお年をお迎えください。新年もよろしくお願いいたします。
                                            あっという間に正月休みが終わってしまいました。明日から仕事です。

                                            この掲示板でのdarumaさんとの交流はいつから始まったのでしょうか。過去ログが2014年までなのでそれ以前が分かりません。5年は続いていると思いますが、オーディオセレクタが最初ですか。登場人物は変わり映えしないですね。知恵袋でこの掲示板を紹介しているのですが、なかなか新しい人は参加してもらえません。安全な掲示板なのですがなぜでしょうか。
                                            Re^20: フォトMOSリレーを使った8チャンネルセレクタ
                                            inara1 2018/01/08 18:02
                                            1. [3607] > 配線図の左下のDC入力のコネクタが基板固定ネジとぶつかりませんか。

                                              ビス穴はかわしてあるのですが、ぎりぎりですね。このあたりはゆとりあるので、描き変えてみます。
                                              正月過ぎてから発注したのですが、出荷がたまっていたのでしょうか、本日発送になりました。基板もなので手をつけられずにいます。

                                              74HC175は秋月にないので、地元ショップに行きました。福袋がわりにLEDやタクトスイッチがB5サイズ近いジップ袋に詰め放題で、あまりぎゅう詰めせずに買ってきて数えたらLEDもタクトスイッチも1,000個以上ありました。これで300円。タクトスイッチは一生使いきれないでしょう。

                                              > この掲示板でのdarumaさんとの交流はいつから始まったのでしょうか。

                                              ↓これが最初です。
                                              http://junkbox.info/akizuki-fan/bbsold/73.html
                                              以来長きにわたってお付き合いいただきありがとうございます。この時点でinara1さんに出会わなければ、今日のdarumaはなかったことでしょう。

                                              実作着手は水曜ころになる見込みです。
                                              Re^21: フォトMOSリレーを使った8チャンネルセレクタ
                                              daruma 2018/01/08 18:26
                                              1. [3608] DC入力の配置を変え、ついでに5V出力のピンを設けました。同じボードを2枚作るので2枚目には直接5Vを持っていけばと思ってですが、わずかな削減より2枚目も同じに作っておこうかとちょっと迷っています。電流に余裕をもたせるほうがいいですか?

                                                > 知恵袋でこの掲示板を紹介しているのですが、なかなか新しい人は参加してもらえません。

                                                そうですね。せっかくinara1さんがていねいに回答し精細な回路図や追加資料なども置いているのに、それを見に来ているのかどうかそれっきりの質問者もいますよね。
                                                もちろん、こちらを訪問して投稿を残す方もいますが。淡白な方が多いのかなあ。私が厚かましくしつこいのかな。
                                                牢名主みたいなdarumaが居座っているからでしょうか。
                                                Re^22: フォトMOSリレーを使った8チャンネルセレクタ
                                                daruma 2018/01/09 11:50 *
                                                1. [3609] >これが最初です
                                                  2012年4月ですか。東日本大震災の1年後ですね。あの地震で勤務先(神奈川県)のクリーンルームが1か月くらい使用不能になってしまいました。地震当日はたまたまお休みで自宅にいましたが、あまりの揺れに、本棚が倒れないように1分くらい押さえていました。その後、NHKテレビで津波の映像を生中継で見ていました。

                                                  darumaさんとの最初のURL
                                                  http://junkbox.info/akizuki-fan/bbsold/73.html
                                                  の73の番号を小さくしていくと、さらに過去の投稿が見れますね(添付画像はありませんが)。

                                                  darumaさんが校長先生だったこととか、神奈川で大雪が降っときの写真とか、daruma家の前の除雪風景とかなつかしいですね。

                                                  私は定年退職まであと3年となりましたが、今年の中頃(夏のボーナスをもらってから)に卒業することにしました。darumaさんの仲間入りになりますがよろしくお願いします。
                                                  Re^23: フォトMOSリレーを使った8チャンネルセレクタ
                                                  inara1 2018/01/09 18:20
                                                  1. [3610] え、夏と言えばあと半年じゃありませんか。その後は悠々自適ですか?それとも新しいステージが?大学の先生とかなにかの研究者とか。inara1Labとか、あ、inara1工房てのはどうですか。

                                                    いずれにしても、一大転機ですね。
                                                    Re^24: フォトMOSリレーを使った8チャンネルセレクタ
                                                    daruma 2018/01/09 23:26
                                                    1. [3611] 秋月からの荷物が届いたら、お歳暮の鮭でも入っていそうな長い箱でした。なにかの間違いかと思いながら開けてみると、8ピンICソケット40個がレールに入ってました。「小さな梱包に」とは考えないんですねえ。毎日大量の発送をしているんですものね。Re^25: フォトMOSリレーを使った8チャンネルセレクタ daruma 2018/01/10 12:26 *
                                                      1. [3612] >鮭でも入っていそうな長い箱でした
                                                        レールを切ると端面処理が面倒なのでそのまま入る箱にしたのでしょう。鮭だったら60食分くらいあるのでしょうか。毎日鮭だと飽きますが、保存が効くので3か月くらいかければ消費できますね。
                                                        Re^26: フォトMOSリレーを使った8チャンネルセレクタ
                                                        inara1 2018/01/10 18:43
                                                        1. [3614] 進捗報告で投稿をと作業に励みましたが、例によってのdaruma展開報告です。

                                                          リレーへ行く出力がうまく出てきません。

                                                          各Ch同じ状況ですが、以下は1Q-1q(バーが書けないので小文字のqとします)について書きます。
                                                          あるべき姿は、ボタンを押さないとき1Qは0Vで1qは5V、ボタンを一度押すと1Qは5Vで1qは0Vになると、そういう理解でよろしいですか。
                                                          これはGNDに対する電圧だと思いますが、1Q-1q間にテスターをあてて、5Vの正負が反転すると考えても同じことかなと思いますが、違いますか。

                                                          いずれにしても、そうならないのです。

                                                          ボタンを押さないとき(電源投入時)、1Qは0V、1qは5Vです。ボタンを押すと、1Qは0.3mVに変化し離すと0Vに戻ります。1qは5Vのままで変化しません。

                                                          押しボタンから追ってみると、押すと5Vが出て、10kΩを通って3pinに2.4Vがかかります。

                                                          LEDは光りません。

                                                          実は、9pinどうしを結んでGNDに落とす100kΩを間違えて10kΩにしていました。点検でそれに気づいて100kΩに直しましたが、この段階で74HC175が壊れてしまったなんてことはないですよね。

                                                          写真のように、スイッチとLEDは一個だけ付けて実験しています。

                                                          > >鮭だったら60食分くらいあるのでしょうか。
                                                          お歳暮の鮭ですから、尾頭付きの一匹です。

                                                          > レールを切ると端面処理が面倒なのでそのまま入る箱にしたのでしょう。
                                                          ICソケットなんだからレールから出して袋にザアーッと入れればいいのに。

                                                          夏までの日程見込み、読ませていただきましたが削除したんですね。私の記憶もDeleteしました。

                                                          へんだなあ。どこがおかしいんでしょうね。回路図配線図基板を眺めまわしているんですが発見できません。daruma展開は我ながら情けないです。
                                                          Re^27: フォトMOSリレーを使った8チャンネルセレクタ
                                                          daruma 2018/01/12 14:59 *
                                                          1. [3615] 配線図はこれ
                                                            http://mpga.jp/akizuki-fan/index.php?mode=image&file=3608.jpg
                                                            ですか。ブレッドボードで4チャンネル分だけでも動作確認しておいたほうが良かったですね。

                                                            >そういう理解でよろしいですか。
                                                            はい。QとQ_(Qバー)は常に反対になります。

                                                            >1qは5Vのままで変化しません
                                                            ICが壊れているのかもしれません。

                                                            >押しボタンから追ってみると、押すと5Vが出て、10kΩを通って3pinに2.4Vがかかります。
                                                            3pinは1Q_じゃないですか。そこが2.4Vというのはおかしいです。どこが2.4Vなのでしょうか。

                                                            >9pinどうしを結んでGNDに落とす100kΩを間違えて10kΩにしていました。点検でそれに気づいて100kΩに直しましたが、この段階で74HC175が壊れてしまったなんてことはないですよね。
                                                            10kΩだと動作しないと思いますが、10kΩをつけても壊れません。

                                                            74HC175を交換してみてはどうでしょうか。
                                                            Re^28: フォトMOSリレーを使った8チャンネルセレクタ
                                                            inara1 2018/01/13 09:41
                                                            1. [3616] 今日は少年少女発明クラブの活動日です。帰ったら交換してみます。Re^29: フォトMOSリレーを使った8チャンネルセレクタ daruma 2018/01/13 12:32
                                                              1. [3617] > 3pinは1Q_じゃないですか。そこが2.4Vというのはおかしいです。どこが2.4Vなのでしょうか。

                                                                書き間違えました。2.4Vがかかっているのは4pinです。

                                                                > 配線図はこれ
                                                                > http://mpga.jp/akizuki-fan/index.php?mode=image&file=3608.jpg
                                                                > ですか。

                                                                そうですが、1か所、左の74HC175の9pinへ行く線、ダイオードの足からいきなりジャンパ線になっているところを配線面を這わせて隣2本のジャンパ線と並ぶ位置から表にと直しています。

                                                                74HC175を交換してみました。状況は同じです。
                                                                使っているのは'TC'も'SN'も付かない'74HC175AP'です。東芝のマーク(カタカナの「ア」を左右反転したようなTの字)が付いています。

                                                                16pinに5Vは来ています。8pinはGNDになっています。
                                                                配線図に誤りがあるか、配線図どおりになっていないところがあるかでしょうかねえ。
                                                                Re^30: フォトMOSリレーを使った8チャンネルセレクタ
                                                                daruma 2018/01/13 21:50
                                                                1. [3618] 4pin(入力)が2.4Vというのはおかしい、と思って配線図
                                                                  http://mpga.jp/akizuki-fan/index.php?mode=image&file=3604.jpg
                                                                  と回路図
                                                                  http://mpga.jp/akizuki-fan/index.php?mode=image&file=2952.jpg
                                                                  を比較したら違いがありました。その配線図だとスイッチを押したとき、5Vが10kΩで分圧されて4pin電圧が2.5Vになってしまいます。回路図では分圧されません。
                                                                  Re^31: フォトMOSリレーを使った8チャンネルセレクタ
                                                                  inara1 2018/01/14 06:08
                                                                  1. [3619] あ、そうですか。分圧されて半分(実測2.4V)が入るのか、5Vじゃないんだなあと思ってました。
                                                                    いま起きたので、朝食後に取り組みます。
                                                                    Re^32: フォトMOSリレーを使った8チャンネルセレクタ
                                                                    daruma 2018/01/14 08:03
                                                                    1. [3620] ブレッドボードで動作確認したほうがいいです。実は昨日、4チャンネル分の動作確認をしていて、そのときのブレッドボードを残してあったので、さきほど写真を撮りました。出力(1Q〜4Q)にLEDを付けて動作確認しています(電流制限抵抗は1kΩ)。

                                                                      配線図の220ΩはLEDの電流制限抵抗でしょうか。これも抵抗値が適切かどうかブレッドボードで確認しておいたほうがいいです。高輝度LEDだと220Ωでは明るすぎます。暗いLEDなら220Ωでもいいと思いますが。
                                                                      Re^33: フォトMOSリレーを使った8チャンネルセレクタ
                                                                      inara1 2018/01/14 08:27 *
                                                                      1. [3621] ブレッドボードで動作確認しました。形にするのを急ぎたくて、ついつい実作に突き進んでしまうのはいけませんね。
                                                                        ちゃんと動きました。

                                                                        回路図を見ながら配線図を起こすときに「Dへ行くのとGNDに行くのと二股」と思い込みにはまってしまいました。その頭で見直すもんですから、何度見ても誤りに気づかなくて、困ったものです。

                                                                        配線図を描き直しました。10kΩの位置は見た目も整然となりました。
                                                                        電流制限抵抗は仮に220Ωとしてありましたが、実際に使うLED付きスイッチが調達できたので、実測の結果2.4kΩとしてあります。
                                                                        ヘッダピンは、各チャンネル単独で引けるようにと2列ピンにしていましたが、スイッチも基板1枚に並べることにしたので共通側を1本でもっていくことにしました。それにともない、電流制限抵抗はスイッチ基板に置くことにしました。

                                                                        新たに作ろうかなとも思ったのですが、付け直し作業にとりかかりました。ハンダ吸い取り線が残りわずかで、今晩の作業は途中までになりそうです。
                                                                        Re^34: フォトMOSリレーを使った8チャンネルセレクタ
                                                                        daruma 2018/01/14 16:43 *
                                                                        1. [3622] 動きました。
                                                                          ただ、Q_は5V-0Vに変化するものの、Qは0V-4.51Vにしかなりません。どのChもそうです。

                                                                          押しボタン1個にLED1個では実験がしにくいので、これからスイッチ基板を作ります。
                                                                          Re^35: フォトMOSリレーを使った8チャンネルセレクタ
                                                                          daruma 2018/01/15 16:38 * new!
                                                                          1. [3623] スイッチ基板ができて、円滑に動作チェックができました。
                                                                            ボタンを押すとそのChのQが4.95VになりQ_が0Vになります。
                                                                            Qのハイが昨日は4.51Vでしたが今日は4.95Vです。5Vに達していませんが、誤差の範囲でしょうか。
                                                                            Re^36: フォトMOSリレーを使った8チャンネルセレクタ
                                                                            daruma 2018/01/16 17:27 * new!
                                                                            1. [3624] 次はリレー基板を作ります。
                                                                              当初は切り替える信号線とそのGNDと両方を切り換えようと考えていましたが、GNDどうしは結んでおいて信号線だけを切り換えることにします。
                                                                              それで、配線図を変更しました。こういうことでどうでしょう。
                                                                              Re^37: フォトMOSリレーを使った8チャンネルセレクタ
                                                                              daruma 2018/01/17 13:55 * new!
                                                                              1. [3625] 実作前にブレッドボードで実験しました。ボードサイズの制約上7チャンネル1系統での実験です。

                                                                                ・OUTどうしを結んで入力セレクタとした場合
                                                                                ・INどうしを結んで出力セレクタとした場合
                                                                                について、リレー出力側の導通をテスターで調べました。
                                                                                写真は、INどうしを結んでの実験です。
                                                                                テスターを繋いだChを選択するとONになり、他ではOFFになります。
                                                                                これでOKですね。
                                                                                Re^38: フォトMOSリレーを使った8チャンネルセレクタ
                                                                                daruma 2018/01/17 15:41 * new!
  1. [3460] Yahoo知恵袋の回答の補足にここを使わせてください。

    左上の画像をクリックすると拡大表示されます。Excel2010とExcel2016で動作することを確認しました。

    貼る付けるVBAコードはこれです。この文章をコピー&ペーストしてください。
    ここから↓
    Function I(Iph, Rsh, Rs, I0, nVt, V)
    If Iph < 0 Or Rsh < 0 Or Rs < 0 Or I0 < 0 Or nVt < 0 Or V < 0 Then
    I = ""
    Exit Function
    End If
    Dim eps As Single, a As Single, x As Single, x0 As Single, x1 As Single

    eps = 1 / 10 ^ 6 ' --- 相対計算精度
    x0 = -2 * Iph
    x1 = Iph ' --- I の値を x0 から x1 の範囲で探す
    I0 = I0 / 10 ^ 12 ' --- I0の単位をpAからAに変換
    nVt = nVt / 1000 ' --- nVtの単位をmVからVに変換
    While Abs((x0 - x1) / (x0 + x1)) > eps
    x = (x0 + x1) / 2
    a = (V + x * Rs) / nVt
    If a > 700 Then a = 700 ' --- exp 計算のオーバフロー防止
    If Iph - (V + x * Rs) / Rsh - x - I0 * (Exp(a) - 1) > 0 Then
    x0 = x
    Else
    x1 = x
    End If
    Wend
    I = x
    End Function
    ↑ここまで

    このプログラムは、I(Iph, Rsh, Rs, I0, nVt, V)という関数を定義しているものです。中身は2分法で電流を計算しています。ワークシートのセルに
    =I(Iph, Rsh, Rs, I0, nVt, V)
    と書けば、I-V特性の縦軸の電流(A単位)を計算してくれます。
    Iphは光電流(A単位)、Rshは並列抵抗(Ω単位)、Rsは直列抵抗(Ω単位)、I0は飽和電流(pA単位)、nVtは理想係数×熱電圧(mV単位)、VはI-V特性の横軸の電圧(V単位)です。

    Excelシートを保存するときは、ファイルの種類を「Excelマクロ有効ブック」としてください。
    Excel VBAで太陽電池の電流−電圧特性を計算する方法
    inara1 2017/10/06 07:17 *
    1. [3613] 今回作成したVBAコードを以下に添付します。電流を引数として電圧を求めるユーザ関数です。Iphは光電流[A]、Rpは並列抵抗[Ω]、Rsは直列抵抗[Ω]、I0はダイオードの飽和電流[pA]、Vtは熱電圧[mV]、Iは出力電流[A]です。I0とVtの単位に注意してください。

      Function V(Iph, Rp, Rs, I0, Vt, I)
      If Iph < 0 Or Rp < 0 Or Rs < 0 Or I0 < 0 Or Vt < 0 Or I < 0 Or I >= Iph Then
      V = 0
      Exit Function
      End If
      Dim eps As Single, a As Single, x As Single, x0 As Single, x1 As Single

      eps = 1 / 10 ^ 6 ' --- 相対計算精度
      I0 = I0 / 10 ^ 12 ' --- I0の単位をpAからAに変換
      Vt = Vt / 1000 ' --- Vtの単位をmVからVに変換
      x0 = 0
      x1 = Vt * Log(1 + Iph / I0) ' --- V の値を x0 から x1 の範囲で探す

      While Abs((x0 - x1) / (x0 + x1)) > eps
      x = (x0 + x1) / 2
      a = (x + I * Rs) / Vt
      If a > 700 Then a = 700 ' --- exp 計算のオーバフロー防止
      If Iph - (x + I * Rs) / Rp - I - I0 * (Exp(a) - 1) > 0 Then
      x0 = x
      Else
      x1 = x
      End If
      Wend
      V = x
      End Function
      Re: Excel VBAで太陽電池の電流−電圧特性を計算する方法
      inara1 2018/01/12 06:22
  1. [3569] inara1さん、なんじゃらほいさん、darumaさん、ご無沙汰しています。
    1年以上工作から遠ざかっていましたが、作りたい物が出来たのでご教示下さい。
    LTspiceもPICも使い方を忘れていて手さぐり状態です。
    こちらの回路とプログラムを使わせてもらっています。http://www.aurora.dti.ne.jp/~honeybee/Laboratory/ShiftPoint2/Index.html

    変更点は入力パルスが0-5Vに対して0-10Vを入れるので分圧したのと、トランジスタを1815にしています。机上では上手くいったのですが、回路を作ってバイクに載せたら誤作動ばかりです。(点灯、消灯を繰り返す)

    バイクという条件の悪いモノに載せようとしているので色々と問題点があると思いますが、考えられる対処法が有れば宜しくお願いします。
    この回路を作りたいです
    lactaman 2017/12/14 21:08 *
    1. [3570] 実験していませんがこういう回路でいいのではないでしょうか。トランジスタの電流増幅率や温度が変わっても特性に変化がないことは確認しています。Re: この回路を作りたいです inara1 2017/12/15 03:24 *
      1. [3571] inara1さん、早々にありがとうございます。
        折角興味を持ち出していた電子工作も暫くぶりで最初から勉強ですね。
        理解していないからなんでしょうね。

        上記の回路で入力すると格段に安定しました。ただ、時々PICが誤作動します。
        今回はプログラムがHEXファイルしか公開されていないので中身が分かりませんが、インターフェイスまでしっかりしているので完成させたいです。
        短時間ならオシロをバイクの所に持って行けるので、入力信号を測定してみようと思います。

        公開されているHPではノイズ対策でコレクタに繋がる抵抗を10kに変えたとあるのですが、この抵抗値を変えると何が変わるのでしょうか?
        また、7805で5Vを作るのとDC-DCコンバータ
        http://akizukidenshi.com/catalog/g/gM-07179/
        を使うのでは電源ノイズに対するメリットなんかは有りますか?
        宜しくお願いします。
        Re^2: この回路を作りたいです
        lactaman 2017/12/15 20:24
        1. [3572] 元の回路は無理やりな感じがします。コレクタ抵抗は何Ωから10kΩに変更したのか分かりませんが、抵抗値が小さいほど応答が速くなります。低回転時と高回転時の入力信号の波形は撮れますか。

          そのDCコンバータは使ったことがないのでデメリットは分かりません。無負荷時の消費電流が5mAあるので、負荷電流が小さいときは高効率とは言えません。
          Re^3: この回路を作りたいです
          inara1 2017/12/16 07:35
          1. [3576] お世話になります。
            駐輪場でオシロを使うのが難しいので、ハンディタイプのオシロ(DSO202 Note II)を買って測定しました。左がアイドリング中、右が回転を上げた時で、両方10V/divです。

            色々と勘違いがありました。
            サービスマニュアルでタコメーターの点検に0-10V デューティ0.5の波形を入れろと有ったので、てっきりECUやタコメーターに繋がっているラインのパルスもそうだと思い込んでいましたが、相当高い電圧でした。

            こんな入力波形ですがマイコンに入力する方法は有りますか?
            宜しくお願いします。
            Re^4: この回路を作りたいです
            lactaman 2017/12/17 15:30 *
            1. [3578] 入力信号は反転しているのですね。40Vくらいのスパイクノイズを入れてシミュレーションしてみましたがが問題ないようです。40Vの信号が印加されたときのトランジスタのベース電流は4mAくらいなので、この回路ではトランジスタが壊れることはありませんが、前の回路だと10pFが入っているので、10pFを通して高周波ノイズがトランジスタ直に入ることになるのでまずいかもしれません。

              >こんな入力波形ですがマイコンに入力する方法は有りますか?
              その波形を屋内で出せば、寒い駐車場で怪しげな行動をしなくて済みますね。

              LTspiceで発生させた信号はwaveファイルで保存できます。waveファイルをPCなどで再生すれば、スピーカ端子にその波形が出てくるので、40Vくらい出せるアンプで適当に増幅して、その回路に加えればいいです。

              55Vまで出力できるオペアンプ
              http://akizukidenshi.com/catalog/g/gI-00065/
              があります(手元にもあります)。上の回路の試験だけなら、実際に40Vのノイズまで加える必要はないかもしれませんが、電源ラインにそのノイズが回り込んでPICが誤動作する可能性もあるかもしれません。必要ならアンプの回路図を書きますが、電源電圧は45Vくらいは必要です。秋月に48Vのスイッチング電源(入力はAC100V)があります。
              http://akizukidenshi.com/catalog/g/gM-12352/

              LTspiceで発生させた信号はwaveファイルで保存する方法について、過去にそういう質問がokwaveというサイトであったので回答したことがあります。
              https://okwave.jp/qa/q9050191.html

              Yahoo知恵袋のIDはokwave_inara1ですが、知恵袋に来る前はそのokwaveでinara1というIDを使っていたのでそういう名前にしました。
              Re^5: この回路を作りたいです
              inara1 2017/12/17 16:59 *
              1. [3581] 最初にinara1さんに謝らなくてはなりません。
                ハンディオシロの入力は40Vp-p迄だったのです。
                ×10プローブは有りますが変換コネクタが手元に有りません。
                いろいろとバイクの事を調べると、この入力はイグニッションコイルの一次側の電圧のようで、200V程度は有りそうでした。サービスマニュアルでは155V以上で正常と有りました。よく調べずにすみませんでした。この信号を再現するのは現実的ではないですね。

                こちらのページと波形は似ています。
                ダイオードクランプの所が分かりませんが…
                http://bit.ly/2BHiiRq
                Re^6: この回路を作りたいです
                lactaman 2017/12/18 22:36
                1. [3582] そのサイトの「イグニッション波形」の所(トランジスタのコレクタ電圧)を観測したのではないのですか。その波形では55Vくらい出ていますが問題ないと思います。

                  ダイオードクランプの所は、ツェナダイオードで5V以上の電圧がロジックICにかからないようにしているだけです。今回の回路はロジックICでなくトランジスタに信号を入れているので、そのような回路は不要です。
                  Re^7: この回路を作りたいです
                  inara1 2017/12/19 04:36
                  1. [3583] >今回の回路はロジックICでなくトランジスタに信号を入れているので、そのような回路は不要です。

                    了解しました。

                    イグニッションコイルについても知らなかったので少し調べました。
                    私のバイクの場合トランジスタ点火でECU内にトランジスタ回路があります。一次コイルのプラス側に常時14Vをかけていて、一次コイルのマイナス側にECUからの信号が14Vから0Vに落ちた時に励磁させているのですね。14Vに戻った時に逆起電力で点火になるんですかね。

                    現状としてはinara1さんが書いてくれた入力回路でトランジスタはスイッチングできていてPICの入力はできています。ありがとうございます。ただ、設定より低い回転で誤作動してLEDが点灯する時があります。誤作動時にPICの入出力がどうなっているか調べようと思います。
                    Re^8: この回路を作りたいです
                    lactaman 2017/12/19 21:28 *
                    1. [3593] 報告が中途半端になってすみません。
                      プログラムをそのまま頂いて中身が分からずに誤作動の原因追及に限界を感じました。
                      楽をしようとしたことを反省しています。

                      inara1さんに入力方法を教えていただいたので、timer0,timer1を初めて使って、12f629でプログラムから作っています。有難うございました。
                      Re^9: この回路を作りたいです
                      lactaman 2017/12/27 18:43
  1. [3585] れていません.
    In serious cases, personal information leak more and more people received harassing phone calls, received several a day, or even a dozen harassing phone calls will seriously affect our work and life, in the face of harassing phone calls, we can do?

    By whom we cannot control our information is leaked out, also can't control of harassing phone calls to disturb, we can only be used in the home to install cell phone jammer, can effectively avoid harassing phone calls to disturb.

    http://www.jammer-buy.com/app-dangerous-phone-security.html
    cell phone jammer blocker
    jammer-buy 2017/12/23 19:39
  1. [3554] このスレッドは『LED Cube』の続きです。

    > パラメータの設定次第で数時間になることはおかしくありません。

    昨日の実験では、STEPDATAを'5'でTIME100でトップスピードへの変化時間よりはるかに長く待っても抜け出せないので、時間がかかっているのではなく無限ループだと考えました。そのあとSTEPDATAが'1'でTIME1Mのものを再度走らせて朝まで7時間、やはり同じ状態になっていたのでこれもそうだと考えました。早計でしたか?

    > こういう場合は、STEPDATAを52とかにして

    STEPDATAを'52'でTIME100にしてやってみました。やはり、上りつめたところで変化しなくなりました。

    > チカラ技第2弾の修正HEX STEP7 1mS

    走らせてみました。42分で全点灯(に見える)状態になりそれが数秒続いた後減速に転じました。これが想定通りの動きですね。「チカラ技第2弾」ですから、ループ回数を4段階に分けているのですね。

    > チカラ技第3弾のHEX STEP変化版 重複あり1mS

    これまで固定だったSTEPDATAを途中で変化させる仕様なんでしょうか。
    100分で全点灯に達しました。わずかずつの変化を見続けていたのですが、低速域ではステップを大きく、中速域では小刻みに変化させているのでしょうか。「2発点灯(に見える)横走り」「3発点灯(に見える)横走り」の状態がたっぷり続きました。

    > 頭脳技版TIMER1使用の最低加減速インターバル50mS版
    > 頭脳技版TIMER1使用の最低加減速インターバル250mS版
    > 頭脳技版TIMER1使用の最低加減速インターバル250mS版 STEPDATA5 最低ウェイト150マイクロ秒

    これらは力ずくではないスマートで美しい方法なんですね。
    走らせてみました。ひとつめとふたつめはほぼ同じに見え2分で全点灯に達し、それが1秒弱続きました。みっつめは1分で全点灯に達し続いた時間はもっと短かったです。

    割り込みというのはさらに難しそうですね。
    「チカラ技」のほうは、読んでぼんやりとですが流れがわかります。それとて細部はよくわかりません。

    > チカラ技第2弾のソースは240行〜260行の間にバグの原因があります。

    難しい宿題です。今夜は各HEXを走らせて観察するだけで過ぎてしまいましたから、明日頭をひねります。
    LED Cube2
    daruma 2017/12/01 01:01
    1. [3555] 宿題が解けました。
      249行 GOTO UPSTART → GOTO DNSTART
      ではないでしょうか。これで意図どおりに動作します。

      いろいろカットアンドトライして、
      STEPDATA 30
      TIME150
      それに、ループ回数の配分を
      200,120,30 から 100,20,10 に変更しました。
      これで、
      ・1発点灯横走り
      ・2発点灯(に見える)横走り
      ・3発点灯(に見える)横走り
      ・3発点灯(に見える)縦走り
      ・全点灯(に見える)トップスピード
      の見せ方で上り坂35秒全点灯10秒下り坂35秒と程よい遷移です。

      頭脳技もご提示いただきましたが、今回はこれでフィックスとさせていただきたく思います。
      Re: LED Cube2
      daruma 2017/12/01 14:24
      1. [3556] 試作4号機が形になりました。
        これまでと同じく両面ノンスルホール基板を使って、部品面の裏にヘッダソケットを付け、天地を裏返しにしています。柱になる足の都合でソケットをできるだけケース天板に近づけたいからです。
        LED群は初期作の少々いびつな物をつけていますが、あとでもう少しましなのを作ります。

        高さが取れるのでPICはソケット装着にしましたが、ICSPのピンも立てました。
        これまでPICkit3と秋月のアダプタで書き込んでいますから、このICSPピンはまだ使っていません。
        PICkit3をここに挿して、いつものように書き込みすればいいのでしょうか。その場合回路電源はOFFにしておくのですよね。まだやってみてはいません。
        Re^2: LED Cube2
        daruma 2017/12/02 12:44 *
        1. [3557] ICSPで書き込むことができました。MPLAB IPEで書き込みを開始すると、PICKit3からの電源で回路が走り出したのには驚きました。なるほど便利ですね。

          試作4号機もケースに収めました。基板が1階建てなのでもっと低くできたのですが、試作3号機と同じ高さに揃えました。

          inara1さんにお世話になった試作3号機はすでに
          http://mpga.jp/akizuki-fan/index.php?mode=article&id=3538&page=1
          で報告していたとおりめでたく完成です。ありがとうございました。

          なんじゃらほいさんにお世話になった試作4号機もこれにて完成です。ありがとうございました。
          せっかく頭脳版プログラムで鍛えてくださろうとしていたのに区切りをつけてしまって申し訳ありません。
          Re^3: LED Cube2
          daruma 2017/12/06 17:26 *
          1. [3558] >これもそうだと考えました。早計でしたか?

            いやむしろ悠長で気が長いという意味です。



            >> チカラ技第3弾のHEX STEP変化版 重複あり1mS

            >これまで固定だったSTEPDATAを途中で変化させる仕様なんでしょうか。

            重複回数を指定する部分にSTEPDATAを設定する記述を追加しました。

            MOVLW D'12'
            MOVWF STEPDATA
            GOTO UPSTART ;どれも該当しないなら、そのまま表示へ

            S1SET MOVLW D'200'
            MOVWF CHOUFU
            MOVLW D'1'
            MOVWF STEPDATA
            GOTO UPSTART

            S2SET MOVLW D'120'
            MOVWF CHOUFU
            MOVLW D'4'
            MOVWF STEPDATA
            GOTO UPSTART

            S3SET MOVLW D'30'
            MOVWF CHOUFU
            MOVLW D'8'
            MOVWF STEPDATA
            GOTO UPSTART

            > 頭脳技版TIMER1使用の最低加減速インターバル50mS版
            > 頭脳技版TIMER1使用の最低加減速インターバル250mS版
            > 頭脳技版TIMER1使用の最低加減速インターバル250mS版 STEPDATA5 最低ウェイト150マイクロ秒

            >これらは力ずくではないスマートで美しい方法なんですね。

            一定のインターバルで何かを処理する場合は、クロックを基準に自動的に一定間隔で処理するタイマー割り込みを使うのが正当な手法ですが、タイミングがシビアでなければ必然ではありません。

            タイマー割り込みを使った方が、チカラ技版よりもリニアに変化させることが出来るので、美しくできる可能性がありますが、自由度という意味ではチカラ技版を極めた方が幅が取れます。

            今回使った割り込みプログラムの大部分は、前回バスケットボールの24秒タイマーとかを作ったときに、7セグパターンのスキャンで処理速度がばらつき、あまりにも精度がメチャメチャだったので、その時に書いたものの抜き取り加工品です。



            割り込み版はインターバル250mS版ではざっと計算したらDPCNTが70を割らないと、ほぼ意味がなかったようで、

            >走らせてみました。ひとつめとふたつめはほぼ同じに見え2分で全点灯に達し、それが1秒弱続きました。
            >みっつめは1分で全点灯に達し続いた時間はもっと短かったです。

            よって、この様な結果だったと言うことですね。

            >割り込みというのはさらに難しそうですね。

            レジスタの設定が増え、お約束処理も増え、面倒が増えるだけですね。

            解れば何てこと無いですが、初心者〜初級の人には結構敷居が高いはずです。



            フィックス宣言が出る前にアセンブルしてあった物です。

            気が向いたらどうぞ。10分掛からないと思います。

            最低ウェイト150マイクロ秒、速度変化インターバル1秒版
            :020000040000FA
            :020000001528C1
            :08000800AB00030EAA00AC0AD4
            :1000100014302C02031D0E28AC01291458200C109A
            :100020002A0E8300AB0E2B0E0900831660308F0062
            :1000300000308600F03085008117831207309C0065
            :100040000030900083160C1483120B178B17850158
            :100050008601851405158515FF30A6000130A8001E
            :10006000AC01A90133285D2061206D2065206D2041
            :1000700069206D2065206D20291C34281010280867
            :10008000A602031833280130A6005D2061206D20F0
            :1000900065206D2069206D2065206D20291C462873
            :1000A00010102808A607031C4528FF30A600332897
            :1000B000C9308E003C308F000800AC01582010146D
            :1000C000080085100515851508008514051185158E
            :1000D0000800851405158511080005108601061411
            :1000E0008A20860186148A20860106158A208601C8
            :1000F00086158A20860106168A20860186168A20A1
            :10010000860106178A20860186178A208601051433
            :100110008A2008002608A7009D20A70803190800C8
            :10012000A70B8C2808001330A1000000000000007D
            :10013000A10B95280000000008001D30A100000060
            :100140000000A10B9F280000000008006430A300FD
            :100150000000000000000000000000000000A30BF1
            :10016000A82808003230A4009320A40BB42808006B
            :100170006430A4009320A40BBA2808002830A500FE
            :10018000B220A50BC02808006430A500B220A50B42
            :10019000C6280800C930A500B220A50BCC2808004D
            :02400E00503F21
            :02401000FD3F72
            :00000001FF



            >宿題が解けました。
            >249行 GOTO UPSTART → GOTO DNSTART
            >ではないでしょうか。これで意図どおりに動作します。

            >いろいろカットアンドトライして、
            >STEPDATA 30
            >TIME150
            >それに、ループ回数の配分を
            >200,120,30 から 100,20,10 に変更しました。
            >これで、
            >・1発点灯横走り
            >・2発点灯(に見える)横走り
            >・3発点灯(に見える)横走り
            >・3発点灯(に見える)縦走り
            >・全点灯(に見える)トップスピード
            >の見せ方で上り坂35秒全点灯10秒下り坂35秒と程よい遷移です。

            これで、今回の勉強は十分でしょう。

            >ICSPで書き込むことができました。MPLAB IPEで書き込みを開始すると、PICKit3からの電源で回路が走り出したのには驚きました。なるほど便利ですね。

            >なんじゃらほいさんにお世話になった試作4号機もこれにて完成です。ありがとうございました。

            ようやく完成ですね。不適切なパラメータの試験レポートご苦労様でした。



            >せっかく頭脳版プログラムで鍛えてくださろうとしていたのに区切りをつけてしまって申し訳ありません。

            レベルの飛びすぎたプログラムに手を出して混乱するよりも、現状レベルで少しずつステップアップする方が勉強になります。
            Re^4: LED Cube2
            なんじゃらほい 2017/12/06 23:03
            1. [3559] > いやむしろ悠長で気が長いという意味です。

              先述したとおり
              >> STEPDATAを'5'でTIME100でトップスピードへの変化時間よりはるかに長く待っても抜け出せないので、時間がかかっているのではなく無限ループだと
              判断するのは短時間でできたのですが、もしや私の方でSTEPDATAとTIMEを変更したことが原因かもと、いただいたままの状態でも試してみたわけです。「長時間かかる」とのことだったものですから、

              > 一定のインターバルで何かを処理する場合は、クロックを基準に自動的に一定間隔で処理するタイマー割り込みを使うのが正当な手法

              はるか昔、BASICでプログラムを書いていた頃に、マウスの処理は割り込みでした。割り込みというもののイメージはわかるのですが、それをPICで書くのは
              > レジスタの設定が増え、お約束処理も増え、面倒が増える
              ことの想像もつきます。そんなわけで、チカラ技版で所期の動作が実現しましたので「これでできあがりに」とさせていただきました。どこをどう増減すると速さや回数が変わるのかを自分で試すことができてありがたかったです。

              > 最低ウェイト150マイクロ秒、速度変化インターバル1秒版
              走らせてみました。3分でトップスピードに達します。

              > これで、今回の勉強は十分でしょう。
              ありがとうございます。
              今日はひさしぶりに机の上をかたづけました。
              Re^5: LED Cube2
              daruma 2017/12/07 17:06
              1. [3584] daruma工房のサイトを更新しました。
                いくつかたまっていた作品を掲載し、LED Cube2種(4017版とPIC版)を掲載しました。
                inara1さん、なんじゃらほいさん、あらためてありがとうございます。

                daruma工房をご訪問ください。
                http://darumakobo.wix.com/work
                Re^6: LED Cube2
                daruma 2017/12/20 19:12
  1. [3145] このスレッドは、『棒状温度計3』の後段で派生した話題を独立させたものです。

    回路はinara1さんの作ってくださった
    http://mpga.jp/akizuki-fan/index.php?mode=article&id=3059&page=1
    に基づいています。

    基板配線図まで
    http://mpga.jp/akizuki-fan/index.php?mode=article&id=3070&page=1
    描いていただきました。

    試作の過程で、一部定数変更と配置配線の微調整が入りましたので、それを備忘録として残しておくために、改めて図を描いているところです。数時間後にはアップします。
    ネオン管IN-9を使ったオーディオレベルメーター
    daruma 2017/05/26 17:21
    1. [3146] 新規投稿ありがとうございます。棒状温度計1・2・3は、全てお行儀良く99回で終わりました。これから晩酌タイムに入ります。Re: ネオン管IN-9を使ったオーディオレベルメーター inara1 2017/05/26 17:28
    2. [3147] 変更して書き直した配線図です。

      C3,C6の1μFを10μFに。R9,R19の10Ωを22Ωに。
      管のスペース前後方向が14ピッチあったのを左右方向と同じ13ピッチに。
      ケースのジャック取付スペースを少しでも広くするため、電源部を1列ずらして基板端1列後退。
      インダクタと耐圧250V電解コンの位置を現物あわせで移動。

      変更点は以上です。
      Re: ネオン管IN-9を使ったオーディオレベルメーター
      daruma 2017/05/26 21:18 *
      1. [3148] 図と基板現物とを照らし合わせていて、配線誤りを見つけました。
        図の赤線を接続していたのです。
        修正して動かしてみましたが、挙動に違いはありません。直す前も動いていたし、これで例の症状が改善されたわけでもありませんでした。
        Re^2: ネオン管IN-9を使ったオーディオレベルメーター
        daruma 2017/05/27 09:04 *
        1. [3149] >修正して動かしてみましたが、挙動に違いはありません
          それはおかしいですね。そこが短絡していると回路図
          http://mpga.jp/akizuki-fan/index.php?mode=image&file=3059.jpg
          のR9を短絡することになるので、IN-9の電流制御ができません。オーディオ信号を入れると、全く光らないかフルスケール点灯してしまうと思います。実際にはつながっていなかったのではないでしょうか。

          描き直した配線図ではまだ組んでいないのでしょうか。高電圧部の配線を他の配線と5mm(2ピッチ)離してあったのですが、1ピッチに縮まっていますね。配線間にホコリがついたときの漏電が心配ですが、darumaさんの判断で「良し」とするのならそれでもいいです。
          Re^3: ネオン管IN-9を使ったオーディオレベルメーター
          inara1 2017/05/27 10:29
          1. [3150] > 実際にはつながっていなかったのではないでしょうか。
            そうかもしれませんね。ハンダでブリッジしていただけでなく線がそこまで行っていたのでこりゃ間違いと思ったのですが、基板に密着ではなくややアーチになっていました。取り除く前によく観察すればよかったです。

            新しい図に基づいてはまだ組んでいません。穴あけをしたところです。
            IN-9の両極にいく+−が並行しているところですね。ためらいはあったのですが、そこさえ突破できれば1列空けることができるのでそうしてみました。
            左側は横向きにした680Ωからそのまま伸ばすとして、右はせめてVRの脇を通った後ハンダ付け点(電解コンからの斜行線との接合部)を1分穴ぶん下げることでどうでしょう。
            Re^4: ネオン管IN-9を使ったオーディオレベルメーター
            daruma 2017/05/27 10:55
            1. [3151] >IN-9の両極にいく+−が並行しているところ
              そこは最初から1ピッチです。そこも2ピッチ離したかったのですが、そこで漏電してもIN-9が点灯しなくなるだけで、MPSA42は耐圧があるので大丈夫と判断しました。

              他の部分で狭くなっているところを添付図の赤丸で示しましたが、緑色の配線のようにすれば少し間を空けられます。2k VRと680Ωは1段下げればいいです。680kΩの右側の上側が1ピッチしかありませんが、そこは仕方ないです。
              Re^5: ネオン管IN-9を使ったオーディオレベルメーター
              inara1 2017/05/27 11:26 *
              1. [3152] これでどうでしょう。
                LEDは断面が四角いリード線なので、,根元近くで斜めに曲げると無理がかかりそうなんです。それで向きを逆にしてこうしてみました。

                ※ あ、まずいですね。
                Re^6: ネオン管IN-9を使ったオーディオレベルメーター
                daruma 2017/05/27 11:54 *
              2. [3153] 応答速度計測装置の件ですが、7セグ6桁の配線をするならマイコンを使ってキャラクター液晶の表示にした方が工数ははるかに少なそうですが・・・。

                厳密な計測にするのは大変ですが、14ピンか18ピンでコンパレーター内蔵のもので「タイミングが目安程度、256段階評価」ならメイン部分のプログラムの最小ではこんな感じです。

                インターバル10mSだと0.01秒×256で最大時間は2.56秒ですね。



                RESET
                BTFSC  PORTB.7   ;スタートボタン
                GOTO   RESET
                  CLRF   MAINCNT

                START
                  BSF  PORTB,0     ;外部への出力(120V電源出力ON)

                MAIN            ;メインループ
                  CALL TIME10M    ;計測インターバル
                  BTFSS  CMCON,6    ;入力端子のチェック
                  GOTO  COUNTEND    ;HIGHを検出したらループを抜ける
                  MOVLW D'1'
                  ADDWF MAINCNT,F    ;1カウント加算
                  BTFSC  STATUS,C     ;256超えチェック
                  GOTO  OVERFL      ;時間切れエラー検出
                  GOTO  MAIN

                COUNTEND
                 CALL BIN_BCD
                 CALL LCDCLR

                DISPLAY
                 MOVF D1,W
                 CALL LCDDISP
                 MOVF D2,W
                 CALL LCDDISP
                 MOVF D3,W
                 CALL LCDDISP
                 GOTO RESET

                OVERFL
                 CALL LCDCLR
                 MOVLW "E"
                 CALL LCDDISP
                 MOVLW "R"
                 CALL LCDDISP
                 MOVLW "R"
                 CALL LCDDISP
                 GOTO RESET

                LCDへの配線は
                データ4本、コントロールビット2本(データ共にマイコンから直結)、コントラスト電圧1本(適当にVRで電源を分圧、最悪グランド直結)、液晶本体の電源2本です。
                Re^6: ネオン管IN-9を使ったオーディオレベルメーター
                なんじゃらほい 2017/05/27 12:28
                1. [3154] 680kΩの片足、セラコンの足と重なってました。
                  こうですね。

                  なんじゃらほいさん、お久しぶりです。

                  キャラクター液晶ですか。なるほど。そんなに大きく工数が違いますか。もっとも工数はそんなに苦にならないんですが。

                  まずはinara1さんにいただく回路でやってみて、Ver.2でそちらにと考えますが・・・。
                  Re^7: ネオン管IN-9を使ったオーディオレベルメーター
                  daruma 2017/05/27 12:42 *
                  1. [3155] 配線図はそれでいいです。まだ距離が狭いところがありますがそれ以上広げられそうもないですし。

                    IN-9の応答測定のほうは、なんじゃらほいさんのほうが配線は少ないです。6桁の周波数カウンタはこちらではすでに作ってあって、それをそのまま流用できるのですが、darumaさんが1から作ると大変かもしれません。とはいっても、ハイエンドラーメンタイマに比べればはるかに楽です。実際の配線図を添付します。応答測定回路では、これに若干の部品を追加します。これくらいの規模のデジタル回路では「ジャンパー線なし」はほとんど不可能です。

                    全てハードで作るときに問題が1つあります。部品がやや入手困難です。過去の投稿文
                    http://akizuki-fan.bbs.fc2.com/?act=reply&tid=10623357
                    に部品が書いてありますが、MC14553とMC14543は秋葉原の若松で買ったものです。若松にはまだあるようですが秋月にも千石にも梅沢無線にもありません。aitendoにはMC14553を使った3桁のカウンタキットがあります
                    http://www.aitendo.com/product-list?keyword=14553&Submit=%E6%A4%9C%E7%B4%A2
                    がそれに使われているMC14553の単品は在庫切れのようです。MC14543はaitendoにもともとありません。MC14543は7セグメントデコーダで、以前作ったハイエンドラーメンタイマ
                    http://bbs3.fc2.com//bbs/img/_454800/454703/full/454703_1378624388.jpg
                    で使った4511と同じ機能なのですがpin配置が少し違います。若松で買うのならMC14553とMC14543は両方あるので添付の配線図がそのまま使えます。
                    Re^8: ネオン管IN-9を使ったオーディオレベルメーター
                    inara1 2017/05/27 14:00 *
                    1. [3156] ハンダ付けにとりかかったところです。

                      > IN-9の応答測定のほうは、・・・・ハイエンドラーメンタイマに比べればはるかに楽です。
                      苦ではありません。ジャンパ線は不可避でも、空中配線が無いのはうれしいです。

                      MC14553とMC14543は若松のサイトで確認できました。MCを付けるとヒットしないのですが、'14553','14543'で出てきました。
                      ところでラジオ会館の若松はずいぶん小さくてさびしいですね。以前のピルはaitendoに行くときに前を通るのですが、看板はそのままで中身はやってないんですね。他にも店舗があるのでしょうか。
                      Re^9: ネオン管IN-9を使ったオーディオレベルメーター
                      daruma 2017/05/27 14:20
                      1. [3158] >ハイエンドラーメンタイマに比べればはるかに楽です
                        あれを手配線で作る人はまずいないでしょう。よく動いたものです。

                        >ラジオ会館の若松はずいぶん小さくてさびしいですね
                        ラジオ会館に移転してからは行ってません。末広町ビルも狭かったですよ。エンピツのような細長いビルで、両隣にビルがなければ倒れそうです。各階は幅3m奥行き10mくらいです。千石電商も改装中で、仮店舗は超狭いです。

                        >看板はそのままで中身はやってないんですね。先行き・・・?
                        秋葉原はもう電子部品の街ではないので経営は苦しいいかもしれません。末広町ビルは家賃も高そうですし。売上のほとんどを占めると思われる通販も電子工作人口次第ですね。今はdarumaさんのような人口の多い団塊の世代が支えていますが先細りでしょう。若松を使うのは秋月や千石やマルツにない部品の場合だけです。若松は品揃えは豊富なのですが価格が高いのが難点です(マルツと同じ)。

                        MC14553とMC14543はマルツでも扱っているようですが、「取り寄せ」のようで価格が出ていません。すでに製造中止になっているので、そのうちなくなるでしょう。
                        Re^10: ネオン管IN-9を使ったオーディオレベルメーター
                        inara1 2017/05/27 15:08
                        1. [3159] マルツのほうがなじみはあるのですが、MC14553とMC14543は価格応相談となっていますね。若松から取ります。他に若松ならではのものが何かありそうですか。バランス調整用にセンタークリック付きのVRを買おうと思っているのですが、若松には無いようです。これは、ラジオデパートのなんとかいう店とラジオセンターの2階にあったと思うので、こんど行ったときに買おうと思います。Re^11: ネオン管IN-9を使ったオーディオレベルメーター daruma 2017/05/27 15:14
                          1. [3160] 若松は品揃えが多すぎて何があるのか把握しきれていません。キットが充実しているので、探すと面白そうなのがあるかもしれません。
                            http://wakamatsu.co.jp/waka/#chga
                            ニキシー管キットはクリックしても出てきません。

                            >バランス調整用にセンタークリック付きのVR
                            ハイエンドオーディオ用は高そうですね。どこにでもある部品ではないものは、そこで買うしかないので強気の価格設定です。
                            Re^12: ネオン管IN-9を使ったオーディオレベルメーター
                            inara1 2017/05/27 15:31
                            1. [3161] ラジオ会館の若松は小さくて品ぞろえも少ないように思います。サイトを見ると、見通しがきかないほど並んでいて、探しても探し切れないですね。ホームページの作りも悪いんだと思います。

                              > >バランス調整用にセンタークリック付きのVR
                              > ハイエンドオーディオ用は高そうですね。

                              買うつもりなのは別にハイエンドの物ではなくて、ALPSの四角い小さなもので、200円とか高くても400円台で売っていたと思います。電源装置を作ったときにも、微調整VRに使いました。
                              Re^13: ネオン管IN-9を使ったオーディオレベルメーター
                              daruma 2017/05/27 15:41
                              1. [3162] 製品版の基板ができました。
                                コネクタが並ぶ側に穴1列ぶんスペースを取ったので、ゆったりとまでは行きませんが押し込んだふうではなく収めることができました。電源部を内側にずらしたぶん、NJM2360ADがソケットではゴム栓に当たりそうになったので、ソケットは使わず直付けしました。LM358はソケットで付けています。

                                IN-9をとっかえひっかえ繋いでみました。10本セットを2回と単価1,000円のを3本買って、2本はリードがもげてしまいましたが、温度計に使ってサウンドメータ試作に使って、まだ16本あります。売るほどあるって具合です。
                                タイムラグ感じないのが4本、一呼吸遅れるのが8本、数秒遅れるのが4本といったところです。何試行もするとこの結果は流動的です。
                                遅れがないのを、先日来片チャンネル遅れていたものに換装しました。気持ちよく立ち上がります。

                                単価1,000円のだと遅れないものが揃うのかなと思いつつ、在庫抱え過ぎでもう買えません。
                                Re^14: ネオン管IN-9を使ったオーディオレベルメーター
                                daruma 2017/05/30 19:01 *
                                1. [3170] ジャック取付の奥行きがきつくなくなったので、3Pミニのジャックも付けることにしました。謳い文句は多い方がと思って。

                                  高さを収めるため基板下のスペーサを低い物(4mm)にしているので、ショート予防にフィルムを貼っています。

                                  RCAジャックが足りなくて、梅澤無線は先週から「社員研修」とかで連休だし、取り付けはここでストップです。
                                  Re^15: ネオン管IN-9を使ったオーディオレベルメーター
                                  daruma 2017/06/04 12:01 *
                                  1. [3171] こちらにあるRCAジャックは15組(赤と白)です。これくらい在庫しておかないと不安です。

                                    ところで、筐体内の配線ですが、インダクタとシールド線が近いのが気になります。シールド線を1つにまとめて、添付図のように、筐体裏面に沿って引き回してどうでしょうか。そうすればインダクタとシールド線が接近しませんし、見た目もきれいになります。オーディオマニアの中には、「配線がきれい=音が良い」と思っている人もいるかもしれません。

                                    自分用のものはそこまでしませんが、人様からお金を頂く製品では見た目も良くしたいです。
                                    Re^16: ネオン管IN-9を使ったオーディオレベルメーター
                                    inara1 2017/06/04 16:38 *
                                    1. [3172] アドバイスありがとうございます。
                                      短くすることしか考えていませんでした。確かにそうですね。そのようにします。
                                      Re^17: ネオン管IN-9を使ったオーディオレベルメーター
                                      daruma 2017/06/04 18:31
                                      1. [3173] 製品版が完成しました。
                                        シールド線は結局このように引き回しました。左右チャンネルを分けています。

                                        IN-9を取り付ける前に、1本ずつチェックしました。在庫17本中発光遅れの無いものは5本でした。こうなってくると、10本安売り品ではなく単価1,000円の物を改めて買いたくなります。
                                        140Vまでかけて大丈夫のようですから、電圧を上げて遅れのあるものを試してみました。127Vまで上がりましたが、この状態だと無音時に下端が発光、オフセット調整VRでこの発光は消せたのですが、サウンドを受けて発光するようにはなりませんでした。やはり120Vで動かすのがよいようです。

                                        良品から2本を選んで付けて、めでたくスカッと立ち上がります。

                                        今日の実験は、教えていただいた「無段階サイン波」のそばで
                                        「1kHzサイン波15分」
                                        https://www.youtube.com/watch?v=7RrmBoPXdPA
                                        を見つけてそれを使って行いました。
                                        CDプレイヤーのAUXだとレベルメータのVR9時位置あたりでほどよい長さに発光するのですが、PCのヘッドホンマーク出力からだとうるさいほど鳴らしておいて14時位置くらいまで上げないと満足できる長さまでいきません。インピーダンスや出力レベルが違うからでしょうか。

                                        さて、実は、
                                        明日から十日間ほど旅行に出ます。ここへの読み書きはできる予定なのですが、作業はお預けです。帰宅前に秋葉原に寄って買い物してこられればいいなと思ってはいるのですが。

                                        追:
                                        まれに例の「下が切れて真ん中が発光」が出ることがあります。IN-9の個体差かもしれません。
                                        この件については
                                        http://mkusunoki.net?download=6035
                                        に記載が有ったのを先日気づきました。(14ページ)
                                        解決には、例の10μFをさらに大きくすればよいでしょうか。
                                        15μFが無くて22μFになりますが。
                                        > 応答速度の時定数は、R5とC3の積になります。
                                        でしたね。10μFより大きな積層セラコンはあまり無いようですし無極性電解は図体が大きいですから、抵抗値を変える方がいいですか。
                                        Re^18: ネオン管IN-9を使ったオーディオレベルメーター
                                        daruma 2017/06/07 17:26 *
                                        1. [3196] 無線仲間のお泊り会で田舎に来ています。春から秋にかけてQSOのコンテストというイベントが何回かあり、それにあわせて仲間内での集まりです。

                                          さて、ここでサウンドメーターをお披露目したのですが。PC出力を3Pミニで入れ、スルーアウトにプラグ付きスピーカーを付けると途端に表示レベルが下がります。下のほう1・2cmがせいぜいです。
                                          スピーカーのインピーダンスが8Ωくらいと思われ、そっちに吸い込まれている感じです。
                                          原因と解決策はいかがなものでしょう。
                                          スルーアウトを設けないという手で逃げましょうか。
                                          Re^19: ネオン管IN-9を使ったオーディオレベルメーター
                                          daruma 2017/07/01 14:52 *
                                          1. [3197] スピーカ端子だと音量によって信号レベルが大きく変わってしまいます。8Ωのスピーカだと電流は多くても電圧自身はあまり大きくないので、大音量でもない限りレベル不足になると思います。

                                            感度調整部分の最大増幅率を今より10倍くらい上げておけばいいのではないでしょうか。感度を下げるほうは調整つまみで可能なので。
                                            Re^20: ネオン管IN-9を使ったオーディオレベルメーター
                                            inara1 2017/07/01 15:02
                                            1. [3199] さっそくありがとうございます。
                                              出ていった先の音量もさることながら、発光レベルが小さくなってしまうことをまず回避したいのです。
                                              入力を単にパラってスルーアウトを取り出していることに無理があるでしょうか。

                                              > 感度調整部分の最大増幅率を今より10倍くらい上げておけば

                                              抵抗値を変更すればいいのでしょうか。
                                              Re^21: ネオン管IN-9を使ったオーディオレベルメーター
                                              daruma 2017/07/01 15:21
                                              1. [3200] スピーカをスルー端子に接続すると表示レベルが下がってしまうのですか。それはレベルメータの責任ではありません。

                                                PCのスピーカアンプの出力インピーダンスが大きいからだと思います。レベルメータをつながず、PCのスピーカ端子の電圧をオシロスコープで直接観察すると、スピーカをつなぐ前とつないだ後で振幅が違うはずです。

                                                スピーカアンプの出力インピーダンスが大きいのは、スピーカ端子を誤ってショートさせたときにアンプを壊さないように、保護抵抗が入っているのかもしれません。

                                                普通に使う場合は、スピーカをつないだときにしか音量確認ができないので、スピーカをつないでも音量低下するのは分かりませんが、darumaさんのレベルメータは、スピーカをつなぐとアンプの出力が低下することを発見したわけです。優秀な測定器です。
                                                Re^22: ネオン管IN-9を使ったオーディオレベルメーター
                                                inara1 2017/07/01 15:35
                                                1. [3201] サウンドメーターの振れ(発光)が小さくなるのではなく、音源(PC)の出力が落ちてしまう問題なのですね。
                                                  今日はノートパソコンを使ったのですが、はて家でこんなこと起きていただろうかと不安になったのですが、家のデスクトップのオーディオはしっかりしていたと考えられるのですね。

                                                  以前、CDプレイヤーで実験したときに、これほどではないですがスピーカー端子から入れるとレベルが下がっていたのも同じことなんですね。

                                                  ちなみに
                                                  > 感度調整部分の最大増幅率を今より10倍くらい上げておけば
                                                  はどうすればよいですか。
                                                  Re^23: ネオン管IN-9を使ったオーディオレベルメーター
                                                  daruma 2017/07/01 15:44
                                                  1. [3202] ノートPCだと、内部スピーカと外部スピーカの音量比較になるので、スピーカの能率が違いすぎると音量低下は分からないと思います。

                                                    でも、レベルメータにつないだときに表示レベル自身が小さいというのは改善したほうがいいかもしれません。

                                                    >感度調整部分の最大増幅率を今より10倍くらい上げておけばはどうすればよい
                                                    後で回路図を見てみます。この掲示板は、返信数が多いと図面を探すのが結構面倒です。図面だけ一覧形式で表示・選択できるとうれしいです。

                                                    「IN-9応答速度測定器」のほうは、一番複雑なパルス幅測定器が完成したので製作にとりかかってもいいです。基板は7セグメントLEDと一体ですが、7セグメントLEDだけ外に出してもいいです。こちらの基板では7セグメントLEDはソケットにしているので、そこから配線を引き出すことは可能です。
                                                    Re^24: ネオン管IN-9を使ったオーディオレベルメーター
                                                    inara1 2017/07/01 16:13
                                                    1. [3203] >返信数が多いと図面を探すのが結構面倒です
                                                      このスレッドでは冒頭にdarumaさんが回路図と配線図のリンク先をつけてくれていたのですぐに見つかりました。

                                                      回路図
                                                      http://mpga.jp/akizuki-fan/index.php?mode=image&file=3059.jpg
                                                      のR3を100kΩから10kΩに変更すれば増幅率が10倍になります。6pinにつながっている抵抗は2つありますが、LM358の6pin-GND間の抵抗のほうです。

                                                      増幅率を大きくすると、入力なしのときでもIN-9が少し光るかもしれませんが、そのときは配線図
                                                      http://mpga.jp/akizuki-fan/index.php?mode=image&file=3070.jpg
                                                      のoffset調整ボリュームの出番です。
                                                      Re^25: ネオン管IN-9を使ったオーディオレベルメーター
                                                      inara1 2017/07/01 16:25
                                                    2. [3204] > 後で回路図を見てみます。この掲示板は、返信数が多いと図面を探すのが結構面倒です。図面だけ一覧形式で表示・選択できるとうれしいです。
                                                      ご面倒をおかけします。
                                                      最上欄に、[トピック表示]と並んで[画像一覧]がありますが、これはどうでしょう。

                                                      応答速度測定器、とりかかりたいと思います。
                                                      Re^25: ネオン管IN-9を使ったオーディオレベルメーター
                                                      daruma 2017/07/01 16:27
                                                      1. [3205] >最上欄に、[トピック表示]と並んで[画像一覧]があります
                                                        気が付きませんでした。リニューアルしたときからあったのですか?
                                                        Re^26: ネオン管IN-9を使ったオーディオレベルメーター
                                                        inara1 2017/07/01 16:29
                                                        1. [3207] いつからでしょうね。Re^27: ネオン管IN-9を使ったオーディオレベルメーター daruma 2017/07/01 19:38
                                                          1. [3208] darumaさんが外出中に地震がありました。札幌付近が震源の地震は珍しいですがシャックは大丈夫ですか。。Re^28: ネオン管IN-9を使ったオーディオレベルメーター inara1 2017/07/02 08:24 *
                                                            1. [3209] 合宿で寝ていたら「ゴーッ」と山鳴りのような音がしたのでびっくりしましたが、その一発たけで余震はありませんでした。シャックがどうなっているか帰ってみるまでわかりません。Re^29: ネオン管IN-9を使ったオーディオレベルメーター daruma 2017/07/02 08:37
                                                              1. [3210] > 合宿で寝ていたら「ゴーッ」と山鳴りのような音
                                                                近くだったのですか。信州あたりかと思ってました。

                                                                9:20に余震がありました。震源は昨夜と同じ、安平町のアロハゴルフ場のようです。
                                                                Re^30: ネオン管IN-9を使ったオーディオレベルメーター
                                                                inara1 2017/07/02 09:45 *
                                                                1. [3211] 帰宅しました。昨日いたのは当別町というところです。震源地は全国尺度では近くですが、車で3時間くらい離れています。ときどき行く温泉があります。Re^31: ネオン管IN-9を使ったオーディオレベルメーター daruma 2017/07/02 20:56
                                                                  1. [3271] ご無沙汰しました。
                                                                    この土日も無線のコンテストで、田舎合宿に来ています。
                                                                    PCのヘッドフォン出力から音を取ってレベルメーターのスルーアウトにミニスピーカーを繋ぐと振れが小さくなる件、R3を100KΩから10KΩに変更してみました。実は、この抵抗をとinara1さんが書いてくださったのを私見落としていたのです。「まだかなあ」と思っていて、さかのぼって見たらいただいていました。すみません。

                                                                    結果、ばっちりオーケーです。
                                                                    ありがとうございました。

                                                                    『IN-9応答時間測定器』のほうは、センサを繋ぐあたり今後の展開はどのようになりましょうか。
                                                                    Re^32: ネオン管IN-9を使ったオーディオレベルメーター
                                                                    daruma 2017/08/05 20:44
                                                                    1. [3272] >『IN-9応答時間測定器』のほうは、センサを繋ぐあたり今後の展開
                                                                      すでに動作確認していますが、暑さのため、配線図を描くのが遅延しています。今度の金曜から夏休みなので配線図の完成を目指します。

                                                                      今年は、梅雨がないはずの北海道は雨が多かったのではないでしょうか。
                                                                      Re^33: ネオン管IN-9を使ったオーディオレベルメーター
                                                                      inara1 2017/08/06 07:06
                                                                      1. [3273] ありがとうございます。ご面倒をおかけします。

                                                                        この夏の北海道は雨が続いたり降ると大雨だったりですが、晴れればほどほどの暑さで気持ちよく過ごせます。
                                                                        夜になると肌寒いのはいつものことで、昨夜の焼き肉は「寒いから入ろう」と終了しました。
                                                                        Re^34: ネオン管IN-9を使ったオーディオレベルメーター
                                                                        daruma 2017/08/06 07:34
                                                                        1. [3274] daramaさんが現在愛用している「出力電圧0V〜20VのDC電源」の投稿がJunk Boxにあります(図は見れません)。
                                                                          http://junkbox.info/akizuki-fan/bbsold/321.html

                                                                          これは電流制限機能がないので、先日のパルス幅測定回路では、疑似電流制限回路を後付けしましたが、この電源を改造して、定電流モードにもなるCVCC電源にしようと考えています。この電源は自家用にするつもりですが、darumaさんも時間があったら改造してみてはいかがでしょうか。

                                                                          過去の画像を探して、darumaさんの電源の写真とその配線図と回路図をまとめました。この電源はその後、ファンを付けたりして改造したのでしたっけ?
                                                                          Re^35: ネオン管IN-9を使ったオーディオレベルメーター
                                                                          inara1 2017/08/06 08:32 *
                                                                          1. [3275] darumaさんの最新の電源はデジタル表示のほうでしたね。過去ログ
                                                                            http://akizuki-fan.bbs.fc2.com/
                                                                            の一番下にある「次へ」ボタンを3回押して2014年6月に戻ると、当時の投稿がありました。内部はなかなか複雑ですね。
                                                                            Re^36: ネオン管IN-9を使ったオーディオレベルメーター
                                                                            inara1 2017/08/06 08:41
                                                                            1. [3276] 工作机で常用しているのはデジタル表示の2号機
                                                                              http://darumakobo.wixsite.com/work/powersupply
                                                                              です。
                                                                              回路図はこれだと思います。1号機と同じかな?

                                                                              1号機の方は、お泊り会のときなどに持ち出して使っています。どちらも現役です。

                                                                              電流制限機能付き、いいですね。ただ、改造だと調整用に追加するVRがパネルに入りきらないと思うので・・・、新しいパネルを作ろうか、あるいはいっそ3号機を作ろうか・・・。
                                                                              Re^37: ネオン管IN-9を使ったオーディオレベルメーター
                                                                              daruma 2017/08/07 01:22 *
                                                                              1. [3277] 脱線ですが・・・。

                                                                                少年少女発明クラブの製作物に「流れるLED」を付けたいというリクエストがあって、子どもの工作に親が手を出すみたいなんですが、引き受けました。
                                                                                以前、555と4017でツリーイルミネーションを作りましたよね。あれは4017の出力をダイオードOR(というのだと教えていただきました)で組み合わせて何パタンか周期の違う点滅にしました。
                                                                                今回は10個のLEDが順に光ればいいのでそういった工夫は無用なのですが、10個が2組同時に流れるようにということで、トランジスタをかませるほうがいいのだろうと思いつつ、あまり大げさにしたくなくて、4017の各出力ポートに2個ずつのLEDを並列に付けました。乾電池4本なので、2個直列はきついので。
                                                                                ブレッドボードで実験すると、高輝度青を5mAで光らせて2組、4017のポートに直接つないで大丈夫だったのでその線で作っているところです。
                                                                                まだ完成していないのですが、難なく成功の予定です。

                                                                                先ほどOKWaveを見たら、まさに「555と4017で・・・」の質問にinara1さん回答されていますね。あまりにも偶然なタイミングでした。
                                                                                Re^38: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                daruma 2017/08/11 00:59
                                                                                1. [3278] 脱線の続きです。

                                                                                  http://mpga.jp/akizuki-fan/index.php?mode=article&id=531&page=17
                                                                                  では、クリスマスツリーということで点滅周期がゆっくりだったので、「流れるように」とカットアンドトライで33kΩを2個とも1kΩに、変化幅が遅い方に広すぎるので1MΩVRを20kΩに変更しました。
                                                                                  LEDは両列1個ずつしか点灯しないので、電流制限抵抗は列に1個だけです。

                                                                                  写真後方にあるのが子どもの製作物で、螺旋になったところが車輪の回転とともに回り、乗っているピンポン玉が前へ送られます。サケの卵が孵化する場面ということになっています。ここが目立たないので、LEDを車体両側面下側にLEDに取り付けます。
                                                                                  Re^39: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                  daruma 2017/08/11 20:07 *
                                                                                  1. [3279] >先ほどOKWaveを見たら
                                                                                    OKWaveは滅多に回答しないのですが、たまたま回答した。
                                                                                    https://okwave.jp/qa/q9361379.html
                                                                                    darumaさんに紹介しようかと思っていましたが手間が省けました。10個のLEDを円周上に置いてグルグル回るだけよりもこちらのほうが面白そうです。インテリアとして作ってみてはいかがでしょうか

                                                                                    >写真後方にあるのが子どもの製作物
                                                                                    タミヤのユニバーサルアームとプレートを使っていますね。

                                                                                    脱線はいいですね。こちらも脱線したいのですが、昨日は例のIN-9応答時間測定回路の配線図という宿題を片付けていました。配線図はできましたがまだ部品を実装していません。来週いっぱい夏休みです。
                                                                                    Re^40: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                    inara1 2017/08/12 04:39
                                                                                    1. [3281] > インテリアとして作ってみてはいかがでしょうか
                                                                                      そうですね。LEDの点滅ものは見せ方しだいで面白いものがつくれそうです。

                                                                                      > タミヤのユニバーサルアームとプレートを使っていますね。
                                                                                      そうです。もっぱら材料はその類です。

                                                                                      応答時間測定器、ご面倒をおかけします。
                                                                                      私も脱線宿題を早く片付けてそちらにとりかかりたいです。
                                                                                      Re^41: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                      daruma 2017/08/12 09:05
                                                                                      1. [3573] 古いスレッドの再浮上ですみません。

                                                                                        動画を載せる実験です。LED Cubeの前にこちらでやってみました。

                                                                                        ご覧のようにアニメーションGIFは画像として貼れました。サムネイル表示では動きませんが、それをクリックして画像だけ表示にすると動きます。
                                                                                        ただ、サイズ制限があって、ここの「利用方法」には5,000kb以下とありますが、2MBを超えるとだめなようです。解像度やフレームレートにもよりますが、極小さなものでなければなりません。この画像は、3秒をループにしたものです。

                                                                                        やはりYouTube動画を貼りたいところですが、「利用方法」にHTMLタグは使えませんとありますから、埋め込むことはできないんですね。

                                                                                        こんなふうに
                                                                                        https://youtu.be/c2UXhEw6Fa0
                                                                                        とリンクを張ることになります。

                                                                                        現在準備中ですが、daruma工房のサイトを置いているWixではこのあたりの自由度が高いようですから、daruma工房に掲載してからそこへのリンクを張るのがよさそうです。
                                                                                        Re^42: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                        daruma 2017/12/17 11:59 *
                                                                                        1. [3577] daruma工房のサイトを更新しました。「ネオン管IN-9を使ったオーディオレベルメーター」のページに動画を貼ってあります。

                                                                                          http://darumakobo.wixsite.com/work

                                                                                          本当は当該ページへのリンクを張ればいいのですが、なぜか個々のコンテンツのURLがひとつ前のコンテンツの名前を引きずっています。既存ページの複製を作って中身を変えて新ページ名でという作り方をしているので、そのせいのようです。Wixのバグかもしれません。ま、動くのでそのままということに。
                                                                                          そんなわけで、サウンドメーターのページURLが温度計っぽいというのもかっこ悪いので、トップページへのリンクを張っておきます。
                                                                                          Re^43: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                          daruma 2017/12/17 16:08
                                                                                          1. [3579] YouTube見ました。
                                                                                            なぜ動画タイトルが「2017 12 16 14 24 02」なのでしょうか。アレ?音声がないと思ったのですが、よく聞くとdarumaさんの鼻息が聞こえます。

                                                                                            以前、tsujiさんからオーディオアナライザ
                                                                                            http://mpga.jp/akizuki-fan/index.php?mode=thread&id=1841&page=4
                                                                                            の質問があって、その完成品がYouTubeに上がっています。
                                                                                            https://www.youtube.com/watch?v=4HXMuUbff8k
                                                                                            これは音楽付きです。
                                                                                            Re^44: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                            inara1 2017/12/17 17:41
                                                                                            1. [3580] iPhoneで動画を撮ってYouTubeにアップするということを初めてしました。あきばお〜の店頭で見かけて買っておいた六百円ほどの三脚が役に立ちました。

                                                                                              音楽は著作権の問題に抵触するかなと思って無音にしたのですが、ほんとだ。室内音と息が聞こえますね。昨日YouTubeへのリンクを直接張ったものはムービーメーカーで音声を取り除いたのですが、今日daruma工房に揚げたファイルは撮ったままのものでした。
                                                                                              あ、もしや日付云々はYouTube直接リンクのほうですか。それは昨日狭い作業机でホリゾント幕(ランチョンマット)をたらして撮ったものです。daruma工房にあるのは今日テーブルの上で撮ったものです。

                                                                                              実は、今日撮ったほうはたまたま再生していたYouTube音がモノラル音源だったようです。左右きっちりそろって振れてますよね。ちょっとくらい違いがないとステレオらしくないので、あとで差し替えようと思います。

                                                                                              tsujiさんのオーディオアナライザは当時ここでもお披露目ありましたよね。私もYouTube使ってみたいなと思ったものでした
                                                                                              Re^45: ネオン管IN-9を使ったオーディオレベルメーター
                                                                                              daruma 2017/12/17 19:07
  1. [3574] 知恵袋の回答の補足にここを使わせてください。
    nチャネルのMOS-FETの2N7000を使ったソース接地回路の質問があって回答しましたが、画像が見えにくいようなのでこに貼ります。左上の画像クリックすると拡大表示されます。
    2N7000を使ったソース接地回路
    inara1 2017/12/17 15:23 *
    1. [3575] 次の補足資料です。Re: 2N7000を使ったソース接地回路 inara1 2017/12/17 15:25 *
  1. [3286] 「ネオン管を使ったオーディオレベルメーター」スレに脱線で書いた「LED Cube」、私も作ろうと思っていたら、inara1さん、OKWaveの回答続きで見直した回路を提示なさいましたね。
    それで、スレッドを立てさせてもらうことにしました。
    私が貼るのもなんなので、回路図をここへお出しいただけますか。

    > タイマIC(NE555)はLMC555に替えて、
    とのことですが、私はどっちも同じものなんだと思っておりました。なにか違う点があるのですか?
    LED Cube
    daruma 2017/08/14 12:09
    1. [3290] 修正した回路図を提示します。

      LMC555のほうが消費電流が小さく、最低動作電圧も低いのですが、LED Cubeのような用途ではどちらでもいいです。

      NE555の内部はバイポーラトランジスタ、LMC555はMOS-FET(CMOS)で作られています。555はいろいろなメーカから互換品が出ています。
      http://toragi.cqpub.co.jp/Portals/0/backnumber/2011/01/furoku/p002.pdf

      バイポーラかCMOSかは型番で区別できますが、回路初心者には難しいかもしれません。

      今はなきナショナルセミコンダクタ社の型番の付け方は分かりやすいです。LMならバイポーラ、LMCならCMOSです。よく使うLM358はバイポーラトランジスタを使ったオペアンプ、LMC6482はCMOSオペアンプです。

      オーディオマニアの間で有名なハイブリッドオペアンプの型番はLH0032ですが、Hがハイブリッドの意味です。冒頭のLはリニアIC(デジタルでないアナログIC)の意味です。LMのMはモノリシック(チップ部品を並べたハイブリッド構成でなく、1つのシリコン基板に集積した)という意味です。
      Re: LED Cube
      inara1 2017/08/15 04:55 *
      1. [3291] 以前、motomuraさんの織機用の回路でも使いましたが、4017を複数使うと、10以上の周期のリングカウンタが作れます。

        添付図は周期25の例ですが、2段目の部分を繰り返せば、さらに大きな周期のカウンタも作れます。周期25というのは、5×5のLED Cubeに相当しますが、縦が5段だと合計125個のLEDが必要となるので作るのが大変そうです。
        Re^2: LED Cube
        inara1 2017/08/15 08:15 *
        1. [3292] 上の回路では4017のCout(Carry Out)端子は使っていませんが、Carry Out端子には、15pinのクロック信号の1/10の周波数の信号が出てきます。この信号を次段の4017のクロックに入力すると、次段の出力は10クロックおきに出力が変わるようになるので、添付図のように結線すると4017を2個使うだけで60進カウンタを作れます(上の回路のように、クロック信号が入るたびに出力が右に1つずつ進むようなカウンタだと、60進カウンタを作るには7個の4017が必要です)。1段目のq0〜q9の出力を数字の0〜9を割り当てて、2段目のq00〜q50に0〜5の数字を割り当てると、00〜59の表示(59の次は00)ができます。

          ニキシー管の数字表示器は、10本の信号線に対して0〜9の数字が対応しているので、この回路を使えばニキシー管時計が作れます。秒も分も60進数なので、4017を4個使えば00分00秒〜59分59秒の表示が可能になります。4017というICは相当古いですが、当初はニキシー管のように、セグメントごとに数字を表示させるもののために開発されたのかもしれません。
          Re^3: LED Cube
          inara1 2017/08/15 09:09 *
          1. [3293] 555各種はメーカーが違うだけで同じものと思っていました。どれでもいい場合のほかにこれでなければならないという場合もあるのですね。部品箱を見たらLMCばかりでした。NEも買っておこうと思います。

            4017を複数使うのは、OUT_10を次の4017に入れれば11〜・・・というように連続させたり、n進で桁上がりをつくったりできるというわけですね。

            ニキシー管時計はいつかはと思いながらなかなか着手できません。
            Re^4: LED Cube
            daruma 2017/08/15 09:59
            1. [3350] 配線図が描けました。なかなかぎっしりです。ジャンパがたくさんありますが、空中配線は無しにできました。

              4017は、TC4017BPが1個だけしかないので発注しようと思いますが、現在秋月にはCD74HC4017しか無いようです。これでもいいですか。 TC4017BPをよそで探したほうがいいですか。

              A,B,Cの2SC1815のエミッタに入れる抵抗は150〜2.2kΩとなっていますが、これはどのように決めたらいいですか。その範囲ならいいということでしょうか。

              ※ この図には誤りがあるので、
              http://mpga.jp/akizuki-fan/index.php?mode=article&id=3353&page=1
              に添付の図を修正してあります。
              Re^5: LED Cube
              daruma 2017/09/03 15:04 *
              1. [3351] >配線図が描けました
                合宿の成果ですね。

                >ジャンパがたくさんあります
                4017のピン配置は順番になっていないのでジャンパ線だらけになります。なぜ順番になっていないのでしょうか。Siチップ内部の配線でどうにでもできるはずですが。

                >秋月にはCD74HC4017しか無いようです。これでもいいですか
                CD74HC4017だと、電源電圧の上限は6Vになります。TC4017(HCがついていないとき)なら電源電圧の上限は18Vです。
                74HC4017 http://akizukidenshi.com/catalog/g/gI-09416/
                TC4017 http://www.kansai-event.com/kinomayoi/PDF/4017B.pdf

                > A,B,Cの2SC1815のエミッタに入れる抵抗
                このLED Cubeは同時に1個のLEDしか光らないので、どのLEDが光っていてもその抵抗に電流が流れます。したがってその抵抗値によって全てのLEDの明るさが変わります。その部分を150Ω+2kΩVRなどにすれば、明るさを調節できます。パネル取り付け型のVRにして外部から調整できるようにすれば、部屋の明るさに応じて調整できて便利かもしれません。

                そのLED Cubeは、発光部の配線をいかに見えないようにするかが肝だと思います。針金などで枠を作るのではなく、アクリル樹脂などの透明なもので梁や床面を作って、配線もできるだけ目立たないように(できれば透明)するとLEDが浮いて見えるので幻想的になりそうです。
                Re^6: LED Cube
                inara1 2017/09/03 15:36
                1. [3352] ピンの並びがゴチャゴチャでなければいいのにとぶつぶつ言いながら描きました。内部配線の都合なんだろなと思いましたが、そこはどうにでもなるものなんですか。

                  TC4017を探します。地元ショップにあるかもしれません。無ければ千石ででも。

                  > > A,B,Cの2SC1815のエミッタに入れる抵抗
                  150Ω+2kΩVRにします。

                  > そのLED Cubeは、発光部の配線をいかに見えないようにするかが肝だ
                  そのことも考えていました。レジンに封入するというのはどうでしょう。配線はごく細い単線にして。発熱はさほどでもないですよね。
                  逆にステンレス線などで整然と美しい格子を組むとか。

                  今日はVRを使うところまで配線図を固めて、それから応答時間測定器のほうに戻ります。
                  Re^7: LED Cube
                  daruma 2017/09/03 17:02
                  1. [3353] 電源スイッチとVRを付けました。

                    ※配線図にあやまりがあったので、2017/09/17に差し替えました。
                    ※VRにいくヘッダピンの位置向きを変更しました。
                    Re^8: LED Cube
                    daruma 2017/09/03 17:15 *
                  2. [3354] >そこはどうにでもなるものなんですか
                    仕事でICチップの配線も描いています。仕事でも家でも配線作業です。仕事の配線は0.01μmから1μm幅です。

                    汎用ロジックICは幅10μmくらいのアルミ配線でトランジスタをつないで、最終的にチップ外周の電極パッドから、金線(Gold Wire)でパッケージの端子と接続しています。

                    よく使う74HC00の内部はこんな感じです。
                    https://zeptobars.com/en/read/NXP-74AHC00

                    チップ外周近くにある8角形や四角形が電極パッドです(直径は100μmくらい)。IC外部の端子配列は、このパッドの配列に近くなります(金線を放射状に出して接続するので)。パッドに出す信号線はチップ内部の配線次第でどうにでもなります。基板の配線と同じです。

                    >レジンに封入するというのはどうでしょう。配線はごく細い単線にして。発熱はさほどでもないですよね。
                    配線の発熱は気にしなくていいです。直径0.1mmくらいの単線が現実的ですかね。

                    >逆にステンレス線などで整然と美しい格子を組むとか
                    いろいろ工夫の余地がありそうです。
                    Re^8: LED Cube
                    inara1 2017/09/03 17:53
                    1. [3355] 上で紹介した74AHCのチップとIC端子配列の関係は添付図のようになります。Vdd(14pin)が電源、Vss(7pin)がGNDですが、電極パッドの配列と端子配列が似ていることが分かります。VddとVssの配線が太くなっているのは配線インピーダンスを下げるためです。Re^9: LED Cube inara1 2017/09/03 18:26 *
                    2. [3356] > 仕事でも家でも配線作業です

                      お家では肉眼手仕事の世界ですね。

                      >(金線を放射状に出して接続するので)

                      放射状に引き出すので交差できないと思っていました。それ以前のところで「どうにでもなる」のですね。

                      > いろいろ工夫の余地がありそうです。

                      そうですね。回路が動いてからの道のりが長そうです。
                      Re^9: LED Cube
                      daruma 2017/09/03 18:33
                      1. [3359] TC4017BP、地元ショップ梅澤無線にありました。棚に8個、買い占めてきました。
                        私みたいな人が店のおじさんに「ほかの店は・・」と訊いて、「○○はパーツ扱わなくなったし、○○は無くなったし、西島無線もご主人亡くなって閉めたし・・」と話していました。ここも売り場の配置が変わって品数が減ったような気がします。
                        Re^10: LED Cube
                        daruma 2017/09/04 13:13
                        1. [3366] > TC4017BP、地元ショップ梅澤無線にありました。棚に8個、買い占めてきました。
                          >

                          秋月と比較すると少々高いですが、かなりの在庫がマルツにありますよ。
                          https://www.marutsu.co.jp/pc/i/35914/

                          以前、バスケ用の24秒カウンタの製作に使いました。
                          この時もかなり捜しましたが秋月にも千石にも在庫がありませんでした。
                          私の手元にも20個ほどあります。

                          それともしキット化のためなどでSMD無しで2層までの基板を起こすようなら、業者用のアートワーク図を描くくらいならEagleで簡単にできるので言ってください。
                          Re^11: LED Cube
                          sealockman 2017/09/06 16:38
                          1. [3367] sealockmanさんお久しぶりです。

                            TC4017BP、探せばあるようですね。マルツは130円ですか。やや高めですね。私が買ったのは118円でした。

                            基板の件、ありがとうございます。とりあえずプロトタイプはユニバーサル基板で作りますが、もしいくつも作るとなってもアイロン転写で自家製がせいぜいかなと思います。多くても5〜6枚でしょうし。基板外注も安くなったとは聞きますがある程度の枚数をつくらないと単価が下がらないですよね。

                            LEDマジックアイのときは、Pcbeで描いたものをレーザプリンタで出力してアイロンで転写してエッチングという家内工業でやりました。
                            Eagleはとっつきやすいですか?
                            Re^12: LED Cube
                            daruma 2017/09/06 18:30
                            1. [3368] > Eagleはとっつきやすいですか?

                              「慣れ」だと思います。

                              以前ご説明した記憶がありますが、機能的にはDesignSparkPCBとほぼ同等ですが、LTSpiceとの連携や、部品ライブラリの豊富さからEagleの方が人気があるようです。

                               重宝なのは基板上の部品の配置が決まれば、配線は自動配線機能「AUTO ROUTER」がやってくれることです。
                              基板の材質や放熱、絶縁距離などから配線の太さや間隔、PADの大きさ、多層基板でのVIAの大きさなどをデザインルールで指定するだけでアートワーク図まで仕上げてくれます。(サンプル図参照)

                              GND付きのネジ固定用穴がドリル径0.1mmごとに用意されていることや
                              入手可能な殆どのメーカーのデバイスやコネクタなどが網羅されていて
                              申し分ないですね。
                              Re^13: LED Cube
                              sealockman 2017/09/06 19:44 *
                              1. [3371] 本格活用にはEagleは優れものなんですね。こんど勉強してみようと思います。Re^14: LED Cube daruma 2017/09/07 05:04
                                1. [3374] 配線の見えないLED Cubeというのは見当たりません(全部見たわけではありません)。
                                  https://www.google.co.jp/search?q=%22LED+cube%22&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwil576o4pbWAhWIfbwKHUMPBwcQsAQIJQ&biw=1346&bih=615#imgrc=_&spf=1504914214879

                                  レジンに入れても配線は見えますし、レジンに入れるとメンテナンスできなくなります。
                                  Re^15: LED Cube
                                  inara1 2017/09/09 08:51
                                  1. [3383] 製作にとりかかったら、配線図に不都合な部分があったので、
                                    http://mpga.jp/akizuki-fan/index.php?mode=article&id=3353&page=1
                                    の図を差し替えました。
                                    トランジスタのコレクタから出すジャンパ線が足と同じ穴に入るようになっていました。

                                    LEDの造形を考えているのですが、結局はリードを直線的に整えてきれいにハンダ付けし立方体のフォルムを正確に出すのが現実的だと思います。これが乱れていると作り方の工夫以前に美しくないですから。

                                    若松のホームページにこんなLEDがあるので、使うかどうかは別として取り寄せてみました。こんなふうに足が出ていると直交の交点にLEDが来る形を作るのに向いているかなと思って。

                                    古い製品のようで、30mAくらい流さないと明るく光りません。
                                    赤とオレンジと緑があります。

                                    ところで、回路基板の高さを低く抑えたいので、三端子レギュレータを78M05Fにしようかと思うのですが、LEDは同時には光らないから500mAあれば足りますよね。78L05Sにまでしなくても高さは同じくらいですし。
                                    Re^16: LED Cube
                                    daruma 2017/09/17 09:24 *
                                    1. [3385] こちらも更新されていたのに気づきませんでした。

                                      >結局はリードを直線的に整えてきれいにハンダ付けし立方体のフォルムを正確に出すのが現実的
                                      そうですね。透明配線は誰も実現していません。

                                      >古い製品のようで、30mAくらい流さないと明るく光りません
                                      LEDは高輝度とそうでないものの2種類あります。発光材料が違います。古い売れ残りを高値で売っていませんか。

                                      >LEDは同時には光らないから500mAあれば足りますよね
                                      最大消費電流が50mAとしても、電源電圧が15Vのときの発熱量は0.5Wですが、TA78M05Fの最大発熱量(絶対最大定格)は1Wなので問題ないです。78L05の最大発熱量は0.5Wなので78L05は使わないほうがいいです。以前、何かの作製でLEDを追加したとき、78L05が発熱したことがありましたね。
                                      Re^17: LED Cube
                                      inara1 2017/09/17 14:19
                                      1. [3386] > そうですね。透明配線は誰も実現していません。
                                        極細い線で繋いでレジンにという案は、封入する前の状態で立方体のフォルムを保てないのでボツです。

                                        > 古い売れ残りを高値で売っていませんか。

                                        高くはないです。50個500円ほどです。若松のサイトに何年も前から出ていて、気になってはいました。かつてはこうした変わった形のLEDが見られたように思いますが、いまは片側に足が出たタイプ(なんというのでしょう)のものばかりになってこうした形のものは他で見かけません。

                                        > 何かの作製でLEDを追加したとき、78L05が発熱したことがありましたね。

                                        ありましたね。78M05Fで行きます。
                                        Re^18: LED Cube
                                        daruma 2017/09/17 14:40
                                        1. [3387] >50個500円ほどです。
                                          高いです。1個1円もしないはずです。そういう特殊なリード形状のものは汎用性がないので相当安く仕入れているはずです。昔のLEDは発光材料が今のとは違っていて、光度が数十ミリカンデラしかなく、20年くらい前から生産されていないので20年モノの在庫品でしょう。LEDチカチカブームに便乗していると思います。
                                          Re^19: LED Cube
                                          inara1 2017/09/17 14:56
                                          1. [3388] > >50個500円ほどです。
                                            あ、間違えました。100個500円です。
                                            http://www.wakamatsu-net.com/cgibin/biz/pageshousai.cgi?code=19090311&CATE=1909
                                            それでも高いですか。
                                            > 20年モノの在庫品でしょう。
                                            きっとそうですね。以前は見かけたのにこのごろ見ないような形のものが他にもあるようです。
                                            Re^20: LED Cube
                                            daruma 2017/09/17 15:21
                                            1. [3389] 単価5円なら許せる範囲です。在庫数が29680個もあるのですか。でも全部買い占めても14万8400円ですね。

                                              まぶしいほど光らせる必要がないけど大量に使う場合はこういう格安LEDでも需要はあるのかもしれません

                                              1個5円というのは我々の世代では駄菓子屋の世界です。グッピーラムネが確か5円、パッケージがサイコロになったキャラメルが10円、ベビーラーメン(ベビースターではない)が20円くらいだった記憶があります。ポンカン飴、都コンブ、のしいか、麩菓子、粉ジュースというのがありましたが今でもあるのでしょうか。

                                              20年くらい前まで、勤務先で半導体レーザやLEDの開発をやっていました。残念ながら製品にはなりませんでしたが。
                                              Re^21: LED Cube
                                              inara1 2017/09/17 16:37
                                              1. [3390] 三角形のニッキ、ビニールでくるんだ丸い棒マンボーったかな?、喉が詰まりそうなおっきな飴、口の中が赤や緑に染まる味付きの紙・・・、どれも5円だったような。ベビーラーメンはまだ登場していなかったのが世代の差ですね。

                                                > 20年くらい前まで、勤務先で半導体レーザやLEDの開発をやっていました。
                                                以前おっしゃっていた、ノーベル賞の中村さんと学会発表競い合ってた頃ですね。

                                                半固定VR2個が銘柄そろわずちぐはぐで、休み明けまで完成できません。そういうとここだわってしまいます。
                                                Re^22: LED Cube
                                                daruma 2017/09/18 09:51
                                                1. [3391] ちょうど今頃、台風の中心が札幌付近にありますが大丈夫ですか。
                                                  こちらは台風一過の猛暑で、海老名アメダスの最高温度は34℃でした。
                                                  Re^23: LED Cube
                                                  inara1 2017/09/18 14:16
                                                  1. [3392] テレビはずうっと台風情報をやっていますが、我が家のあたりは雨こそ一時降っていましたがいつのまにか地図の上では通り過ぎたことになっていました。そちらは暑いんですね。北海道は台風が来ても来なくてももう秋です。

                                                    ここまでできました。あとは半固定VR待ちです。
                                                    高さを抑えるのに、電解コンは低背のものを使いました。無駄にオーディオ用の金ピカですが。ヘッダピンも横出しです。
                                                    上に載るのはキューブだから、基板の狭い側にピンを出して全体が正方形に収まるように考えています。その関係で、VRに行くピンの位置向きを変えました。(サンハヤトの基板は品番記載のためこの列一部ランドが無いんです)
                                                    http://mpga.jp/akizuki-fan/index.php?mode=image&file=3353.jpg

                                                    回路試運転のLED群をブレッドボードに組むのもたいへんそうです。いっそキューブ試作版をいきなり作ろうかとも・・・。
                                                    Re^24: LED Cube
                                                    daruma 2017/09/18 16:04 *
                                                    1. [3398] ネタ並走であっちこっちやっています。
                                                      LED群のブレッドボード配線を描いてみました。こんな感じでどうでしょう。
                                                      Re^25: LED Cube
                                                      daruma 2017/09/20 21:03 *
                                                      1. [3463] すったもんだがありましたが、うまく動きました。
                                                        写真を軽くするPCを持ってきていないので、写真は帰宅してから載せます。
                                                        すったもんだというのは、
                                                        ヘッダピンからブレッドボードに繋ぐのに、できあいの片側オス片側メスのケーブルを使ったのですが、これが12本中3本導通不良でした。散々悩んだあげく判明しました。それが解決したら、1本だけ点かず、これはハンダ不良でした。毎度ながらのお粗末。
                                                        Re^26: LED Cube
                                                        daruma 2017/10/08 07:44
                                                        1. [3464] 動画を揚げる方法をあとで勉強しようと思いますが、順調に動いています。ネットでいろいろ見た中には点灯パタンが変わって行くものもありましたが、あれはPICで作ったものなんですかね。
                                                          半固定VRの調整で微妙なずれで変わって行くようにできるかなと思ったのですが、そうはいかないようです。

                                                          そこで、VRを外出しにしてユーザが調整による変化を楽しめるようにと考えたんですが、それよりもセンサで周囲の変化に応じるようにするのはどうでしょう。半固定VRをそのままCdSに置き換えるのが安直ですが、CdSというのも今ふうじゃないので、以前「暗くなったらパッと点く」で使った照度センサはどうでしょう。
                                                          温度では変化が無さすぎるし、音だと目まぐるしく変化してパタン変化に見えないでしょうし、明るさだと室内の変化に対応するほか手をかざしたりして変化させることもできて楽しいと思います。
                                                          Re^27: LED Cube
                                                          daruma 2017/10/08 09:36
                                                          1. [3477] LED Cube試作1号機はこんな姿です。LED群はテスト用なのでブレッドボードに平面配置です。一本ごとのケーブルを使っていますが、できあがり時には5ピンソケットを1ピンおきにして使います。
                                                            テンポ調整を外出しVRにしてもセンサにしても、ヘッダピンを外周部に立てる必要があるので、配線図を若干変えようと思います。
                                                            Re^28: LED Cube
                                                            daruma 2017/10/10 16:58 *
                                                            1. [3480] 試作2号機はこのようにしようと思います。
                                                              以前使った可視光センサNJL7502LはCdSと置き換えて使えるとのことでしたから、単純に「固定抵抗+VR」を「固定抵抗+NJL7502L」に置き換えて固定抵抗の値をカットアンドトライすることでどうでしょう。安直すぎますか?
                                                              Re^29: LED Cube
                                                              daruma 2017/10/10 18:29 *
                                                              1. [3482] 3×3×3個のLEDを並べるのに、いつもの基板が入る正方形の敷地では広すぎます。LED間があまり離れていると群として光るように見えないと思いますから。

                                                                そこで、ぎゅうぎゅう詰め虫が騒いで、こんなふうにしてみました。
                                                                秋月の45mm角正方形基板は穴数が足りなくて無理でした。50mm角に切った基板です。

                                                                ※ 下の試作2号機のあと少し修正を加えたので、図を差し替えました。
                                                                Re^30: LED Cube
                                                                daruma 2017/10/18 16:10 *
                                                                1. [3483] 製作は一発完動でした。
                                                                  ※上の図を差し替える前の製作ですから、上図とは少し違います。

                                                                  テンポ変化は、[固定抵抗−VR−照度センサ]を直列にして実験してみます。固定抵抗の適切値を見つけてからと、基板上はゼロΩ抵抗がわりのジャンパ線にしてあります。

                                                                  図で右側の方は1kΩ+1MΩVRになっていますから、CdS(最大1MΩ程度)と置き換えられるNJL7502Lなら行けるのではと予想していますが、左側のVは10kΩ+50kΩVRですから、NJL7502Lの抵抗値相当では大きすぎるかもしれません。VRと並列に入れてはどうかなと思ったりしています。

                                                                  札幌も山寄りの郊外では雪が降ったとTVで行っています。我が家のあたりはまだですが、そう遠いことではないでしょう。
                                                                  Re^31: LED Cube
                                                                  daruma 2017/10/18 16:25 *
                                                                  1. [3484] NJL7502Lを1MΩVRに付け加えても、VRを外して置き換えても、ダメです。点灯が移動しない状態のままで、明るくしても暗くしても変わりません。NJL7502Lの極性はどうなんでしょう、向きを変えても同じです。

                                                                    最大1MΩのCdSにしてみました。こちらは明るさで変化します。変化幅はあまり大きくありません。
                                                                    Re^32: LED Cube
                                                                    daruma 2017/10/18 17:12
                                                                    1. [3485] NJL7502Lに流れる電流が微小過ぎて繋がっていないと同然ということでしょうか。
                                                                      それで、VRと直列にするとOFFのまま、VRと並列に入れても変化に影響しないと。

                                                                      そうであれば、トランジスタで増幅すればよいでしょうか。
                                                                      同サイズ基板を2階建てに重ねて、そこにVRとLEDへの土台を設ける格好にする計画です。その基板上に小さな回路なら置けるスペースがあると思いますが。
                                                                      Re^33: LED Cube
                                                                      daruma 2017/10/19 11:55
                                                                      1. [3486] 北海道は山間部では雪だそうですね。こちらも今週日曜からずっと10数℃の気温です。エアコンは暖房にしています。コタツを出したいくらいです。1984年に自転車で北海道を回ったときは、9月末に音威子府あたりでミゾレが降りました。その日は豊富温泉の民宿に泊まりましたが、温泉が石油臭かったです。

                                                                        > NJL7502Lに流れる電流が微小過ぎて繋がっていないと同然ということでしょうか
                                                                        フォトトランジスタは一方向にしか電流が流れないので、VRの代わりにはなりません。

                                                                        CdSは明るさによって抵抗値が変わる素子(双方向に電流が流れる)なのでVRの代わりになります。添付図は、CdSの抵抗値が50kΩから150kΩまで変わったときのLMC555の出力波形をLTspiceで見た結果です。明るくなって抵抗値が下がるとLEDは速く進み、暗くなるとLEDの進行が遅くなります。

                                                                        どうしてもNJL7502を使いたい場合は、NJL7502の出力電流に応じて、LMC555の5pin電圧を変えるという方法もあります。5pin電圧を下げるとLEDは速く進むようになります。
                                                                        Re^34: LED Cube
                                                                        inara1 2017/10/19 18:05 *
                                                                        1. [3487] 関東も北海道並みに寒い昨日今日だそうですね。
                                                                          豊富温泉に泊まりましたか。私も十年余り前に行ったことがあります。石油臭いので有名な温泉で、それを目当てに来る人も多いようです。アトピーに効くと湯治滞在する人たちもいるそうです。

                                                                          > フォトトランジスタは一方向にしか電流が流れないので、VRの代わりにはなりません。
                                                                          CdSと置き換えられるというので単純に期待したんですが、「CdSはVRに置き換えられる→NJL7502LはCdSに置き換えられる→∴VRをCdSと置き換えられる」とはいかないんですね。甘かった。

                                                                          ここはCdSで行くのが無難でしょうか。明日、最大抵抗値2M/1M/500kのCdS3種が秋月から届きます。いろいろ実験してみます。いかにも昔の素子で今日的でないのと、樹脂封入でなくて5mmφの表面がむき出しなのでケース入れがスマートに行かなそうなのとで、NJL7502Lでできるならと思ったんですが。

                                                                          > LMC555の5pin電圧を変えるという方法もあります。
                                                                          今の回路では5pin使っていないですね。大幅に手を入れることになりそうですか。1階基板からピンで2階基板に持って行って2階でなんとかできるといいんですが・・・。

                                                                          やっぱりCdSかな・・・。
                                                                          Re^35: LED Cube
                                                                          daruma 2017/10/19 19:00
                                                                          1. [3488] > 関東も北海道並みに寒い昨日今日だそうですね
                                                                            北海道並なんて言ったら怒られます。

                                                                            豊富温泉は石油目当てで掘ったら温泉が出てきたという経緯だそうなので石油臭いのは当然ですね。あのときは札幌から宗谷岬まで4日かかりました。宿泊したのは、北大(恵迪寮)→滝川(たまねぎ畑で野宿)→塩狩YH→豊富温泉→宗谷岬(バス停)です。日本最北端で野宿というのは痛快でした。

                                                                            >今の回路では5pin使っていないですね。大幅に手を入れることになりそうですか。
                                                                            抵抗とトランジスタとNJL7502を追加しますがスペースはなさそうですね。ちょっと実験してみますが、うまくいっても2号機以降ですね。

                                                                            CdSはいろいろ持っています。Cd(カドミウム)が入っているのに販売しているのが不思議ですが、趣味の部品だとRoHS規制など関係ないのでしょう。
                                                                            Re^36: LED Cube
                                                                            inara1 2017/10/20 05:40
                                                                            1. [3489] NJL7502を使った速度可変回路です。波形は回路シミュレータの結果です。明るくなるとLEDのスピードが落ちます。Re^37: LED Cube inara1 2017/10/20 08:48 *
                                                                              1. [3490] この時間に、今日はお休みですか? ありがとうございます。

                                                                                LMC555まわりをこれに置き換えて、outを4017の14pinに入れればよいのですね。
                                                                                Re^38: LED Cube
                                                                                daruma 2017/10/20 10:01
                                                                                1. [3491] 荷物が届いたので最寄りヤマト営業所に取りに行ってきました。不在再配達も悪いしいつ来るかと待っているのもいやなので、配達予定メールが来たらネットで営業所留めにしてこのようにしています。

                                                                                  CdSの抵抗値をざっと調べてみました。変化がけっこうゆっくりですし、バラツキも大きいと思われますから、たまたま手に取った品の1回きりの試行結果です。
                                                                                  「室内明」は机上の照明下、「室内暗」は手をかざして陰に、「暗」は太い熱収縮チューブをすっぽり被せ、「明」はスマホのLEDライトを直近2cm程からあてました。

                                                                                  特に暗側はスペックからはかなり離れています。おおざっぱに、明るいときは似たり寄ったりで暗くなったときの抵抗値の上がり方に違いがあるといったところのようです。
                                                                                  Re^39: LED Cube
                                                                                  daruma 2017/10/20 12:03 *
                                                                                  1. [3492] いろいろやってみました。
                                                                                    基板左側のLMC555には暗抵抗0.5MΩのCdS、最小抵抗値が結構あるので下駄ばきの固定抵抗は入れず、これでそこそこ変化するのですが調整余地を持たせるために1kΩVR、基板右側のLMC555には暗抵抗2MΩのCdS、下駄ばきの固定抵抗は元のまま10kΩ、調整余地を持たせるために100kΩVR、これがカットアンドトライの落ち着きどころとなりました。
                                                                                    特に左側回路でですが抵抗値最小でさらに早くなるようシフトしたいところですが、このあたり決めているのは6pin(2pin)の10μFでしょうか。
                                                                                    Re^40: LED Cube
                                                                                    daruma 2017/10/20 14:32
                                                                                    1. [3493] 今日はお休みです。平日の日中は職場なので気づきませんでしたが、選挙カーがウルサイです。

                                                                                      CdSはいろいろ実験して調整してください。

                                                                                      抵抗値最小でさらに早くなるようシフトさせるのなら10μFの容量を小さくしてください。1μFにすると10倍速くなります。

                                                                                      こちらはNJL7502と2SC1815を使った回路
                                                                                      http://mpga.jp/akizuki-fan/index.php?mode=image&file=3489.jpg
                                                                                      の実験をしてみましたが、R3は22kΩでなく100kΩくらいが良さそうです。この回路では明るくなると遅くなりますが、明るくなると速くなるようにするには、NJL7502とR3を入れ替えればいいです。
                                                                                      Re^41: LED Cube
                                                                                      inara1 2017/10/20 15:19
                                                                                      1. [3494] >LMC555まわりをこれに置き換えて、outを4017の14pinに入れればよいのですね
                                                                                        darumaさんの回路のLMC555
                                                                                        http://mpga.jp/akizuki-fan/index.php?mode=image&file=3290.jpg
                                                                                        はそのままで、LMC555の5pinに新たに回路(抵抗2本と2SC1815とNJL7502)を付け足すだけです。

                                                                                        今日は15時くらいからSTVラジオ(1440kHz)が良好に入感します。
                                                                                        Re^42: LED Cube
                                                                                        inara1 2017/10/20 15:45
                                                                                        1. [3495] 10μFを小さくするんですね。あとで4.7μFに取り替えてみます。今は弐階の基板を描いています。

                                                                                          > 明るくなると速くなるようにするには、NJL7502とR3を入れ替えればいいです。

                                                                                          なるほど、中点がVRの真ん中端子でその両側端子に相当するわけですね。

                                                                                          > LMC555の5pinに新たに回路(抵抗2本と2SC1815とNJL7502)を付け足すだけです。

                                                                                          3pinと6pinをピンで取り出すのに加えて5pinも2階に持って行って、そこに追加部分を置くんですね。CdSバージョンが終わったら、試作3号機の配線図を描いてみます。

                                                                                          > 今日は15時くらいからSTVラジオ(1440kHz)が良好に入感します。

                                                                                          私は、穴蔵のPCでradiko.jpからSTVを聞いています。机の上が狭いので便利です。radiko.jpでよそのエリアの局を聴くには有料の登録をしなきゃならないので、電波が入感すればそれに越したことはありませんね。
                                                                                          Re^43: LED Cube
                                                                                          daruma 2017/10/20 17:04
                                                                                          1. [3496] 2階基板の配線図が描けました。
                                                                                            ノンスルーホールの両面基板を使い、1階の連結ピンに対応する丸ピンソケットを裏側に付けます。したがって、ピンからの配線は表側に張ります。VR等の部品は表側に付け裏で配線します。
                                                                                            LED群からの足は丸ピンを付けて丸ピンソケットで受けます。

                                                                                            基板に組んだものをケース背面から差し入れてVRのナットで取り付けます。

                                                                                            工作がうまくいくかどうか、これでやってみます。
                                                                                            Re^44: LED Cube
                                                                                            daruma 2017/10/20 19:02 *
                                                                                            1. [3497] 2階基板ができて試作2号機の完成です。DCジャックと隣の丸ピンソケットはわずかにスペースが足りなかったので、ジャック側面をサンドペーパーで削りました。Re^45: LED Cube daruma 2017/10/21 17:01 *
                                                                                              1. [3498] 連結するとこのようになります。背の低いパーツを使ったのでこの高さにおさまりました。

                                                                                                LMC555のコンデンサは、左回路だけ4.7μFにしました。右回路は10μFのままとしました。
                                                                                                左回路は早くなったぶん下駄ばきの1kΩを復活しましたが、もう少し小さいほうがいいかもしれません。
                                                                                                ※ 結局470Ωにしました。

                                                                                                動作テストも合格しました。

                                                                                                さて、いよいよCube部分の製作です。
                                                                                                Re^46: LED Cube
                                                                                                daruma 2017/10/21 17:07 *
                                                                                                1. [3499] Cube部分よりも先にこっちに手をつけました。
                                                                                                  基板の固定用に四隅を空けてあったのですが、リアパネルの固定に右下隅だけ使うことにして、このように描いてみました。

                                                                                                  CdS版とそろえて「暗くなると遅くなる」にするため、NJL7502Lと抵抗とをチェンジしましたが、これでいいでしょうか。NJL7502Lの極性はこれでいいですか。
                                                                                                  抵抗は100kΩにしていますが、これはスピードを見てカットアンドトライでしょうか。VRは2個とも50kΩに変更ですか。
                                                                                                  VRと直列の抵抗はメイン基板にあるので、前作のまま470Ωと10kΩにしてありますが、これらは1kΩにしたほうがいいですか。

                                                                                                  前バージョンでVRが基板から突出していたので1列下げました。
                                                                                                  Re^47: LED Cube
                                                                                                  daruma 2017/10/22 10:50 *
                                                                                                  1. [3500] NJL7502を使った回路
                                                                                                    http://mpga.jp/akizuki-fan/index.php?mode=image&file=3489.jpg
                                                                                                    では、R2は22kΩのままで、R3を100kΩに変更しました。R2を100kΩにすると明るくなったときのスピードが遅くなりますが、スピードはVRで広範囲に変えられるのでカットアンドトライで決めてください。
                                                                                                    Re^48: LED Cube
                                                                                                    inara1 2017/10/22 13:04
                                                                                                    1. [3501] 1週間余りのご無沙汰でした。

                                                                                                      NJL7502L版はスイッチの調達に手間取ったりで一時停止しています。
                                                                                                      LED群を作りました。

                                                                                                      まず板に穴を開けて治具(冶具?)を作りました。これで水平ラインは作業が楽になりました。9本のカソードを「山」の字型に繋げば事足りるところ、構造強度を持たせるのに「田」の字形に配線しようと考えたのですが、手間を少し省いて「日」の字形にしました。カソードのリードを隣へ隣へと繋いで行って最後に中央の1個に1本だけ付け足してできあがりです。
                                                                                                      垂直ラインはアノードを縦に注ぎ足して最下層の足が基板への差し込みピンとなります。

                                                                                                      なんとか形になりましたが、「頑張ってハンダ付けしました」程度のできで仕上げ品質としてはいまひとつです。

                                                                                                      「田」の字形の枠組みをハンダ以外で整然と作っておいてそこに各カソードを留め付けるようにできれば工作精度はもっと上がると思うのですが、なにか方法はないかと考えています。ステンレス線をスポット溶接するとか、金網のように交点をねじって固定するとか。

                                                                                                      垂直ラインを整然とするのはもっと大変そうです。ステンレス線に各アノードを留め付ければ直線性は保てると思うのですが、LEDを上向きに付ける場合、柱を樹脂外周の外にしなければならないのでやっかいです。

                                                                                                      例のリードが左右に出た異形のLEDを使えばなにかいい形が作れるかもしれません。
                                                                                                      Re^49: LED Cube
                                                                                                      daruma 2017/10/31 13:36 *
                                                                                                      1. [3502] 試作2号機(CdS版)に取り付けて試運転しました。

                                                                                                        うまく動きはしましたが、改善課題が。

                                                                                                        LEDを上向きに付けているので、直下のLEDに照らされて真上のLEDも点灯しているように見えます。在庫の都合でクリア樹脂のLEDを使ったのですが、乳白樹脂のものにすれば抑えることができるかもしれません。また、明るさをやや控えればいくらか軽減できます。
                                                                                                        LEDを真上ではなく少し斜め外側向きに付けるようにすればこの問題は起こらないわけですが、せっかく作ったひとつだけの実験機を曲げたりねじったりするのもためらわれて手を出していません。
                                                                                                        例の異形LEDを使って作ることを考えてみます。

                                                                                                        ところで、そもそも動機となった
                                                                                                        https://www.youtube.com/watch?v=AUAEgxfq36A
                                                                                                        を改めて見てみたのですが、点灯パタンが周期的に変わっています。この回路では、VRの調整で決めたパタンに固定されるんですよねえ。で、明るさに反応するようにと考えたわけですが・・・。
                                                                                                        Re^50: LED Cube
                                                                                                        daruma 2017/10/31 14:10 *
                                                                                                        1. [3506] 試作3号機(NJL7502L版)ができました。
                                                                                                          明るさ調整は半固定にして1階基板に置きました。ここのピンが無くなったのでDCジャックと電源スイッチを無理なく置くことができました。

                                                                                                          スピードにかかわる定数は、とっかえひっかえの末、電解コンは両方とも4.7μF、抵抗は左回路は1.5kΩ+100kΩVR、右回路は10kΩ+100kΩVRに落ち着きました。

                                                                                                          明るさによる変化があまり大きくありません。少し変わる程度です。R2(エミッタからGND)は22kΩ、R3(コレクタベース間)は100kΩにしています。
                                                                                                          > R2を100kΩにすると明るくなったときのスピードが遅くなりますが、
                                                                                                          これは全体に遅い方へシフトするのですか。
                                                                                                          変化幅を大きくすることはできないでしょうか。
                                                                                                          Re^51: LED Cube
                                                                                                          daruma 2017/11/03 11:29 *
                                                                                                          1. [3507] > 明るさによる変化があまり大きくありません
                                                                                                            LMC555の5pin電圧が4V〜5Vのときに発振周期が大きく変わります。普通の明るさのときに5pin電圧が4Vくらい、明るく(暗く)なったときに4.8Vくらいになるようにうまく調整すれば変化幅が大きくなります。
                                                                                                            Re^52: LED Cube
                                                                                                            inara1 2017/11/04 14:52 *
                                                                                                            1. [3508] 5pin電圧がそのようになる点をVRでうまく見つければいいのでしょうか。5pin電圧を見ながらVRを動かしてみようと思います。
                                                                                                              今は、ステンレス線でキューブを形よく作ろうと苦心しているところです。
                                                                                                              Re^53: LED Cube
                                                                                                              daruma 2017/11/04 15:12
                                                                                                              1. [3509] 周囲の明るさが変わったときに5pin電圧が4V〜5Vの範囲になるようにしてください。周囲の明るさによっては4Vを下回ってしまうかもしれませんが、全ての明るさに対してその範囲に収めることは難しいです。電源電圧が5Vなので、上側が5Vを超えることはないです。Re^54: LED Cube inara1 2017/11/04 16:32
                                                                                                                1. [3510] まだやってみていないのですが、その範囲にできるだけ収まるように抵抗値を調整して、その設定でのスピードについては電解コンのほうで調整すればいいのですか。

                                                                                                                  ステンレス線用の冶具がなんとかできました。
                                                                                                                  Re^55: LED Cube
                                                                                                                  daruma 2017/11/04 16:46
                                                                                                                  1. [3511] ふたつの555とも照明下の明るい状態で0.9V程度、手をかざして陰になると4.05V程度になります。スピードは目に見えてはっきり変化します。(暗くなると遅くなる形にNJL7502Lを入れてあります)
                                                                                                                    以前の実験で抵抗値を固めるのに大きいVRを付けていたので、変化の裾野あたりで変化幅が小さかったのですね。いい具合です。
                                                                                                                    Re^56: LED Cube
                                                                                                                    daruma 2017/11/05 10:23
                                                                                                                    1. [3512] うまくいきましたか。屋内でも屋外でも周囲の明るさは速く変化するものではないので、実環境でのスピードは急には変わらないですね。暗くなると遅くなるのは感覚的に合っていると思います。

                                                                                                                      光センサをLEDに近づけるとどうなりますかね。速くなったまま安定してしまうのでしょうか。

                                                                                                                      以前、darumaさんは、光を渡せるキャンドルという、LEDでろうそくのようなものを作ろうとしていましたが、1/fゆらぎのように、ランダムに、ゆっくりと明るさやスピードが変わるようにできると面白いかもしれません。

                                                                                                                      秋月に三端子LEDキャンドルIC
                                                                                                                      http://akizukidenshi.com/catalog/g/gI-08752/
                                                                                                                      というのがあります(手元にあります)。これにLEDをつなぐと明るさがランダムに変わるのですが、ゆっくりと明滅するのでなく、発光と消灯の2パターンだけで、しかも、10秒周期くらいで同じ明滅パターンの繰り返しなので、全然ローソクっぽくないです。

                                                                                                                      LEDの光をやわらげるには拡散キャップ
                                                                                                                      http://akizukidenshi.com/catalog/g/gI-01120/
                                                                                                                      というのを被せればいいです(これも手元にあります)。お坊さんの頭が光っているような感じになりますが、集光性はなくなるので、上側のLEDが照らされるようなことはなくなるはずです。
                                                                                                                      Re^57: LED Cube
                                                                                                                      inara1 2017/11/06 17:20
                                                                                                                      1. [3513] ステンレス線作戦はうまく行かず苦労していました。ステンレス用フラックスとヤニ無しハンダのセットがホームセンターに有ったので買ってきましたが、大き目のコテで大胆に付けることはできるものの、LEDの足をちまちまと付けようとすると流れてくれず悪戦苦闘、そのうちにフラックスの残渣のような黒いこびりつきが生じてなおさらダメという状態です。ある程度大きな接合面をエイッとつけるのに適しているようです。
                                                                                                                        なんとかいちばん下の層だけ作りましたが、労多くして仕上がりは大したことなく、これならばと当初のリードを曲げて注ぎ足していく作戦に戻ろうと思います。縦のライン用の冶具も作ろうと思います。くぼみのある枕を等間隔に置くイメージです。

                                                                                                                        > 光センサをLEDに近づけるとどうなりますかね。速くなったまま安定してしまうのでしょうか。

                                                                                                                        LEDの光を拾ってはいけないと、センサは正面パネルに前向きで付けるつもりで、とりあえず今は首を曲げて外向きにしています。「どうなるか」はやってみるべきですね。さっそくやってみました。個々のLEDが一瞬光るだけなので影響は受けないようです。スピードを速くして盛大に点いているように見える状態にもしてみましたが、知らん顔しています。手で暗がりにしてやるくらいの変化でないと関知しないようです。
                                                                                                                        これなら、天面に付けてもいいのかもしれません。そのほうが工作はしやすいのです。でも、まあ計画どおり正面向きにします。

                                                                                                                        > 以前、darumaさんは、光を渡せるキャンドルという、LEDでろうそくのようなものを

                                                                                                                        はい、具体化はしませんでしたが。
                                                                                                                        そうなんです。ゆっくり変化していくようにしたいんです。試作してみて、調整したスピードでずっと一定なんだとわかったのですが、先日も書いたように、
                                                                                                                        > ところで、そもそも動機となった
                                                                                                                        > https://www.youtube.com/watch?v=AUAEgxfq36A
                                                                                                                        > を改めて見てみたのですが、点灯パタンが周期的に変わっています。
                                                                                                                        なので、どうやっているんだろうと不思議です。まさか、外出しのケーブルの先にVRが付いていて手動で変えているなんてことはないと思いますが。
                                                                                                                        あちらの回路には、A,B,Cトランジスタのコレクタに電解コンが入ってますよね。これはどういう働きなんでしょう。

                                                                                                                        拡散キャップも考えたんですが、ぼんやりしてしまうかなと思ったり・・・。LEDの底面に不透明な塗料をチョンと付けてみようかなと思いつつまだやっていません。

                                                                                                                        今週は仕事がたてこんで、平日取りかかれないのが痛いです。
                                                                                                                        Re^58: LED Cube
                                                                                                                        daruma 2017/11/06 18:14
                                                                                                                        1. [3514] >> あちらの回路には、A,B,Cトランジスタのコレクタに電解コンが入ってますよね。これはどういう働きなんでしょう。

                                                                                                                          OKWAVEでinara1さんから質問者さんへの回答では不要とのことですが、無意味無用なのですか?元回路の作者さんはどんな意図で入れたんでしょうね。

                                                                                                                          点灯パタンが移り変わっていくようには、PICを使えば自由自在なんでしょうが、555+4017回路では無理なんでしょうか。明るさ感応型で変化を持たせるのが正解ですかね。
                                                                                                                          Re^59: LED Cube
                                                                                                                          daruma 2017/11/08 11:32
                                                                                                                          1. [3515] >あちらの回路には、A,B,Cトランジスタのコレクタに電解コンが入ってますよね。これはどういう働きなんでしょう。
                                                                                                                            LED Cubeの上中下が切り替わったときに、残像を残すためでしょうが、10μFくらいではほとんど効果はないと思います。上中下の切り替わりを非常に速くすれば効果が見えてくるかもしれません。実験してみてはいかがでしょうか。

                                                                                                                            点灯パタンが移り変わっていく関連動画がありますがPICを使ったものでしょう。USBケーブルなどで外部からコントロールしていなくて、ICが1個だけという構成だとPICでしょう。

                                                                                                                            555+4017回路では、いろいろな発光パターンをDIPスイッチなどで作って、そのパターンを切り替える方法も可能ですが、回路が複雑になります。以前、motomuraさんの要望で作った織機のパターンはその方法です。
                                                                                                                            Re^60: LED Cube
                                                                                                                            inara1 2017/11/09 02:56
                                                                                                                            1. [3517] 変速にしたいなら、クロックだけマイコンで生成すればよいのでは?

                                                                                                                              まあ、マイコンを使うんなら、PIC16F87が1個あれば、4017やドライバーTRが無くても似たようなものが作れます。

                                                                                                                              面倒な初期設定はこのあたりでしょうか。
                                                                                                                              ;LED CUBE駆動(ソース動作) PIC16F87
                                                                                                                              ;
                                                                                                                              ;
                                                                                                                              ; PORTA-1(18) A COMON
                                                                                                                              ; PORTA-0(17) 9
                                                                                                                              ; PORTA-7 OSC(16) Input Only(使用しない場合プルアップ)
                                                                                                                              ; PORTA-6 OSC(15) (使用しない場合プルアップ)
                                                                                                                              ; 電源+(14)
                                                                                                                              ; PORTB-7(13) 8
                                                                                                                              ; PORTB-6(12) 7
                                                                                                                              ; PORTB-5(11) 6
                                                                                                                              ; PORTB-4(10) 5

                                                                                                                              ; PORTB-3(9) 4
                                                                                                                              ; PORTB-2(8) 3
                                                                                                                              ; PORTB-1(7) 2
                                                                                                                              ; PORTB-0(6) 1
                                                                                                                              ; VSS(-)(5)
                                                                                                                              ; PORTA-5(4) MCLR(要プルアップ)
                                                                                                                              ; PORTA-4(3) (オープンドレイン 要プルアップ)
                                                                                                                              ; PORTA-3(2) C COMON
                                                                                                                              ; PORTA-2(1) B COMON

                                                                                                                              ;
                                                                                                                              list p=16f87
                                                                                                                              #include <p16f87.inc>

                                                                                                                              ERRORLEVEL -207,-302,-306
                                                                                                                              ;PDF132P
                                                                                                                              __CONFIG _CONFIG1, _CP_OFF & _DEBUG_OFF & _CPD_OFF & _LVP_OFF & _BODEN_ON & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_IO
                                                                                                                              __CONFIG _CONFIG2, _IESO_OFF & _FCMEN_ON

                                                                                                                              ;******************************
                                                                                                                              ; 変数レジスタ割付定義
                                                                                                                              ;******************************

                                                                                                                              DPDT EQU 20H ;LCD output data ←16F87のRAM先頭アドレス
                                                                                                                              CNT1 EQU 21H ;タイマ用カウンタ
                                                                                                                              CNT2 EQU 22H
                                                                                                                              CNT3 EQU 23H
                                                                                                                              CNT4 EQU 24H
                                                                                                                              CNT5 EQU 25H
                                                                                                                              DPCNT EQU 26H
                                                                                                                              FASE EQU 27H
                                                                                                                              DPCNTW EQU 28H
                                                                                                                              MDCNT EQU 29H
                                                                                                                              TEMP EQU 2AH

                                                                                                                              ORG 00H

                                                                                                                              ;************************************
                                                                                                                              ; 入出力ピンモード初期化
                                                                                                                              ;************************************

                                                                                                                              PORT_INI

                                                                                                                              ;OSCON
                                                                                                                              ;
                                                                                                                              ;bit7 NO USE
                                                                                                                              ;bit6-4 INTRC CLOCK 000=31.25KHz 001=125KHz 以降1ビット増加毎に周波数が倍になる
                                                                                                                              ;bit3 OSCT オシレータ・スタートアップ・タイムアウト状態に、
                                                                                                                              ;1=優先クロックを使う 0=T1OSC or INTRC を使う
                                                                                                                              ;bit2 IOFS INTOSC Frequency Stable bit
                                                                                                                              ;1 = 安定
                                                                                                                              ;0 = 不安定
                                                                                                                              ;
                                                                                                                              ;bit1-0 Oscillator Mode Select bits
                                                                                                                              ;
                                                                                                                              ;00 = Oscillator mode defined by FOSC(2:0) FOSCレジスタ(2-0ビット)によってdefine(定義)する
                                                                                                                              ;01 = T1OSC is used for system clock タイマー1を使う
                                                                                                                              ;10 = Internal RC is used for system clock 内蔵RCを使う
                                                                                                                              ;11 = Reserved 予約済み

                                                                                                                              BSF STATUS,RP0 ;Set page 1

                                                                                                                              MOVLW B'01100000' ;下位2ビット注意 00じゃないとCONFIGのINTRC_IOが無効になる
                                                                                                                              MOVWF OSCCON ;BANK1

                                                                                                                              MOVLW B'00000000' ; 0-7 OUTPUT
                                                                                                                              MOVWF TRISB ;PortB set
                                                                                                                              MOVLW B'11110000' ;RA0〜3以外IN
                                                                                                                              MOVWF TRISA ;PortA set

                                                                                                                              BSF OPTION_REG,7 ;BANK1 0でプルアップ有効
                                                                                                                              BCF STATUS,RP0 ;Set Page 0

                                                                                                                              MOVLW 07H ;07Hを設定 16F87/88をPORTAをデジタルI/Oに
                                                                                                                              MOVWF CMCON ; コンパレータOFF
                                                                                                                              CLRF PORTA
                                                                                                                              CLRF PORTB ;all clear

                                                                                                                              BSF PORTA,1 ;桁コントロール クリア済み
                                                                                                                              BSF PORTA,2 ;桁コントロール クリア済み
                                                                                                                              BSF PORTA,3 ;桁コントロール クリア済み




                                                                                                                              単にクロックだけをマイコンで生成するなら12F609が1個で、555の2個分のクロックを生成できます。

                                                                                                                              一応7段階変速になっていますが、動作確認をしていないので動くかどうかは判りません。

                                                                                                                              時間変化型12F609用可変クロック出力
                                                                                                                              :020000000528D1
                                                                                                                              :08000800090083169F010A3074
                                                                                                                              :10001000850000309500811383129A131A139A12E7
                                                                                                                              :100020001A169A111A159A101A1099171913991667
                                                                                                                              :10003000191299151915991019100B1783168C118F
                                                                                                                              :1000400083128C118B1385010B108B11CD01CD14F4
                                                                                                                              :10005000F030C900CD1C0515952005110930C700E9
                                                                                                                              :10006000CD1C0514CD1095200510D320C70B3228C8
                                                                                                                              :10007000C90B2B287830C9000515952005110930CA
                                                                                                                              :10008000C700051495200510D920C70B4128C90BBE
                                                                                                                              :100090003C283C30C9000515952005110930C700E2
                                                                                                                              :1000A000051495200510DF20C70B5028C90B4B28DD
                                                                                                                              :1000B0002830C9000515952005110930C700051421
                                                                                                                              :1000C00095200510E520C70B5F28C90B5A2814306E
                                                                                                                              :1000D000C9000515952005110930C70005149520A4
                                                                                                                              :1000E0000510EB20C70B6E28C90B69280C30C9001E
                                                                                                                              :1000F0000515952005110930C70005149520051038
                                                                                                                              :10010000F120C70B7D28C90B78280830C9000515D8
                                                                                                                              :10011000952005110930C700051495200510F7201A
                                                                                                                              :10012000C70B8C28C90B8728282800000000000076
                                                                                                                              :1001300000000000000000000000000000000000BF
                                                                                                                              :1001400000000000000000000000000000000000AF
                                                                                                                              :10015000000000000000000000000000000000009F
                                                                                                                              :100160000000000008000930C0000000000000008E
                                                                                                                              :10017000000000000000000000000000C00BB528D7
                                                                                                                              :100180000800B320B320B320B320B32008000A3006
                                                                                                                              :10019000C300B320C30BC92808003230C300B3200A
                                                                                                                              :1001A000C30BCF2808000530C400CD20C40BD528D0
                                                                                                                              :1001B00008000A30C400CD20C40BDB2808006430DE
                                                                                                                              :1001C000C400C720C40BE1280800FA30C400C720CF
                                                                                                                              :1001D000C40BE72808006430C400CD20C40BED2810
                                                                                                                              :1001E00008009630C400CD20C40BF3280800C830A6
                                                                                                                              :0A01F000C400CD20C40BF92808005C
                                                                                                                              :02400E00443F2D
                                                                                                                              :00000001FF

                                                                                                                              回数変化型12F609用可変クロック出力
                                                                                                                              :020000040000FA
                                                                                                                              :020000000528D1
                                                                                                                              :08000800090083169F010A3074
                                                                                                                              :10001000850000309500811383129A131A139A12E7
                                                                                                                              :100020001A169A111A159A101A1099171913991667
                                                                                                                              :10003000191299151915991019100B1783168C118F
                                                                                                                              :1000400083128C118B1385010B108B11CD01CD14F4
                                                                                                                              :100050000430C900CD1C0515952005110930C700D5
                                                                                                                              :10006000CD1C0514CD1095200510D320C70B3228C8
                                                                                                                              :10007000C90B2B280430C90005159520051109303E
                                                                                                                              :10008000C700051495200510D920C70B4128C90BBE
                                                                                                                              :100090003C280430C9000515952005110930C7001A
                                                                                                                              :1000A000051495200510DF20C70B5028C90B4B28DD
                                                                                                                              :1000B0000430C9000515952005110930C700051445
                                                                                                                              :1000C00095200510E520C70B5F28C90B5A2804307E
                                                                                                                              :1000D000C9000515952005110930C70005149520A4
                                                                                                                              :1000E0000510EB20C70B6E28C90B69280430C90026
                                                                                                                              :1000F0000515952005110930C70005149520051038
                                                                                                                              :10010000F120C70B7D28C90B78280430C9000515DC
                                                                                                                              :10011000952005110930C700051495200510F7201A
                                                                                                                              :10012000C70B8C28C90B8728282800000000000076
                                                                                                                              :1001300000000000000000000000000000000000BF
                                                                                                                              :1001400000000000000000000000000000000000AF
                                                                                                                              :10015000000000000000000000000000000000009F
                                                                                                                              :100160000000000008000930C0000000000000008E
                                                                                                                              :10017000000000000000000000000000C00BB528D7
                                                                                                                              :100180000800B320B320B320B320B32008000A3006
                                                                                                                              :10019000C300B320C30BC92808003230C300B3200A
                                                                                                                              :1001A000C30BCF2808000530C400CD20C40BD528D0
                                                                                                                              :1001B00008000A30C400CD20C40BDB2808006430DE
                                                                                                                              :1001C000C400C720C40BE1280800FA30C400C720CF
                                                                                                                              :1001D000C40BE72808006430C400CD20C40BED2810
                                                                                                                              :1001E00008009630C400CD20C40BF3280800C830A6
                                                                                                                              :0A01F000C400CD20C40BF92808005C
                                                                                                                              :02400E00443F2D
                                                                                                                              :00000001FF

                                                                                                                              7ピンの9クロックに対して5ピンが1クロック出力されます。

                                                                                                                              初期設定はこれで
                                                                                                                              ;変速クロック発生モジュール PIC12F609/615
                                                                                                                              ; 電源−(8)
                                                                                                                              ; GPIO-0/CIN+ (7) セグメント切り換えクロック出力
                                                                                                                              ; GPIO-1/CIN0-(6) 判定入力
                                                                                                                              ; GPIO-2/COUT (5) コモン切り換えクロック出力
                                                                                                                              ; GPIO-3/MCLR (4) (入力ビット)
                                                                                                                              ; GPIO-4/CIN1-(3) OSC用予備
                                                                                                                              ; GPIO-5/OSC (2) OSC用予備
                                                                                                                              ; 電源+(1)

                                                                                                                              list P=PIC12F609
                                                                                                                              include "P12F609.INC"
                                                                                                                              ;PDF96P CONFIG
                                                                                                                              __CONFIG _CP_OFF & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTOSCIO & _IOSCFS_4MHZ

                                                                                                                              ;メモリー設定
                                                                                                                              CNT1 EQU 40H
                                                                                                                              CNT2 EQU 41h
                                                                                                                              CNT3 EQU 42h
                                                                                                                              CNT4 EQU 43h
                                                                                                                              CNT5 EQU 44h
                                                                                                                              CNT6 EQU 45h
                                                                                                                              CNT7 EQU 46h
                                                                                                                              U1CNT EQU 47h
                                                                                                                              U2CNT EQU 48h
                                                                                                                              STGCNT EQU 49H
                                                                                                                              PCN EQU 4AH
                                                                                                                              ZEROCNT EQU 4BH
                                                                                                                              PCNT EQU 4CH
                                                                                                                              MODE EQU 4DH

                                                                                                                              ORG 00H
                                                                                                                              GOTO INIT

                                                                                                                              ORG 04H
                                                                                                                              RETFIE

                                                                                                                              ;初期設定
                                                                                                                              INIT BSF STATUS,RP0 ;SET BANK1

                                                                                                                              CLRF ANSEL ;DIGITAL I/O INPUT SET at BANK1(12F609/615) PDF35P
                                                                                                                              ; BSF ANSEL,1 ;ANALOG I/O INPUT GPIO,1 SET at BANK1(12F609/615) PDF35P

                                                                                                                              MOVLW B'001010' ;bit6-7は使用されていない GPIO-0,2,4-5を出力
                                                                                                                              MOVWF TRISIO ;I/Oピンの入出力方向を決める(BANK1)

                                                                                                                              MOVLW B'000000' ; プルアップするピンを選択(GP3は指定しても無効)
                                                                                                                              MOVWF WPU ; プルアップするピンを個別に設定(BANK1)
                                                                                                                              BCF OPTION_REG,7 ;(BANK1); 入力ピンのプルアップ全体の設定(最上位のbit7を0で有効)

                                                                                                                              BCF STATUS,RP0 ;SET BANK0

                                                                                                                              ;CMCON0(BANK0)の設定 58P
                                                                                                                              BCF CMCON0,7 ;コンパレータ無効
                                                                                                                              BCF CMCON0,6 ;判定状態内部出力
                                                                                                                              BCF CMCON0,5 ;判定をI/Oピン出力 0=しない
                                                                                                                              BSF CMCON0,4 ;反転ビット 1=反転 Vref<CIN- 時にBIT6がHIGHに
                                                                                                                              BCF CMCON0,3 ;未定義
                                                                                                                              BSF CMCON0,2 ;非反転入力の接続設定 1=内部基準電圧を使う
                                                                                                                              BCF CMCON0,1 ;未定義
                                                                                                                              BCF CMCON0,0 ;コンパレータチャンネルセレクトビット 0=CIN0-を使用 1=CIN1-を使用

                                                                                                                              ;VRCONの設定(BANK0) TTL入力 VDD2〜4.5V時 HIGH判定電圧=0.25×VDD+0.8V LOW判定電圧0.15×VDD
                                                                                                                              BSF VRCON,7 ;0 固定基準電圧  1 電源電圧基準による基準電圧
                                                                                                                              BCF VRCON,6 ;未定義
                                                                                                                              BSF VRCON,5 ;基準電圧レンジ選択 1=LOWレンジ (VR(0:3)/24)×電源電圧
                                                                                                                              BCF VRCON,4 ;0.6V固定基準電圧有効ビット 0=無効 1=有効

                                                                                                                              BSF VRCON,3 ;基準電圧指定 HIGHレンジ VDD/4+(VR(0:3)/32)×VDD
                                                                                                                              BSF VRCON,2 ;(1111=15)/24×VDD LOWレンジ最高値
                                                                                                                              BCF VRCON,1 ;15/24=0.625 VDD(2)×0,625=1.25V
                                                                                                                              BCF VRCON,0 ;14/24=0.59  12/24=0.5 電源電圧の50%をしきい値に=1100

                                                                                                                              BSF INTCON,PEIE ;(BANK0)周辺機器割り込み有効

                                                                                                                              BSF STATUS,RP0 ;SELECT BANK1
                                                                                                                              BCF PIE1,CMIE ;(BANK1)コンパレータ割り込み無効
                                                                                                                              BCF STATUS,RP0 ;SELECT BANK0

                                                                                                                              BCF PIR1,CMIF ;(BANK0)コンパレータ割り込みフラグクリア

                                                                                                                              BCF INTCON,GIE ;BANK0 全割り込み禁止
                                                                                                                              CLRF GPIO ;GPIO をクリアする

                                                                                                                              BCF INTCON,GPIF ;IO割り込みフラグクリア
                                                                                                                              BCF INTCON,GPIE ;IO割り込み無効
                                                                                                                              Re^61: LED Cube
                                                                                                                              なんじゃらほい 2017/11/09 20:06
                                                                                                                              1. [3518] コンデンサは残像のためですか。それなら納得できます。なにかスピードに遅れを生み出してそれが累積することでスピードが変わるようなことなのかと考えたのですが、555が送り出すクロックに影響はしませんものね。この回路では点灯パタンが移り変わることはないのですね。
                                                                                                                                してみると、
                                                                                                                                https://www.youtube.com/watch?v=AUAEgxfq36A
                                                                                                                                の動画は、提示されている回路のとおりではないということになりましょうか。あるいは、外出しケーブルは電源ではなくVRが付いていて撮影中に変化させているとか・・・。動画に繋ぎ合わせた様子は見られないし。
                                                                                                                                555と4017でという作例の中でこれはパタン変化するのかと思ったのですが、・・。
                                                                                                                                明るさで変化でするようにというのはひと味加えるという意味では正解でしたね。

                                                                                                                                Cubeその2を作りました。リード線を折り曲げる細工を少なくすれば歪みも少なくできるだろうと、配列を変えました。アノードの柱を外側にして、カソードを内側で格子にしてみました。四隅の内側にLEDを置くので小さくなってしまいますが、工作はしやすく仕上がりも比較的よくなりました。でも、完成度高いものではありません。難しいです。
                                                                                                                                乳白樹脂のLEDを使って、あの「直下から照らされる」問題は解決しました。LED間が近くなったので3mmφのほうがよさそうですが、手もちに3mmφ乳白のものがなかったので、こんな感じです。
                                                                                                                                大きさ的には、前作のカソード格子を外に出すほうがよいかもしれません。

                                                                                                                                さて、なんじゃらほいさんお久しぶりです。またお世話になります。

                                                                                                                                クロックだけPICで作るということは、4017と併用するということですよね、せっかくPICを使うなら併用無しでいきたいと思います。12F609は、以前買っておくならと紹介された中に有ったので持っているのですが。

                                                                                                                                PIC16F87を調達すればPIC版がなんとかなるでしょうか。3x3x3を越える例えば5x5x5などになるとカウンタICでは現実的でないので、せっかくPIC版を作るなら5x5x5をと思うのは私にはハードル高すぎでしょうか。ポートをたくさん持っているPICを使って、そのぶんプログラムはたいへんになりますか?

                                                                                                                                ・PIC版をブレッドボードで作る。
                                                                                                                                ・プログラムを作っ(ていただい)て、変化パタンのよいパラメータを加減する
                                                                                                                                ・変化の面白いパタンをいくつか循環させるプログラムにする。
                                                                                                                                ・かたまったら、基板で実作する。
                                                                                                                                と、こんな段取りでいいでしょうか。
                                                                                                                                Re^62: LED Cube
                                                                                                                                daruma 2017/11/10 14:45 *
                                                                                                                                1. [3519] >せっかくPIC版を作るなら5x5x5をと思うのは私にはハードル高すぎでしょうか。
                                                                                                                                  >ポートをたくさん持っているPICを使って、そのぶんプログラムはたいへんになりますか?

                                                                                                                                  所詮はLEDチカチカの延長なので、単純なものだけならそうでもないでしょうが、複雑な点灯パターンを作ろうとすると、厄介になります。

                                                                                                                                  結局はどのようなもの(複雑さの)を作るか次第でしょうね。

                                                                                                                                  混乱を最小限に125個を制御するのには25×5でやる必要があるので最低でも40ピンクラスのデバイスが必要です。
                                                                                                                                  http://akizukidenshi.com/catalog/g/gI-02241/

                                                                                                                                  手間を掛けて極限的ポート節約にチャレンジする気なら5×5×5のマトリックスで20ピン1個という可能性もなきにしもあらずですが、相当の事前検討が必要です。



                                                                                                                                  >・PIC版をブレッドボードで作る。

                                                                                                                                  ICソケットを使いたくないなら、この流れでしょうか。

                                                                                                                                  ICSP用の配線をつけていきなり実作でも良いと思います。
                                                                                                                                  https://synapse.kyoto/glossary/glossary.php?word=ICSP

                                                                                                                                  http://www.picfun.com/icsp02.html
                                                                                                                                  Re^63: LED Cube
                                                                                                                                  なんじゃらほい 2017/11/10 21:00
                                                                                                                                  1. [3520] 前作のスピード加減を何パタンか書き込んでそれを循環させる発想でいましたが、確かにスピード調整にとらわれずさまざまなパタンを作ることができるのですね。でも、おもしろいパタンを作り出すのがたいへんそうです。

                                                                                                                                    3x3x3は555+4017回路ですでにできたので、PIC版はもう少し大きいものでと考えたのですが、3x3x3で変化パタン多様版のほうがとっつきやすいようです。それでいこうかなと思い始めました。キューブ工作もLED数が多くなるときれいに仕上げるのがますますたいへんになりそうですし。

                                                                                                                                    基板が現在の延長だと2階建てなので、ICSPのピンを設けて抜き差しするように配置するのがきついかなと思うのですが、それがいけるならそのほうがいいです。
                                                                                                                                    Re^64: LED Cube
                                                                                                                                    daruma 2017/11/12 09:03
                                                                                                                                    1. [3521] > 3x3x3は555+4017回路ですでにできたので、PIC版はもう少し大きいものでと考えたのですが、

                                                                                                                                      28ピンで4X4X4というのもあるかと思いますが、最初は3X3で行く方がいいでしょうね。



                                                                                                                                      とりあえず、18ピン用の参考回路図をあげますが、ICソケットを使うことをためらわなければ、点線で書かれたICSP用の配線すら不要です。

                                                                                                                                      > 基板が現在の延長だと2階建てなので、

                                                                                                                                      マイコン版なら、むしろ無理矢理2階建てにするの?・・・という感じですね。
                                                                                                                                      4017版と同様+速度可変程度の機能で良ければ上記回路で十分のはずです。

                                                                                                                                      複数のLEDを同時点灯させて、より複雑なパターンを作りたい場合で、上記のようにABCのトランジスタを省略する場合は、ダイナミック点灯にして実際には同時点灯させないか、セグメント電流を2.5mA(ポート許容値の25mA÷同時点灯個数)以下に抑えるという条件付きになります。
                                                                                                                                      Re^65: LED Cube
                                                                                                                                      なんじゃらほい 2017/11/12 15:17 *
                                                                                                                                      1. [3522] 16F84Aと16F84A-201Pはもっていますが16F87はありません。16F87を買います。PIC16F87-I/Pでいいんですよね。

                                                                                                                                        これだけの回路なら、これまで同様19穴19列の1枚にLED用のピンソケットも含めいれることができそうですね。配線図を描いてみます。ICSPのピンも入れて。

                                                                                                                                        LED1個を2.5mA以下に抑えるのはちょっと苦しいと思います。トランジスタを入れて1枚基板になんとかなればいいんですが。
                                                                                                                                        ダイナミック点灯にできればうれしいです。電流制限抵抗も1個でそれを半固定VRにできますし。
                                                                                                                                        Re^66: LED Cube
                                                                                                                                        daruma 2017/11/12 18:14
                                                                                                                                        1. [3523] とりあえず、参考回路図でのサンプルファイルをあげます。

                                                                                                                                          HEXファイル
                                                                                                                                          :020000040000FA
                                                                                                                                          :10000000831660308F0000308600F0308500811745
                                                                                                                                          :10001000831207309C00850186018514051585151E
                                                                                                                                          :100020001128AD01AD0A01302D02031D1B288510DA
                                                                                                                                          :1000300005158515332802302D02031D232885144C
                                                                                                                                          :1000400005118515332803302D02031D2B28851437
                                                                                                                                          :1000500005158511332804302D02031D54288514FD
                                                                                                                                          :100060000511851533280510860106147D208601AB
                                                                                                                                          :1000700086147D20860106157D20860186157D204B
                                                                                                                                          :10008000860106167D20860186167D2086010617CC
                                                                                                                                          :100090007D20860186177D20860105147D20043091
                                                                                                                                          :1000A0002D020319AD01122886010514851089203F
                                                                                                                                          :1000B0000510892054281330A10000000000000022
                                                                                                                                          :1000C000A10B5D280000000008006430A3000000C0
                                                                                                                                          :1000D000000000000000000000000000A30B6728E3
                                                                                                                                          :1000E00008003230A4005B20A40B732808006430A1
                                                                                                                                          :1000F000A4005B20A40B792808002830A5007120FB
                                                                                                                                          :10010000A50B7F2808006430A5007120A50B852869
                                                                                                                                          :0E0110000800C930A5007120A50B8B2808003F
                                                                                                                                          :02400E00503F21
                                                                                                                                          :02401000FD3F72
                                                                                                                                          :00000001FF

                                                                                                                                          ソースはこれ
                                                                                                                                          ;LED CUBE SAMPLE(ソース動作) PIC16F87
                                                                                                                                          ;
                                                                                                                                          ;
                                                                                                                                          ; PORTA-1(18) A COMON
                                                                                                                                          ; PORTA-0(17) 9
                                                                                                                                          ; PORTA-7 OSC(16) Input Only
                                                                                                                                          ; PORTA-6 OSC(15)
                                                                                                                                          ; 電源+(14)
                                                                                                                                          ; PORTB-7(13) 8
                                                                                                                                          ; PORTB-6(12) 7
                                                                                                                                          ; PORTB-5(11) 6
                                                                                                                                          ; PORTB-4(10) 5

                                                                                                                                          ; PORTB-3(9) 4
                                                                                                                                          ; PORTB-2(8) 3
                                                                                                                                          ; PORTB-1(7) 2
                                                                                                                                          ; PORTB-0(6) 1
                                                                                                                                          ; VSS(-)(5)
                                                                                                                                          ; PORTA-5(4)
                                                                                                                                          ; PORTA-4(3)
                                                                                                                                          ; PORTA-3(2) C COMON
                                                                                                                                          ; PORTA-2(1) B COMON

                                                                                                                                          ;
                                                                                                                                          list p=16f87
                                                                                                                                          #include <p16f87.inc>

                                                                                                                                          ERRORLEVEL -207,-302,-306
                                                                                                                                          ;PDF132P
                                                                                                                                          __CONFIG _CONFIG1, _CP_OFF & _DEBUG_OFF & _CPD_OFF & _LVP_OFF & _BODEN_ON & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_IO
                                                                                                                                          __CONFIG _CONFIG2, _IESO_OFF & _FCMEN_ON

                                                                                                                                          ;******************************
                                                                                                                                          ; 変数レジスタ割付定義
                                                                                                                                          ;******************************

                                                                                                                                          DPDT EQU 20H ;LCD output data ←16F87のRAM先頭アドレス
                                                                                                                                          CNT1 EQU 21H ;タイマ用カウンタ
                                                                                                                                          CNT2 EQU 22H
                                                                                                                                          CNT3 EQU 23H
                                                                                                                                          CNT4 EQU 24H
                                                                                                                                          CNT5 EQU 25H

                                                                                                                                          STAGECNT EQU 2DH

                                                                                                                                          ORG 00H

                                                                                                                                          ;************************************
                                                                                                                                          ; 入出力ピンモード初期化
                                                                                                                                          ;************************************

                                                                                                                                          PORT_INI

                                                                                                                                          ;OSCON
                                                                                                                                          ;
                                                                                                                                          ;bit7 NO USE
                                                                                                                                          ;bit6-4 INTRC CLOCK 000=31.25KHz 001=125KHz 以降1ビット増加毎に周波数が倍になる
                                                                                                                                          ;bit3 OSCT オシレータ・スタートアップ・タイムアウト状態に、
                                                                                                                                          ;1=優先クロックを使う 0=T1OSC or INTRC を使う
                                                                                                                                          ;bit2 IOFS INTOSC Frequency Stable bit
                                                                                                                                          ;1 = 安定
                                                                                                                                          ;0 = 不安定
                                                                                                                                          ;
                                                                                                                                          ;bit1-0 Oscillator Mode Select bits
                                                                                                                                          ;
                                                                                                                                          ;00 = Oscillator mode defined by FOSC(2:0) FOSCレジスタ(2-0ビット)によってdefine(定義)する
                                                                                                                                          ;01 = T1OSC is used for system clock タイマー1を使う
                                                                                                                                          ;10 = Internal RC is used for system clock 内蔵RCを使う
                                                                                                                                          ;11 = Reserved 予約済み

                                                                                                                                          BSF STATUS,RP0 ;Set page 1

                                                                                                                                          MOVLW B'01100000' ;下位2ビット注意 00じゃないとCONFIGのINTRC_IOが無効になる
                                                                                                                                          MOVWF OSCCON ;BANK1

                                                                                                                                          MOVLW B'00000000' ; 0-7 OUTPUT
                                                                                                                                          MOVWF TRISB ;PortB set
                                                                                                                                          MOVLW B'11110000' ;RA0〜3以外IN
                                                                                                                                          MOVWF TRISA ;PortA set

                                                                                                                                          BSF OPTION_REG,7 ;BANK1 0でプルアップ有効
                                                                                                                                          BCF STATUS,RP0 ;Set Page 0

                                                                                                                                          MOVLW 07H ;07Hを設定 16F87/88をPORTAをデジタルI/Oに
                                                                                                                                          MOVWF CMCON ; コンパレータOFF
                                                                                                                                          CLRF PORTA
                                                                                                                                          CLRF PORTB ;all clear

                                                                                                                                          BSF PORTA,1 ;桁コントロール クリア済み
                                                                                                                                          BSF PORTA,2 ;桁コントロール クリア済み
                                                                                                                                          BSF PORTA,3 ;桁コントロール クリア済み

                                                                                                                                          GOTO MAIN

                                                                                                                                          ;...............................
                                                                                                                                          MAIN
                                                                                                                                          CLRF STAGECNT

                                                                                                                                          STAGE_T INCF STAGECNT,F

                                                                                                                                          S1CHK MOVLW D'1'
                                                                                                                                          SUBWF STAGECNT,W ;F-W
                                                                                                                                          BTFSS STATUS,Z
                                                                                                                                          GOTO S2CHK

                                                                                                                                          TOP BCF PORTA,1
                                                                                                                                          BSF PORTA,2
                                                                                                                                          BSF PORTA,3
                                                                                                                                          GOTO DOWN_S

                                                                                                                                          S2CHK MOVLW D'2'
                                                                                                                                          SUBWF STAGECNT,W ;F-W
                                                                                                                                          BTFSS STATUS,Z
                                                                                                                                          GOTO S3CHK

                                                                                                                                          MID BSF PORTA,1
                                                                                                                                          BCF PORTA,2
                                                                                                                                          BSF PORTA,3
                                                                                                                                          GOTO DOWN_S

                                                                                                                                          S3CHK MOVLW D'3'
                                                                                                                                          SUBWF STAGECNT,W ;F-W
                                                                                                                                          BTFSS STATUS,Z
                                                                                                                                          GOTO S4CHK

                                                                                                                                          LOWER BSF PORTA,1
                                                                                                                                          BSF PORTA,2
                                                                                                                                          BCF PORTA,3
                                                                                                                                          GOTO DOWN_S

                                                                                                                                          S4CHK MOVLW D'4'
                                                                                                                                          SUBWF STAGECNT,W ;F-W
                                                                                                                                          BTFSS STATUS,Z
                                                                                                                                          GOTO ERR

                                                                                                                                          MID2 BSF PORTA,1
                                                                                                                                          BCF PORTA,2
                                                                                                                                          BSF PORTA,3
                                                                                                                                          GOTO DOWN_S

                                                                                                                                          DOWN_S BCF PORTA,0
                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,0
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,1
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,2
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,3
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,4
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,5
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,6
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTB,7
                                                                                                                                          CALL TIME2HM

                                                                                                                                          CLRF PORTB
                                                                                                                                          BSF PORTA,0
                                                                                                                                          CALL TIME2HM

                                                                                                                                          MOVLW D'4'
                                                                                                                                          SUBWF STAGECNT,W
                                                                                                                                          BTFSC STATUS,Z
                                                                                                                                          CLRF STAGECNT
                                                                                                                                          GOTO STAGE_T

                                                                                                                                          ERR CLRF PORTB
                                                                                                                                          BSF PORTA,0
                                                                                                                                          BCF PORTA,1
                                                                                                                                          CALL TIME1S
                                                                                                                                          BCF PORTA,0
                                                                                                                                          CALL TIME1S
                                                                                                                                          GOTO ERR

                                                                                                                                          ;*********************************
                                                                                                                                          ; タイマーサブルーチン 4MHZ
                                                                                                                                          ;; TIME100 :100MicroSec
                                                                                                                                          ; TIME1M :1msec
                                                                                                                                          ; TIME5M :5msec
                                                                                                                                          ;*********************************

                                                                                                                                          TIME100 MOVLW D'19' ;2+(5*19)-1+2+3=100 1×100=100MicroSec
                                                                                                                                          MOVWF CNT1
                                                                                                                                          T_LP1 NOP
                                                                                                                                          NOP
                                                                                                                                          NOP
                                                                                                                                          DECFSZ CNT1,F
                                                                                                                                          GOTO T_LP1
                                                                                                                                          NOP
                                                                                                                                          NOP
                                                                                                                                          RETURN ;99Micro sec(about)

                                                                                                                                          TIME1M MOVLW D'100' ;SET
                                                                                                                                          MOVWF CNT3
                                                                                                                                          T_LP3 NOP
                                                                                                                                          NOP
                                                                                                                                          NOP
                                                                                                                                          NOP
                                                                                                                                          NOP
                                                                                                                                          NOP
                                                                                                                                          NOP
                                                                                                                                          DECFSZ CNT3,F
                                                                                                                                          GOTO T_LP3
                                                                                                                                          RETURN ;2cycle

                                                                                                                                          TIME5M MOVLW D'50' ;50 SET
                                                                                                                                          MOVWF CNT4
                                                                                                                                          T_LP4 CALL TIME100
                                                                                                                                          DECFSZ CNT4,F
                                                                                                                                          GOTO T_LP4
                                                                                                                                          RETURN ; 20*250=5000STEP =5000MICRO SEC(+3Microsec)

                                                                                                                                          TIME10M MOVLW D'100' ;50 SET
                                                                                                                                          MOVWF CNT4
                                                                                                                                          T_LP4A CALL TIME100
                                                                                                                                          DECFSZ CNT4,F
                                                                                                                                          GOTO T_LP4A
                                                                                                                                          RETURN ; 20*250=5000STEP =5000MICRO SEC(+3Microsec)

                                                                                                                                          TIME2HM ;
                                                                                                                                          MOVLW D'40' ;20SET (4980*40)
                                                                                                                                          MOVWF CNT5
                                                                                                                                          T_LP5A CALL TIME5M ;2+(4980+3)*20-1=?
                                                                                                                                          DECFSZ CNT5,F
                                                                                                                                          GOTO T_LP5A
                                                                                                                                          RETURN ; STEP ?ICRO SEC.

                                                                                                                                          TIME5HM ;1SEC(about)
                                                                                                                                          MOVLW D'100' ;201SET (4980*101)
                                                                                                                                          MOVWF CNT5
                                                                                                                                          T_LP50 CALL TIME5M ;2+(4980+3)*20-1=?
                                                                                                                                          DECFSZ CNT5,F
                                                                                                                                          GOTO T_LP50
                                                                                                                                          RETURN ; STEP ?ICRO SEC.

                                                                                                                                          TIME1S ;1SEC(about)
                                                                                                                                          MOVLW D'201' ;201SET (4980*201)
                                                                                                                                          MOVWF CNT5
                                                                                                                                          T_LP5 CALL TIME5M ;2+(4980+3)*20-1=?
                                                                                                                                          DECFSZ CNT5,F
                                                                                                                                          GOTO T_LP5
                                                                                                                                          RETURN ; STEP ?ICRO SEC.

                                                                                                                                          END

                                                                                                                                          改造しやすいように、簡単な記述で書いてあります。

                                                                                                                                          この STAGE_T から

                                                                                                                                          GOTO  STAGE_T

                                                                                                                                          までの間に、同様のループを入れれば、プログラムサイズ限界までいくらでもパターンを増やせます。

                                                                                                                                          トランジスタを入れて論理を反転するなら、コモンはPORTA 1-3
                                                                                                                                          セグメントも反転するならPORTBの0−7とPORTAの0を反転して下さい。
                                                                                                                                          Re^67: LED Cube
                                                                                                                                          なんじゃらほい 2017/11/16 20:08
                                                                                                                                          1. [3524] ありがとうございます。
                                                                                                                                            仕事で今週平日は取りかかれずにいます。
                                                                                                                                            今度の土日に作って動かしてみます。

                                                                                                                                            あの回路は、複数同時点灯なのでLED電流を小さく抑えなければならないのですね。
                                                                                                                                            ダイナミック点灯にするには、回路をかなり変更することになりますか?
                                                                                                                                            Re^68: LED Cube
                                                                                                                                            daruma 2017/11/16 23:08
                                                                                                                                            1. [3525] > あの回路は、複数同時点灯なのでLED電流を小さく抑えなければならないのですね。

                                                                                                                                              いいえ。
                                                                                                                                              ポートの許容範囲以内で複数同時点灯<可能>回路です。

                                                                                                                                              20mAなら1個、10mAなら2個、5mAなら4個、同時点灯が可能だという事です。

                                                                                                                                              サンプルプログラム内では同時点灯させていないので、20mAも設定可能です。



                                                                                                                                              > ダイナミック点灯にするには、回路をかなり変更することになりますか?

                                                                                                                                              同じ回路でダイナミック点灯も可能です。



                                                                                                                                              2スピード版サンプル
                                                                                                                                              アセンブル時のエラーのみのチェックです。
                                                                                                                                              :020000040000FA
                                                                                                                                              :10000000831660308F0000308600F0308500811745
                                                                                                                                              :10001000831207309C00850186018514051585151E
                                                                                                                                              :1000200011288510051585153220851405118515B3
                                                                                                                                              :10003000322085140515851132208514051185158A
                                                                                                                                              :1000400032208510051585154F208514051185155D
                                                                                                                                              :100050004F208514051585114F2085140511851530
                                                                                                                                              :100060004F2011280510860106148E208601861463
                                                                                                                                              :100070008E20860106158E20860186158E2086012B
                                                                                                                                              :1000800006168E20860186168E20860106178E2083
                                                                                                                                              :10009000860186178E20860105148E200800051023
                                                                                                                                              :1000A0008601061494208601861494208601061584
                                                                                                                                              :1000B00094208601861594208601061694208601D8
                                                                                                                                              :1000C00086169420860106179420860186179420B0
                                                                                                                                              :1000D00086010514942008001330A10000000000E0
                                                                                                                                              :1000E0000000A10B6E280000000008006430A3008F
                                                                                                                                              :1000F0000000000000000000000000000000A30B52
                                                                                                                                              :10010000782808003230A4006C20A40B8428080052
                                                                                                                                              :100110006430A4006C20A40B8A2808002830A500B5
                                                                                                                                              :100120008220A50B902808006430A5008220A50B32
                                                                                                                                              :1001300096280800C930A5008220A50B9C2808003D
                                                                                                                                              :02400E00503F21
                                                                                                                                              :02401000FD3F72
                                                                                                                                              :00000001FF

                                                                                                                                              ソース
                                                                                                                                              ;LED CUBE SAMPLE(ソース動作) PIC16F87
                                                                                                                                              ;
                                                                                                                                              ;
                                                                                                                                              ; PORTA-1(18) A COMON
                                                                                                                                              ; PORTA-0(17) 9
                                                                                                                                              ; PORTA-7 OSC(16) Input Only
                                                                                                                                              ; PORTA-6 OSC(15)
                                                                                                                                              ; 電源+(14)
                                                                                                                                              ; PORTB-7(13) 8
                                                                                                                                              ; PORTB-6(12) 7
                                                                                                                                              ; PORTB-5(11) 6
                                                                                                                                              ; PORTB-4(10) 5

                                                                                                                                              ; PORTB-3(9) 4
                                                                                                                                              ; PORTB-2(8) 3
                                                                                                                                              ; PORTB-1(7) 2
                                                                                                                                              ; PORTB-0(6) 1
                                                                                                                                              ; VSS(-)(5)
                                                                                                                                              ; PORTA-5(4)
                                                                                                                                              ; PORTA-4(3)
                                                                                                                                              ; PORTA-3(2) C COMON
                                                                                                                                              ; PORTA-2(1) B COMON

                                                                                                                                              ;
                                                                                                                                              list p=16f87
                                                                                                                                              #include <p16f87.inc>

                                                                                                                                              ERRORLEVEL -207,-302,-306
                                                                                                                                              ;PDF132P
                                                                                                                                              __CONFIG _CONFIG1, _CP_OFF & _DEBUG_OFF & _CPD_OFF & _LVP_OFF & _BODEN_ON & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_IO
                                                                                                                                              __CONFIG _CONFIG2, _IESO_OFF & _FCMEN_ON

                                                                                                                                              ;******************************
                                                                                                                                              ; 変数レジスタ割付定義
                                                                                                                                              ;******************************

                                                                                                                                              DPDT EQU 20H ;LCD output data ←16F87のRAM先頭アドレス
                                                                                                                                              CNT1 EQU 21H ;タイマ用カウンタ
                                                                                                                                              CNT2 EQU 22H
                                                                                                                                              CNT3 EQU 23H
                                                                                                                                              CNT4 EQU 24H
                                                                                                                                              CNT5 EQU 25H

                                                                                                                                              STAGECNT EQU 2DH

                                                                                                                                              ORG 00H

                                                                                                                                              ;************************************
                                                                                                                                              ; 入出力ピンモード初期化
                                                                                                                                              ;************************************

                                                                                                                                              PORT_INI

                                                                                                                                              ;OSCON
                                                                                                                                              ;
                                                                                                                                              ;bit7 NO USE
                                                                                                                                              ;bit6-4 INTRC CLOCK 000=31.25KHz 001=125KHz 以降1ビット増加毎に周波数が倍になる
                                                                                                                                              ;bit3 OSCT オシレータ・スタートアップ・タイムアウト状態に、
                                                                                                                                              ;1=優先クロックを使う 0=T1OSC or INTRC を使う
                                                                                                                                              ;bit2 IOFS INTOSC Frequency Stable bit
                                                                                                                                              ;1 = 安定
                                                                                                                                              ;0 = 不安定
                                                                                                                                              ;
                                                                                                                                              ;bit1-0 Oscillator Mode Select bits
                                                                                                                                              ;
                                                                                                                                              ;00 = Oscillator mode defined by FOSC(2:0) FOSCレジスタ(2-0ビット)によってdefine(定義)する
                                                                                                                                              ;01 = T1OSC is used for system clock タイマー1を使う
                                                                                                                                              ;10 = Internal RC is used for system clock 内蔵RCを使う
                                                                                                                                              ;11 = Reserved 予約済み

                                                                                                                                              BSF STATUS,RP0 ;Set page 1

                                                                                                                                              MOVLW B'01100000' ;下位2ビット注意 00じゃないとCONFIGのINTRC_IOが無効になる
                                                                                                                                              MOVWF OSCCON ;BANK1

                                                                                                                                              MOVLW B'00000000' ; 0-7 OUTPUT
                                                                                                                                              MOVWF TRISB ;PortB set
                                                                                                                                              MOVLW B'11110000' ;RA0〜3以外IN
                                                                                                                                              MOVWF TRISA ;PortA set

                                                                                                                                              BSF OPTION_REG,7 ;BANK1 0でプルアップ有効
                                                                                                                                              BCF STATUS,RP0 ;Set Page 0

                                                                                                                                              MOVLW 07H ;07Hを設定 16F87/88をPORTAをデジタルI/Oに
                                                                                                                                              MOVWF CMCON ; コンパレータOFF
                                                                                                                                              CLRF PORTA
                                                                                                                                              CLRF PORTB ;all clear

                                                                                                                                              BSF PORTA,1 ;桁コントロール クリア済み
                                                                                                                                              BSF PORTA,2 ;桁コントロール クリア済み
                                                                                                                                              BSF PORTA,3 ;桁コントロール クリア済み

                                                                                                                                              GOTO MAIN

                                                                                                                                              ;...............................
                                                                                                                                              MAIN
                                                                                                                                              TOP BCF PORTA,1
                                                                                                                                              BSF PORTA,2
                                                                                                                                              BSF PORTA,3
                                                                                                                                              CALL DOWN_S

                                                                                                                                              MID BSF PORTA,1
                                                                                                                                              BCF PORTA,2
                                                                                                                                              BSF PORTA,3
                                                                                                                                              CALL DOWN_S

                                                                                                                                              LOWER BSF PORTA,1
                                                                                                                                              BSF PORTA,2
                                                                                                                                              BCF PORTA,3
                                                                                                                                              CALL DOWN_S

                                                                                                                                              MID2 BSF PORTA,1
                                                                                                                                              BCF PORTA,2
                                                                                                                                              BSF PORTA,3
                                                                                                                                              CALL DOWN_S

                                                                                                                                              TOPM BCF PORTA,1
                                                                                                                                              BSF PORTA,2
                                                                                                                                              BSF PORTA,3
                                                                                                                                              CALL DOWN_M

                                                                                                                                              MIDM BSF PORTA,1
                                                                                                                                              BCF PORTA,2
                                                                                                                                              BSF PORTA,3
                                                                                                                                              CALL DOWN_M

                                                                                                                                              LOWERM BSF PORTA,1
                                                                                                                                              BSF PORTA,2
                                                                                                                                              BCF PORTA,3
                                                                                                                                              CALL DOWN_M

                                                                                                                                              MID2M BSF PORTA,1
                                                                                                                                              BCF PORTA,2
                                                                                                                                              BSF PORTA,3
                                                                                                                                              CALL DOWN_M

                                                                                                                                              GOTO MAIN

                                                                                                                                              DOWN_S BCF PORTA,0
                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,0
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,1
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,2
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,3
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,4
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,5
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,6
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,7
                                                                                                                                              CALL TIME2HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTA,0
                                                                                                                                              CALL TIME2HM
                                                                                                                                              RETURN

                                                                                                                                              DOWN_M BCF PORTA,0
                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,0
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,1
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,2
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,3
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,4
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,5
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,6
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTB,7
                                                                                                                                              CALL TIME5HM

                                                                                                                                              CLRF PORTB
                                                                                                                                              BSF PORTA,0
                                                                                                                                              CALL TIME5HM
                                                                                                                                              RETURN

                                                                                                                                              ;*********************************
                                                                                                                                              ; タイマーサブルーチン 4MHZ
                                                                                                                                              ;; TIME100 :100MicroSec
                                                                                                                                              ; TIME1M :1msec
                                                                                                                                              ; TIME5M :5msec
                                                                                                                                              ;*********************************

                                                                                                                                              TIME100 MOVLW D'19' ;2+(5*19)-1+2+3=100 1×100=100MicroSec
                                                                                                                                              MOVWF CNT1
                                                                                                                                              T_LP1 NOP
                                                                                                                                              NOP
                                                                                                                                              NOP
                                                                                                                                              DECFSZ CNT1,F
                                                                                                                                              GOTO T_LP1
                                                                                                                                              NOP
                                                                                                                                              NOP
                                                                                                                                              RETURN ;99Micro sec(about)

                                                                                                                                              TIME1M MOVLW D'100' ;SET
                                                                                                                                              MOVWF CNT3
                                                                                                                                              T_LP3 NOP
                                                                                                                                              NOP
                                                                                                                                              NOP
                                                                                                                                              NOP
                                                                                                                                              NOP
                                                                                                                                              NOP
                                                                                                                                              NOP
                                                                                                                                              DECFSZ CNT3,F
                                                                                                                                              GOTO T_LP3
                                                                                                                                              RETURN ;2cycle

                                                                                                                                              TIME5M MOVLW D'50' ;50 SET
                                                                                                                                              MOVWF CNT4
                                                                                                                                              T_LP4 CALL TIME100
                                                                                                                                              DECFSZ CNT4,F
                                                                                                                                              GOTO T_LP4
                                                                                                                                              RETURN ; 20*250=5000STEP =5000MICRO SEC(+3Microsec)

                                                                                                                                              TIME10M MOVLW D'100' ;50 SET
                                                                                                                                              MOVWF CNT4
                                                                                                                                              T_LP4A CALL TIME100
                                                                                                                                              DECFSZ CNT4,F
                                                                                                                                              GOTO T_LP4A
                                                                                                                                              RETURN ; 20*250=5000STEP =5000MICRO SEC(+3Microsec)

                                                                                                                                              TIME2HM ;
                                                                                                                                              MOVLW D'40' ;20SET (4980*40)
                                                                                                                                              MOVWF CNT5
                                                                                                                                              T_LP5A CALL TIME5M ;2+(4980+3)*20-1=?
                                                                                                                                              DECFSZ CNT5,F
                                                                                                                                              GOTO T_LP5A
                                                                                                                                              RETURN ; STEP ?ICRO SEC.

                                                                                                                                              TIME5HM ;1SEC(about)
                                                                                                                                              MOVLW D'100' ;201SET (4980*101)
                                                                                                                                              MOVWF CNT5
                                                                                                                                              T_LP50 CALL TIME5M ;2+(4980+3)*20-1=?
                                                                                                                                              DECFSZ CNT5,F
                                                                                                                                              GOTO T_LP50
                                                                                                                                              RETURN ; STEP ?ICRO SEC.

                                                                                                                                              TIME1S ;1SEC(about)
                                                                                                                                              MOVLW D'201' ;201SET (4980*201)
                                                                                                                                              MOVWF CNT5
                                                                                                                                              T_LP5 CALL TIME5M ;2+(4980+3)*20-1=?
                                                                                                                                              DECFSZ CNT5,F
                                                                                                                                              GOTO T_LP5
                                                                                                                                              RETURN ; STEP ?ICRO SEC.

                                                                                                                                              END
                                                                                                                                              Re^69: LED Cube
                                                                                                                                              なんじゃらほい 2017/11/18 08:23
                                                                                                                                              1. [3526] なんと!! パソコンが動かなくなってしまいました。悪戦苦闘しています。これが復活しないと仕事になりません。OSが立ち上がるところまでは行くんですが。
                                                                                                                                                いまこれはiPadで書いています。
                                                                                                                                                せっかくプログラムを書いていただいたのに。なんとか今日中に解決すればと焦っています。
                                                                                                                                                Re^70: LED Cube
                                                                                                                                                daruma 2017/11/19 08:11
                                                                                                                                                1. [3527] 昨夜ようやくパソコンが復旧し、今日仕事から帰ってPICにHEXを書き込んでみました。
                                                                                                                                                  回路はPICまわりだけ組み、電源は安定化電源から5Vを直接供給しています。

                                                                                                                                                  > 2017/11/16 Thu 20:08
                                                                                                                                                  > とりあえず、参考回路図でのサンプルファイルをあげます。
                                                                                                                                                  を走らせるとうまく走りました。順繰りにLEDが点灯します。
                                                                                                                                                  次に、
                                                                                                                                                  > 2017/11/18 Sat 08:23
                                                                                                                                                  > 2スピード版サンプル
                                                                                                                                                  を書き込んでみたのですが、先のと動作が変わらないのです。HEXを眺めてみたのですが、もしや後のも同じものじゃないでしょうか。
                                                                                                                                                  ソースからbuildしてみようとしたのですが、MPLAB X IDEの使い方の記憶が薄れているためかうまくいきません。ソースの部分を別ファイルにして.asmで保存しNewProjectを作ってソースを読みこませ・・・とやったのですが。
                                                                                                                                                  pickit3の電源の設定はしています。あと2バイトスペースを1バイトスペースに置換することはやったのですが、2バイト文字はコメント以外にはありませんでした。
                                                                                                                                                  Re^71: LED Cube
                                                                                                                                                  daruma 2017/11/20 18:13 *
                                                                                                                                                  1. [3528] > > 2017/11/16 Thu 20:08
                                                                                                                                                    > > とりあえず、参考回路図でのサンプルファイルをあげます。
                                                                                                                                                    > を走らせるとうまく走りました。順繰りにLEDが点灯します。

                                                                                                                                                    安心しました。

                                                                                                                                                    > 次に、
                                                                                                                                                    > > 2017/11/18 Sat 08:23
                                                                                                                                                    > > 2スピード版サンプル
                                                                                                                                                    > を書き込んでみたのですが、先のと動作が変わらないのです。HEXを眺めてみたのですが、もしや後のも同じものじゃないでしょうか。

                                                                                                                                                    両方の文字列を並べエディッターで検索したら一致・・・なので同じでしたね。

                                                                                                                                                    で上のものは修正しました



                                                                                                                                                    > ソースからbuildしてみようとしたのですが、MPLAB X IDEの使い方の記憶が薄れているためかうまくいきません。ソースの部分を別ファイルにして.asmで保存しNewProjectを作ってソースを読みこませ・・・とやったのですが。

                                                                                                                                                    ASMの拡張子でテキストファイルをつくり、mpasmx(mpasmx.exe)を直接起動して、アセンブルしエラーがなければ、MPLAB_IDEではなくMPLAB_IPEで書き込むという方法もあります。

                                                                                                                                                    インクルードされるp16f87.incのバージョンが違うと正確にコピーされていてもエラーが出ることがあります。

                                                                                                                                                    半角スペースをTABに変換するといいかも知れません。
                                                                                                                                                    Re^72: LED Cube
                                                                                                                                                    なんじゃらほい 2017/11/20 18:48
                                                                                                                                                    1. [3529] > 両方の文字列を並べエディッターで検索したら一致・・・なので同じでしたね。
                                                                                                                                                      やっぱりそうでしたか。さっそく差し替え版を書き込んでみました。ばっちりです。最初早い目で往復、そのあと遅い目・・の繰り返しですね。

                                                                                                                                                      buildは方法をじっくりおさらいします。HEXをいただいて楽させていただいてすみません。

                                                                                                                                                      さて、変化パタンのバリエーションをどう作っていくかですねえ。
                                                                                                                                                      Re^73: LED Cube
                                                                                                                                                      daruma 2017/11/20 19:03
                                                                                                                                                      1. [3530] > さて、変化パタンのバリエーションをどう作っていくかですねえ。

                                                                                                                                                        とりあえず、2段階verのソースをこちらにアップしました
                                                                                                                                                        https://yahoo.jp/box/nXo-jn

                                                                                                                                                        恐らくバグがある上に、30回ぐらいで動かなくなるサンプル版
                                                                                                                                                        :020000040000FA
                                                                                                                                                        :10000000831660308F0000308600F0308500811745
                                                                                                                                                        :10001000831207309C00850186018514051585151E
                                                                                                                                                        :10002000FF30A6000030AD00DE222E08AC00AC0888
                                                                                                                                                        :10003000031928281F302C02031C28280130AC0289
                                                                                                                                                        :100040000319D6292C08AE000030AD00BB222E28A3
                                                                                                                                                        :100050001E30AE000030AD00BB222E280230A700BB
                                                                                                                                                        :10006000E321EB21F321FB2103220B2213221B228C
                                                                                                                                                        :1000700023222B2233223B2243224B2253225B2278
                                                                                                                                                        :1000800063226B2273227B2283228B2293229B2268
                                                                                                                                                        :10009000A322AB22B322B322AB22A3229B22932220
                                                                                                                                                        :1000A0008B2283227B2273226B2263225B225322C8
                                                                                                                                                        :1000B0004B2243223B2233222B2223221B221322B8
                                                                                                                                                        :1000C0000B220322FB21F321EB21E321E3212B224D
                                                                                                                                                        :1000D0007322EB2183223B22F321EB2133221B22CB
                                                                                                                                                        :1000E0006322AB22B32283224322FB2123226B22F1
                                                                                                                                                        :1000F00013225B22A3229B2293224B2203220B2258
                                                                                                                                                        :1001000053223322EB21F3213B228322EB21732262
                                                                                                                                                        :100110002B22E3216B222322FB2143228322B322C1
                                                                                                                                                        :10012000AB2263221B2253220B2203224B22932257
                                                                                                                                                        :100130009B22A3225B221322E3212B227322AB22D8
                                                                                                                                                        :10014000A3225B2213221B226322EB2133227B2278
                                                                                                                                                        :10015000B3229B2253220B2223226B22F3213B2228
                                                                                                                                                        :1001600083228B2293224B220322FB214322E32171
                                                                                                                                                        :100170002B227322EB2133227B22F3213B22832289
                                                                                                                                                        :10018000FB2143228B2203224B2293220B22532258
                                                                                                                                                        :100190009B2213225B22A3221B226322AB22232257
                                                                                                                                                        :1001A0006B22B322B3226B222322AB2263221B22B7
                                                                                                                                                        :1001B000A3225B2213229B2253220B2293224B2247
                                                                                                                                                        :1001C00003228B224322FB2183223B22F3217B2229
                                                                                                                                                        :1001D0003322EB2173222B22E321E32133228322DA
                                                                                                                                                        :1001E000432203225322A3226322E3212B227B22D8
                                                                                                                                                        :1001F0003B22FB214B229B225B221B226B22732280
                                                                                                                                                        :100200003322F32143229322532213226322B32267
                                                                                                                                                        :10021000EB213B228B224B220B225B22AB226B2257
                                                                                                                                                        :10022000E32133228322432203225322A322632287
                                                                                                                                                        :1002300023222B227B223B22FB214B229B225B226F
                                                                                                                                                        :100240001B226B22732273226B221B225B229B22B6
                                                                                                                                                        :100250004B22FB213B227B222B2223226322A3223F
                                                                                                                                                        :1002600053220322432283223322E3216B22AB2237
                                                                                                                                                        :100270005B220B224B228B223B22EB21B3226322F7
                                                                                                                                                        :100280001322532293224322F321332273226B221F
                                                                                                                                                        :100290001B225B229B224B22FB213B227B222B2217
                                                                                                                                                        :1002A000E3216322A3225322032243228322332207
                                                                                                                                                        :1002B000E321A708031979290130270203198129AD
                                                                                                                                                        :1002C00002302702031989290330270203199129D3
                                                                                                                                                        :1002D0000430270203199929053027020319A1299F
                                                                                                                                                        :1002E000063027020319A929073027020319B1296B
                                                                                                                                                        :1002F000A7011030A6020318CD291030A600A70AC6
                                                                                                                                                        :10030000CD291030A607031CCD29FF30A600A70A6F
                                                                                                                                                        :10031000CD291830A6020318CD291030A600A70A4F
                                                                                                                                                        :10032000CD291830A607031CCD29FF30A600A70A47
                                                                                                                                                        :10033000CD292030A6020318CD291030A600A70A27
                                                                                                                                                        :10034000CD292030A607031CCD29FF30A600A70A1F
                                                                                                                                                        :10035000CD292D30A6020318CD291030A600A70AFA
                                                                                                                                                        :10036000CD292D30A60780302607031CCD298030EB
                                                                                                                                                        :10037000A600A70ACD290A30A6020318CD291030FD
                                                                                                                                                        :10038000A600A70ACD290A30A60780302607031C3D
                                                                                                                                                        :10039000CD29FF30A600A70ACD290A30270203196C
                                                                                                                                                        :1003A000A70130280323A80BD22908008601851055
                                                                                                                                                        :1003B00005141523860105110514152386018511E1
                                                                                                                                                        :1003C00005141523D6292608A800013086000C3014
                                                                                                                                                        :1003D0008500D22108002608A800023086000C30D3
                                                                                                                                                        :1003E0008500D22108002608A800043086000C30C1
                                                                                                                                                        :1003F0008500D22108002608A800083086000C30AD
                                                                                                                                                        :100400008500D22108002608A800103086000C3094
                                                                                                                                                        :100410008500D22108002608A800203086000C3074
                                                                                                                                                        :100420008500D22108002608A800403086000C3044
                                                                                                                                                        :100430008500D22108002608A800803086000C30F4
                                                                                                                                                        :100440008500D22108002608A800003086000D3063
                                                                                                                                                        :100450008500D22108002608A800013086000A3055
                                                                                                                                                        :100460008500D22108002608A800023086000A3044
                                                                                                                                                        :100470008500D22108002608A800043086000A3032
                                                                                                                                                        :100480008500D22108002608A800083086000A301E
                                                                                                                                                        :100490008500D22108002608A800103086000A3006
                                                                                                                                                        :1004A0008500D22108002608A800203086000A30E6
                                                                                                                                                        :1004B0008500D22108002608A800403086000A30B6
                                                                                                                                                        :1004C0008500D22108002608A800803086000A3066
                                                                                                                                                        :1004D0008500D22108002608A800003086000B30D5
                                                                                                                                                        :1004E0008500D22108002608A800013086000630C9
                                                                                                                                                        :1004F0008500D22108002608A800023086000630B8
                                                                                                                                                        :100500008500D22108002608A800043086000630A5
                                                                                                                                                        :100510008500D22108002608A80008308600063091
                                                                                                                                                        :100520008500D22108002608A80010308600063079
                                                                                                                                                        :100530008500D22108002608A80020308600063059
                                                                                                                                                        :100540008500D22108002608A80040308600063029
                                                                                                                                                        :100550008500D22108002608A800803086000630D9
                                                                                                                                                        :100560008500D22108002608A80000308600073048
                                                                                                                                                        :100570008500D2210800831603178C18BD2A831228
                                                                                                                                                        :1005800003132D08831203178D00831203132E0803
                                                                                                                                                        :10059000831203178C00831603178C130C158B130F
                                                                                                                                                        :1005A00055308D00AA308D008C14831603178C18DB
                                                                                                                                                        :1005B000D72A8B170C118312031308002D088312FE
                                                                                                                                                        :1005C00003178D00831603178C130C148312031763
                                                                                                                                                        :1005D0000C0883120313AE0008001330A1000000C2
                                                                                                                                                        :1005E00000000000A10BEF2A0000000008006430AA
                                                                                                                                                        :1005F000A300000000000000000000000000000058
                                                                                                                                                        :10060000A30BF92A08003230A400ED22A40B052B1D
                                                                                                                                                        :1006100008006430A400ED22A40B0B2B0800283046
                                                                                                                                                        :10062000A5000323A50B112B08006430A5000323AC
                                                                                                                                                        :10063000A50B172B0800C930A5000323A50B1D2B04
                                                                                                                                                        :020640000800B0
                                                                                                                                                        :02400E00503F21
                                                                                                                                                        :02401000FD3F72
                                                                                                                                                        :00000001FF
                                                                                                                                                        Re^74: LED Cube
                                                                                                                                                        なんじゃらほい 2017/11/20 20:34
                                                                                                                                                        1. [3531] > とりあえず、2段階verのソースをこちらにアップしました
                                                                                                                                                          > https://yahoo.jp/box/nXo-jn

                                                                                                                                                          ありがとうございます。これがちゃんとbuildできるようにMPLAB X IDEのおさらいをします。

                                                                                                                                                          > 恐らくバグがある上に、30回ぐらいで動かなくなるサンプル版

                                                                                                                                                          ここまで作っていただいて感激です。パラメータをいろいろ変えて苦労するのを覚悟していました。
                                                                                                                                                          変化パタンは
                                                                                                                                                          ・1〜9が変わってA〜Cが変わる
                                                                                                                                                          ・A〜Cが変わって1〜9が変わる
                                                                                                                                                          ・たすき掛けに変わる
                                                                                                                                                          の3パタンでしょうか
                                                                                                                                                          スピードは、序盤のたいへんゆっくりから走り回るまでの5段階でしょうか。6段階かな。
                                                                                                                                                          このパタン変化で速い方3段階で完成形でいかがでしょう。さらに速い複数同時点灯しているように見えるスピードがあってもいいかもしれません。
                                                                                                                                                          「動かなくなる」とのことで、パタン変化を追っていたのですが一向に止まらず、少なくとも50分眺めていますが止まりません。「動かなくならない」のではないでしょうか。

                                                                                                                                                          ※追記 2時間たっても止まっていません。

                                                                                                                                                          ブレッドボードに平面配置のLED群ではパタンを実感できないと思うので、基板に組んでキューブを載せて試作4号機に取りかかります。
                                                                                                                                                          それと、試作3号機をケース入れして完成した姿にします。

                                                                                                                                                          今週は仕事があまり入っていないので、工作三昧できそうです。

                                                                                                                                                          ところで、常に1個だけしか点灯させないプログラムを前提とすれば電流制限抵抗を1個だけの半固定VRにして明るさ調整可にできるかと思うのですが、回路自体は複数点灯もアリなのでそうしないで抵抗を並べておいたほうがいいでしょうか。現在ブレッドボードの実験では総消費電流13mAで十分な明るさです。トランジスタをかませる必要はありませんね。
                                                                                                                                                          Re^75: LED Cube
                                                                                                                                                          daruma 2017/11/21 12:55
                                                                                                                                                          1. [3532] 1個だけ点灯を前提に、電流制限抵抗を1個だけの半固定VRにして明るさ調整可にと考えてみたのですが、

                                                                                                                                                            http://mpga.jp/akizuki-fan/index.php?mode=image&file=3521.jpg
                                                                                                                                                            の図で、1〜9に抵抗を入れずA〜Cに入れても同じことだとは思います。これで3個にはなりますが、inara1さんの回路
                                                                                                                                                            http://mpga.jp/akizuki-fan/data/img/3290.jpg
                                                                                                                                                            のように全てここを通るというところが無いので1個にはできないのでしょうか。
                                                                                                                                                            抵抗8個を3個にしてもスペースが若干浮くだけですから、それなら現状通り8本並べておこうかなと思いますが。

                                                                                                                                                            いずれにしても、複数点灯の可能性としては、一系列内で2個点灯させるとそれに対して1個の抵抗しか入っていないことになりますか。
                                                                                                                                                            Re^76: LED Cube
                                                                                                                                                            daruma 2017/11/22 12:06
                                                                                                                                                            1. [3533] あれ?
                                                                                                                                                              昨日からずっと動かしっぱなしにしているのですが、ふと見ると、昨日実験開始時の「たいへんゆっくり」になってそこから抜け出ないのです。1点灯2秒の超スローです。昨日の開始時は、10分(不確か)ほど後にやや速い1点灯1秒のスピードに移行し「走る回る」まで何段階かスピードアップした後はこの超スローは起きずに繰り返していました。今朝この状況に気づいてから1時間たっても、超スローのままです。

                                                                                                                                                              あれあれ?
                                                                                                                                                              一度電源を切って再スタートしたのですが、1点灯2秒の超スローを十数分のあと1点灯1秒になったあとしばらくするとまた超スローに戻り、それより速い段階になってくれません。なぜでしょう。一度書き込んだプログラムですから、再起動したら同じ動作になると思うのですが。
                                                                                                                                                              Re^77: LED Cube
                                                                                                                                                              daruma 2017/11/22 12:48
                                                                                                                                                              1. [3534] >「動かなくなる」とのことで、パタン変化を追っていたのですが一向に止まらず、少なくとも50分眺めていますが止まりません。「動かなくならない」のではないでしょうか。

                                                                                                                                                                30回というのはマイコンのリセット回数です。電源を入れっぱなしなら1年でも動き続けてもおかしくはないです。



                                                                                                                                                                >ここまで作っていただいて感激です。パラメータをいろいろ変えて苦労するのを覚悟していました。

                                                                                                                                                                そもそも、このプログラムは「クロックだけでもマイコンでやってみたら?」という話をする前から、「マイコンでやるならどのようなパターンが、どの程度の難易度で実現出来るのか」の確認用に書いてあったもので、公開用に書いたものではありません。

                                                                                                                                                                なので「こんなのもできるかな?」的な参考サンプルです。そもそも仕様自体が十分に検討されたではなく、完成品には程遠いものです。



                                                                                                                                                                今回のものはサンプル2のコピペで出来るレベルのものです。なので、これを参考に面白いものを作り上げて下さい。

                                                                                                                                                                折角、マイコンを使うためにそれ相応の投資をしたのですから、これを機会にロジックICや簡単なIC(555とか)の置き換えぐらいは出来るようになってください。



                                                                                                                                                                >変化パタンは
                                                                                                                                                                >・1〜9が変わってA〜Cが変わる
                                                                                                                                                                >・A〜Cが変わって1〜9が変わる
                                                                                                                                                                >・たすき掛けに変わる
                                                                                                                                                                >の3パタンでしょうか

                                                                                                                                                                プログラムを確認するとそんな感じですが

                                                                                                                                                                >・1〜9が変わってA〜Cが変わる、  も

                                                                                                                                                                実際には1→2→3→4→5→6→7→8→9で上〜中〜下とステージが動いたあと下〜中〜上へ9→8・・・・・→1へと逆転しています。
                                                                                                                                                                その他も後半は逆転していますからパターン的には6通り以上です。

                                                                                                                                                                これでも最初のアイディアがずいぶんすっ飛んでます。



                                                                                                                                                                >スピードは、序盤のたいへんゆっくりから走り回るまでの5段階でしょうか。6段階かな。

                                                                                                                                                                いいえ、バグがあってきちんと動いていなかったとはいえ、本来はもっともっと複雑です。

                                                                                                                                                                フェイズ0で35段階で減速
                                                                                                                                                                フェイズ1で34段階で加速
                                                                                                                                                                フェイズ2で25段階で減速
                                                                                                                                                                フェイズ3で24段階で加速
                                                                                                                                                                フェイズ4で19段階で減速
                                                                                                                                                                フェイズ5で18段階で加速
                                                                                                                                                                フェイズ6で15段階で減速
                                                                                                                                                                フェイズ7で14段階で加速

                                                                                                                                                                こんな感じです。



                                                                                                                                                                >電流制限抵抗を1個だけの半固定VRにして明るさ調整可にできるかと思うのですが、
                                                                                                                                                                >1個だけ点灯を前提に、電流制限抵抗を1個だけの半固定VRにして明るさ調整可にと考えてみたのですが、

                                                                                                                                                                通常の半固定抵抗で5mA以上流すのは信頼性の低下を招くと思いますが、それでもその方法に行きますか?



                                                                                                                                                                >のように全てここを通るというところが無いので1個にはできないのでしょうか。

                                                                                                                                                                はい。できません。

                                                                                                                                                                >抵抗8個を3個にしてもスペースが若干浮くだけですから、それなら現状通り8本並べておこうかなと思いますが。

                                                                                                                                                                そもそも、LEDは同色だけの想定ですか?

                                                                                                                                                                3色×3でとか、9色とか考えないのですか?そういう想定も当然あるのだと思っていました。



                                                                                                                                                                >今朝この状況に気づいてから1時間たっても、超スローのままです。

                                                                                                                                                                フェイズ5以降が動かなかった状態で、ウェイト時間は演算で出しているのでどこかでエラーになった可能性はありますが、本来は時間が掛かっても必ず停滞からは抜け、リセットされるはずですが、さて。。



                                                                                                                                                                >一度電源を切って再スタートしたのですが、1点灯2秒の超スローを十数分のあと1点灯1秒になったあとしばらくするとまた超スローに戻り、それより速い段階になってくれません。

                                                                                                                                                                さて??

                                                                                                                                                                >一度書き込んだプログラムですから、再起動したら同じ動作になると思うのですが。

                                                                                                                                                                プログラムの書き方が悪いとそうなる事はありますし、実行中にプログラム自体を書き換える場合もあります。

                                                                                                                                                                とりあえず、上のHEXを、速度2倍にし、本来通りフェイズ7まで動くように修正したものと差し替えましたが、これも多分リセット30回で止まります。
                                                                                                                                                                Re^78: LED Cube
                                                                                                                                                                なんじゃらほい 2017/11/22 20:32
                                                                                                                                                                1. [3535] > とりあえず、上のHEXを、速度2倍にし、本来通りフェイズ7まで動くように修正したものと差し替えました

                                                                                                                                                                  2秒刻みが1秒刻み始まりになりましたが、そのスピードのままです。40分見ていましたが速くなっていきません。パタンは変わります。

                                                                                                                                                                  昨日1秒刻みまでしか早くならなくなった11/20バージョンを改めて書き込んでみました。0.3秒くらい刻みのスピードまではなるのですが、走り回るスピードにはなりません。
                                                                                                                                                                  今回の11/22バージョンも再書き込みしてみましたが、開始時から1秒刻みのままです。

                                                                                                                                                                  > フェイズ0で35段階で減速
                                                                                                                                                                  > フェイズ1で34段階で加速
                                                                                                                                                                  > フェイズ2で25段階で減速
                                                                                                                                                                  > フェイズ3で24段階で加速
                                                                                                                                                                  > フェイズ4で19段階で減速
                                                                                                                                                                  > フェイズ5で18段階で加速
                                                                                                                                                                  > フェイズ6で15段階で減速
                                                                                                                                                                  > フェイズ7で14段階で加速

                                                                                                                                                                  40分ほどは眺めていたのですが、もっと長時間かかって変わっていくのでしょうか。

                                                                                                                                                                  一度動いたものが次からそのようにならないというのはどうにも不思議です。

                                                                                                                                                                  > 実行中にプログラム自体を書き換える場合もあります。

                                                                                                                                                                  走っているプログラム自身が自分を書き変えてその状態のまま残るということですか。不思議です。

                                                                                                                                                                  > 30回というのはマイコンのリセット回数です。

                                                                                                                                                                  ループ全体を30回ループするとという意味ではないのですね。リセット30回ということは、31回目の起動からは走らなくなってしまうということですか?

                                                                                                                                                                  > ロジックICや簡単なIC(555とか)の置き換えぐらいは出来るように

                                                                                                                                                                  そうですね。そのためにはまず555の機能をきちんと理解しなければなりません。「回路図のとおりに作ったら動いた」から脱却しなければなりません。

                                                                                                                                                                  電流制限抵抗については了解しました。8本並べでいきます。

                                                                                                                                                                  色ごとに抵抗値を変えてバランスを取るのには都合よいわけですね。
                                                                                                                                                                  色違いLEDにとは考えていません。赤青黄色のネオンの街みたいになるのもどうかなと思って、単色使いのシック路線でいこうと思っています。
                                                                                                                                                                  Re^79: LED Cube
                                                                                                                                                                  daruma 2017/11/23 12:32
                                                                                                                                                                  1. [3536] そもそもが何も考えずにプログラムされたものなので、非常に速度変化が遅いのです。

                                                                                                                                                                    一通りパターンが終わるまでを1ターンとすると、1ターン6分強で速くなる速度は2.5%なので10秒程度の短縮です。

                                                                                                                                                                    1フェイズ36段階(36ターン)あって、10ターン回って、1時間経過しても1ターンが5分程度あるのでしょう。

                                                                                                                                                                    >2秒刻みが1秒刻み始まりになりましたが、そのスピードのままです。40分見ていましたが速くなっていきません。パタンは変わります。

                                                                                                                                                                    少しずつ速くなっているはずです。

                                                                                                                                                                    >昨日1秒刻みまでしか早くならなくなった11/20バージョンを改めて書き込んでみました。0.3秒くらい刻みのスピードまではなるのですが、走り回るスピードにはなりません。
                                                                                                                                                                    >今回の11/22バージョンも再書き込みしてみましたが、開始時から1秒刻みのままです。

                                                                                                                                                                    >40分ほどは眺めていたのですが、もっと長時間かかって変わっていくのでしょうか。

                                                                                                                                                                    多分、数時間かかりますね。

                                                                                                                                                                    数時間待ちはあまりにも酷いので「これじゃ駄目じゃん」程度には直しました。

                                                                                                                                                                    リセット直後のみ、フェイズ2から開始

                                                                                                                                                                    > フェイズ0で1.275秒間隔〜15段階で加速
                                                                                                                                                                    > フェイズ1で14段階で減速
                                                                                                                                                                    > フェイズ2で1.275秒間隔〜10段階で加速
                                                                                                                                                                    > フェイズ3で9段階で減速
                                                                                                                                                                    > フェイズ4で1.275秒間隔〜7段階で加速
                                                                                                                                                                    > フェイズ5で6段階で減速
                                                                                                                                                                    > フェイズ6で1.275秒間隔〜5段階で加速
                                                                                                                                                                    > フェイズ7で5段階で減速
                                                                                                                                                                    > フェイズ8で他のフェイズの2倍の速度から10段階で加速
                                                                                                                                                                    > フェイズ9で他のフェイズの2倍の速度から10段階で減速

                                                                                                                                                                    差し替え済みですが、アセンブルのエラーチェックのみなので動くかは判りません、
                                                                                                                                                                    Re^80: LED Cube
                                                                                                                                                                    なんじゃらほい 2017/11/23 16:12
                                                                                                                                                                    1. [3537] 少しずつ速くなってたいへんな時間を要するのですね。
                                                                                                                                                                      起動時1秒強刻みだったのが30分で1秒ちようどくらい、さらに20分後1秒弱刻みになりました。
                                                                                                                                                                      1時間10分程経過したところでパラパラという動き、0.5秒刻みくらいでしょうか。さらに10分程たつと若干遅くなりだしていました。この間目を離したうちにトップスピードを通り過ぎてしまったのか、そこまで行かずに遅くなり始めたのかわかりません。※後述※先日初めて走ったときの最速状態にはお目にかかっていません。
                                                                                                                                                                      回数で進んでいるのでしょうから、遅い段階では所要時間が長く速い段階は短時間に過ぎるのでしょう。2時間半ほど経過した現在は最も遅い1秒強刻みの段階です。

                                                                                                                                                                      遅い段階を取り除いて速い後半だけにしていただくわけにはいきませんか。実用範囲は、感覚的な表現ですが「パラパラパラ〜」→「ピュンピュン」→「複数同時点灯に見える」あたりを期待しています。

                                                                                                                                                                      ※※
                                                                                                                                                                      その後、トップスピードを現認できました。0.5秒刻み(1秒に2発)になったあたりから目を離さずに見ていると、0.3秒刻み(1秒に3発)になり、0.2秒刻み(1秒に5発)の「パラパラパラ〜」になり、次いで「ピュンピュン」と走り回る速さになった後減速に転じました。測定値ではなく見た目の速さ表記です。
                                                                                                                                                                      Re^81: LED Cube
                                                                                                                                                                      daruma 2017/11/23 20:21
                                                                                                                                                                      1. [3538] 試作3号機をケースに収めました。
                                                                                                                                                                        3mm厚のシナベニヤをカッターで切って木工ボンドで貼りました。この写真ではよく見えませんが、天面には1mm幅のスリットを3本彫って、キューブを装着した基板を後方から差し入れています。当初はヘッダソケットの位置に穴を開けて足を外から差し込む構想でしたが、足が軟らかくて挿し難くてこのようにしました。
                                                                                                                                                                        塗装は水性ウレタンニスを刷毛塗りしてみたのですが、きれいにいかなくて意図せぬアンティーク調になってしまいました。素人塗装はやはりスプレーがいいです。
                                                                                                                                                                        キューブ部作りは4個めで多少熟達しましたがこの程度です。足が少々長すぎて背が高くなってしまいました。これでは立方体じゃありませんね。
                                                                                                                                                                        Re^82: LED Cube
                                                                                                                                                                        daruma 2017/11/24 16:46 *
                                                                                                                                                                        1. [3539] >遅い段階を取り除いて速い後半だけにしていただくわけにはいきませんか。

                                                                                                                                                                          やるのは簡単ですが、それをやったらdarumaさんのやること(工夫すること)が無くなってしまいます。

                                                                                                                                                                          >実用範囲は、感覚的な表現ですが「パラパラパラ〜」→「ピュンピュン」→「複数同時点灯に見える」あたりを期待しています。

                                                                                                                                                                          それだと、0.2秒〜0,001秒あたりでしょうね。

                                                                                                                                                                          基本パターンのみの「それっぽいもの」をつくりましたので、色々なパターンはがんばって作って下さい。

                                                                                                                                                                          3-3_16F87SAMPLE3.HEX
                                                                                                                                                                          :020000040000FA
                                                                                                                                                                          :10000000831660308F0000308600F0308500811745
                                                                                                                                                                          :10001000831207309C00850186018514051585151E
                                                                                                                                                                          :10002000FF30A6000130A800152832203E203620DF
                                                                                                                                                                          :100030003E203A203E2036203E202808A602031803
                                                                                                                                                                          :1000400015280130A60032203E2036203E203A20DE
                                                                                                                                                                          :100050003E2036203E202808A607031C2328FF3018
                                                                                                                                                                          :10006000A6001528851005158515080085140511AD
                                                                                                                                                                          :1000700085150800851405158511080005108601F1
                                                                                                                                                                          :1000800006145B20860186145B20860106155B2022
                                                                                                                                                                          :10009000860186155B20860106165B208601861682
                                                                                                                                                                          :1000A0005B20860106175B20860186175B20860190
                                                                                                                                                                          :1000B00005145B2008002608A7006E20A708031976
                                                                                                                                                                          :1000C0000800A70B5D2808001330A1000000000005
                                                                                                                                                                          :1000D0000000A10B66280000000008006430A300A7
                                                                                                                                                                          :1000E0000000000000000000000000000000A30B62
                                                                                                                                                                          :1000F000702808003230A4006420A40B7C2808007B
                                                                                                                                                                          :100100006430A4006420A40B822808002830A500D5
                                                                                                                                                                          :100110007A20A50B882808006430A5007A20A50B5A
                                                                                                                                                                          :100120008E280800C930A5007A20A50B9428080065
                                                                                                                                                                          :02400E00503F21
                                                                                                                                                                          :02401000FD3F72
                                                                                                                                                                          :00000001FF

                                                                                                                                                                          ソースはこちら
                                                                                                                                                                          https://yahoo.jp/box/7ZY1_x

                                                                                                                                                                          101行 MOVLW D'1'
                                                                                                                                                                          102行 MOVWF STEPDATA

                                                                                                                                                                          101行の数値を大きくすると加減速の変化速度が速くなります。

                                                                                                                                                                          あ、減速に転換する前の初期値の再設定が抜けているので、段階的な減速がされない模様、なので修正 更新日時 2017/11/25(土)10:15

                                                                                                                                                                          DPCNTが0でWAITXがコールされた場合に桁割れを防止するための処理を追加
                                                                                                                                                                          更新日時 2017/11/25(土)10:29
                                                                                                                                                                          Re^83: LED Cube
                                                                                                                                                                          なんじゃらほい 2017/11/24 20:52
                                                                                                                                                                          1. [3540] 基本パターンありがとうございます。
                                                                                                                                                                            ソースをじっくり読んで実験しながら牛歩で行きます。
                                                                                                                                                                            > 101行 MOVLW D'1'
                                                                                                                                                                            > 102行 MOVWF STEPDATA
                                                                                                                                                                            で速さをセットして、GOTO MAIN
                                                                                                                                                                            MAINの中で無限ループしているのをカウントして脱出し速さ変更と、そんな感じでしょうか。
                                                                                                                                                                            MAINの中に速さの違うループをいくつも書き並べるというスタイルが、冗長になっても単純でしょうか。
                                                                                                                                                                            MAINを格下げしてサブルーチンにし、速さをセットしてはそれを呼ぶという筋書きを新MAINとするのがすっきりするでしょうか。

                                                                                                                                                                            あ、走らせているうちに速くなりました。定速だけではないんですね。この値は速さ(点灯時間)ではなくて「加減速の変化速度」ですか。速さはすでに何段階か並んでいるんですね。早合点せずいろいろやってみます。
                                                                                                                                                                            Re^84: LED Cube
                                                                                                                                                                            daruma 2017/11/24 23:42
                                                                                                                                                                            1. [3541] おさらいして、MPLAB X IDE でbuildして書き込むことができるようになりました。

                                                                                                                                                                              昨日のソースを書き込んで走らせてみました。トップスピードに達してスローに戻るまで10分でした。

                                                                                                                                                                              > 101行 MOVLW D'1'
                                                                                                                                                                              を'2'にしても目に見えて変化はなかったので、、'9'にすると2分になりました。さらに'32'にすると1分弱でした。

                                                                                                                                                                              この値は変化の刻みなんですね。値を大きくすると大股で変化すると。

                                                                                                                                                                              初期スピードとトップスピードをもっと速くすることと、所要時間が短くなるぶんループ回数を多くすることを試みたいと思います。「どこかとどこか」の値を変えるんでしょうね。ソースを睨んで探ります。
                                                                                                                                                                              Re^85: LED Cube
                                                                                                                                                                              daruma 2017/11/25 18:46
                                                                                                                                                                              1. [3542] >
                                                                                                                                                                                > 昨日のソースを書き込んで走らせてみました。トップスピードに達してスローに戻るまで10分でした。

                                                                                                                                                                                ん?

                                                                                                                                                                                あ、減速に転換する前の初期値の再設定が抜けているので、段階的な減速がされない模様、なので修正 更新日時 2017/11/25(土)10:15

                                                                                                                                                                                DPCNTが0でWAITXがコールされた場合に桁割れを防止するための処理を追加
                                                                                                                                                                                更新日時 2017/11/25(土)10:29

                                                                                                                                                                                これ気がついてないですか?

                                                                                                                                                                                昨日のものにはバグがあって、半分しか機能していないので最新のソースを使って下さい。

                                                                                                                                                                                >
                                                                                                                                                                                > > 101行 MOVLW D'1'
                                                                                                                                                                                > を'2'にしても目に見えて変化はなかったので、、'9'にすると2分になりました。さらに'32'にすると1分弱でした。
                                                                                                                                                                                >
                                                                                                                                                                                > この値は変化の刻みなんですね。値を大きくすると大股で変化すると。

                                                                                                                                                                                1だと256(変化幅1mS刻み)段階、2だと128段階(変化幅2mS刻み)、10だと25〜26段階(変化幅10mS刻み)です。

                                                                                                                                                                                >
                                                                                                                                                                                > 初期スピードとトップスピードをもっと速くすることと、

                                                                                                                                                                                WAITXでコールしている1mSの値が変化の最小単位で、ウエイト時間の基準になります。

                                                                                                                                                                                WAITXでコールされているウェイト時間が、DPCNTの回数だけ繰り返され、ひとつのLEDの点灯持続時間になります。

                                                                                                                                                                                よってTIME1MをTIME100にすれば、速度の初期値も最高速も約10倍になります。

                                                                                                                                                                                >所要時間が短くなるぶんループ回数を多くすることを試みたいと思います。
                                                                                                                                                                                >「どこかとどこか」の値を変えるんでしょうね。ソースを睨んで探ります。

                                                                                                                                                                                ループ回数は101行が1の時が最高です。それ以上にする場合は、ある程度の書き足しが必要です。
                                                                                                                                                                                Re^86: LED Cube
                                                                                                                                                                                なんじゃらほい 2017/11/25 22:59
                                                                                                                                                                                1. [3543] 新規投稿は追っているのですが、遡って過去の投稿に追記や変更があったのを見落としていました、

                                                                                                                                                                                  > 更新日時 2017/11/25(土)10:29
                                                                                                                                                                                  YAHOOボックスに行って、更新日時 2017/11/25(土)10:32となっているのをダウンロードしました。

                                                                                                                                                                                  走らせると、20分でトップスピードに達し減速に転じます。昨日の実験ではガクンと初速に戻っていましたが下り坂です。

                                                                                                                                                                                  D'2'に変更すると。10分でトップスピードです。

                                                                                                                                                                                  さらに、D'2'でTIME100に変更すると、1分でトップスピードです。

                                                                                                                                                                                  D'1'に戻してTIME100では、3分でトップスピードです。

                                                                                                                                                                                  TIME1Mのときは1〜9のLEDが1発ずつ順次点灯しA〜Cに移っていく様子が見えたのですが、TIME100では横並び3灯が同時点灯しているように見えこれがA〜Cと移ります。トップでは全点灯に見えます。別パタンにしなくてもスピードだけでパタンが違って見えるのがいいですね。

                                                                                                                                                                                  「1発点灯横移動」から始まるようにするには、TIME500を作ってそれをコールすればよさそうですが、TIME100のDの値を2+(5*99)-1+2+3で'99'にすればよいでしょうか。それとも、TIME5MにならってTIME100をコールする形にするのがよいでしょうか。

                                                                                                                                                                                  高速ではループがあっというまに過ぎてしまうのですが、D'1'のときが最高なのでしたら、短時間の変化が波のように繰り返されるのがいいかもしれませんね。
                                                                                                                                                                                  Re^87: LED Cube
                                                                                                                                                                                  daruma 2017/11/26 10:11
                                                                                                                                                                                  1. [3544] >TIME500を作ってそれをコールすればよさそうですが、
                                                                                                                                                                                    >TIME100のDの値を2+(5*99)-1+2+3で'99'にすればよいでしょうか。
                                                                                                                                                                                    >それとも、TIME5MにならってTIME100をコールする形にするのがよいでしょうか。

                                                                                                                                                                                    サブルーチンの多重コールは出来るだけ避けた方がいいので、大幅に可読性が落ちる場合を除いて、TIME100のDの値を増やす方がいいですが、現状では500マイクロ秒のウェイトが何箇所も必要な状況ではないので、WAITXのループ内でCALL TIME100を複数回(5回)繰り返すほうが、プログラムが短くて微調整もしやすいです。

                                                                                                                                                                                    難点は美しくないというだけですね。
                                                                                                                                                                                    Re^88: LED Cube
                                                                                                                                                                                    なんじゃらほい 2017/11/26 11:53
                                                                                                                                                                                    1. [3545] TIME100のサブルーチンはそのままにしてコピペで同様のサブルーチンを作り、T_LP1のラベルが重複するのでT_LP1bとしました。いろいろ試してみた結果、101行MOVLW D'5'にして、TIME150 MOVLW D'29'のサブルーチンを呼ぶことにしました。
                                                                                                                                                                                      これで、
                                                                                                                                                                                      ・1発点灯横走り
                                                                                                                                                                                      ・2発点灯(に見える)横走り
                                                                                                                                                                                      ・3発点灯(に見える)横走り
                                                                                                                                                                                      ・3発点灯(に見える)縦走り
                                                                                                                                                                                      ・全点灯(に見える)トップスピード
                                                                                                                                                                                      の変化を上り坂1分下り坂1分で繰り返します。
                                                                                                                                                                                      TIME150(D'29')より速いと1発点灯から始まらず、それより遅いと1発点灯フェイズが長すぎます。
                                                                                                                                                                                      MAIN内のSTEPDATAが小さいと所要時間が長くかかって、大きいと高速フェイズがあっというまに通り過ぎ、D'5'が落ち着きどころです。
                                                                                                                                                                                      低速フェイズがあまり長くならず高速フェイズがもうすこしたっぷり見られるとよりいいのですが、回数で回しているのでそうは行きませんよね。

                                                                                                                                                                                      これまでブレッドボードで実験していましたので、これから基板図を描きます。

                                                                                                                                                                                      ところで、「30リセットで動かなくなる」問題はこのバージョンももっているでしょうか。
                                                                                                                                                                                      Re^89: LED Cube
                                                                                                                                                                                      daruma 2017/11/27 15:17
                                                                                                                                                                                      1. [3546] > これで、
                                                                                                                                                                                        > ・1発点灯横走り
                                                                                                                                                                                        > ・2発点灯(に見える)横走り
                                                                                                                                                                                        > ・3発点灯(に見える)横走り
                                                                                                                                                                                        > ・3発点灯(に見える)縦走り
                                                                                                                                                                                        > ・全点灯(に見える)トップスピード
                                                                                                                                                                                        > の変化を上り坂1分下り坂1分で繰り返します。

                                                                                                                                                                                        ずいぶん頑張りましたね。

                                                                                                                                                                                        > 低速フェイズがあまり長くならず高速フェイズがもうすこしたっぷり見られるとよりいいのですが、回数で回しているのでそうは行きませんよね。

                                                                                                                                                                                        現状レベルの延長線で高速フェイズの場合だけカウントダウンを遅くする方法があります。

                                                                                                                                                                                        例えば
                                                                                                                                                                                        変数レジスタ割付定義
                                                                                                                                                                                        CHOUFU EQU 29H

                                                                                                                                                                                        にレジスタのラベルを追加し
                                                                                                                                                                                        MOVLW D'5'
                                                                                                                                                                                        MOVWF STEPDATA

                                                                                                                                                                                        のあとに

                                                                                                                                                                                        CLRF CHOUFU

                                                                                                                                                                                        を追加

                                                                                                                                                                                        MAIN
                                                                                                                                                                                        BTFSC CHOUFU,0 ;重複フラグをチェック
                                                                                                                                                                                        GOTO S1START ;フラグ1ならS1STARTへ

                                                                                                                                                                                        MOVLW D'200' ;L SET W
                                                                                                                                                                                        SUBWF DPCNT,W ;F-W
                                                                                                                                                                                        BTFSS STATUS,C ;200以下だとS2STARTへ
                                                                                                                                                                                        GOTO S2START

                                                                                                                                                                                        S1START CLRF CHOUFU
                                                                                                                                                                                        GOTO UPSTART

                                                                                                                                                                                        S2START BSF CHOUFU,0 ;重複フラグをセット

                                                                                                                                                                                        UPSTART

                                                                                                                                                                                        ;TOP
                                                                                                                                                                                        CALL SET_A
                                                                                                                                                                                        CALL DOWN_S

                                                                                                                                                                                        このようにDPCNTの値をチェックして、基準値以下の場合のみフラグを立てて、

                                                                                                                                                                                        カウントダウンの直前に

                                                                                                                                                                                        BTFSC CHOUFU,0
                                                                                                                                                                                        GOTO S1START

                                                                                                                                                                                        CLRF CHOUFU

                                                                                                                                                                                        ;DPCNTのカウントダウン処理(通常の減算処理)
                                                                                                                                                                                        MOVF STEPDATA,W
                                                                                                                                                                                        SUBWF DPCNT,F ;F-W
                                                                                                                                                                                        BTFSC STATUS,C ;UNDER 0 THEN 0
                                                                                                                                                                                        GOTO MAIN

                                                                                                                                                                                        重複フラグをチェックし、フラグが立っている場合のみカウントダウンを行わずに、表示ルーチントップへジャンプさせれば、この値の場合ではDPCNTで200以下になると2回ずつ同じスピードでループするようになります。

                                                                                                                                                                                        同様に減速ループにもラベルを変更して組み込めば、こちらも速度が速いときのみ2回ループになるので、高速時の表示時間が長くなります。
                                                                                                                                                                                        2回では「焼け石に水」感が強いですが。

                                                                                                                                                                                        まあ、これは初級レベルの力業プログラムで、中級レベルのプログラムなら割り込みを使って、一定時間ごとにカウントダウンさせるという方法も可能です。

                                                                                                                                                                                        というか、まともなプログラマなら割り込み提案しますね。
                                                                                                                                                                                        ただ、割り込みを使うとなると、インターバル時間を数値で出さなければなりません。しかもレジスタの設定が結構面倒です。

                                                                                                                                                                                        参考
                                                                                                                                                                                        http://ktsite.ddo.jp/PIC/16f88/TMR0.html

                                                                                                                                                                                        4MHZなら65mS位までタイマー0でインターバルが作れます。
                                                                                                                                                                                        タイマー1を使えばもっと長いインターバルも作れます。

                                                                                                                                                                                        > ところで、「30リセットで動かなくなる」問題はこのバージョンももっているでしょうか。

                                                                                                                                                                                        ありません。多分darumaさんが頑張って組み込まないとそうなりません(笑)
                                                                                                                                                                                        Re^90: LED Cube
                                                                                                                                                                                        なんじゃらほい 2017/11/27 19:59
                                                                                                                                                                                        1. [3547] ; 変数レジスタ割付定義 に
                                                                                                                                                                                          CHOUFU EQU 29H
                                                                                                                                                                                          を加えました。

                                                                                                                                                                                          ; 入出力ピンモード初期化 の下の方を
                                                                                                                                                                                          MOVLW D'5'
                                                                                                                                                                                          MOVWF STEPDATA
                                                                                                                                                                                          CLRF CHOUFU  ;←追加
                                                                                                                                                                                          としました。

                                                                                                                                                                                          MAIN の冒頭に

                                                                                                                                                                                          BTFSC CHOUFU,0 ;重複フラグをチェック
                                                                                                                                                                                          GOTO S1START ;フラグ1ならS1STARTへ

                                                                                                                                                                                          CLRF CHOUFU

                                                                                                                                                                                          MOVLW D'200' ;L SET W
                                                                                                                                                                                          SUBWF DPCNT,W ;F-W
                                                                                                                                                                                          BTFSS STATUS,C ;200以下だとS2STARTへ
                                                                                                                                                                                          GOTO S2START

                                                                                                                                                                                          S1START CLRF CHOUFU
                                                                                                                                                                                          GOTO UPSTART

                                                                                                                                                                                          S2START BSF CHOUFU,0 ;重複フラグをセット

                                                                                                                                                                                          UPSTART
                                                                                                                                                                                          を加えました。

                                                                                                                                                                                          これでひとまず走りました。

                                                                                                                                                                                          次に減速ループです。
                                                                                                                                                                                          MAIN2 が減速ループですよね。
                                                                                                                                                                                          冒頭に
                                                                                                                                                                                          BTFSC CHOUFU,0 ;重複フラグをチェック
                                                                                                                                                                                          GOTO S3START ;フラグ1ならS3STARTへ

                                                                                                                                                                                          CLRF CHOUFU

                                                                                                                                                                                          MOVLW D'200' ;L SET W
                                                                                                                                                                                          SUBWF DPCNT,W ;F-W
                                                                                                                                                                                          BTFSS STATUS,C ;200以下だとS4STARTへ
                                                                                                                                                                                          GOTO S4START

                                                                                                                                                                                          S3START CLRF CHOUFU
                                                                                                                                                                                          GOTO DNSTART

                                                                                                                                                                                          S4START BSF CHOUFU,0 ;重複フラグをセット

                                                                                                                                                                                          DNSTART

                                                                                                                                                                                          を加えました。
                                                                                                                                                                                          S1STARTをS3STARTに、S2STARTをS4STARTに変更してあります。
                                                                                                                                                                                          UPSTARTをDNSTARTに変更しました。

                                                                                                                                                                                          これも走りました。

                                                                                                                                                                                          やったことを振り返りながら以上書きましたが、あと何かしたかなぁ・・・。

                                                                                                                                                                                          さてこのバージョンも走ったわけですが、これで正しいでしょうか。体感的に、「う〜ん、いくらか最高速フェイズが長くなったかなあ」くらいです。「一瞬」が「二瞬」になったと言いましょうか・・・。

                                                                                                                                                                                          > > ところで、「30リセットで動かなくなる」問題はこのバージョンももっているでしょうか。
                                                                                                                                                                                          > ありません。多分darumaさんが頑張って組み込まないとそうなりません(笑)

                                                                                                                                                                                          安心しました。そんな頑張りはしません。

                                                                                                                                                                                          ※ 短い周期で繰り返すように、スピード変化刻みをD'5'からD'10'に増やしました。上りつめるまで25秒位です。
                                                                                                                                                                                          Re^91: LED Cube
                                                                                                                                                                                          daruma 2017/11/28 10:50
                                                                                                                                                                                          1. [3548] > さてこのバージョンも走ったわけですが、これで正しいでしょうか。

                                                                                                                                                                                            良さそうですが、真偽は計測器で測らないと不明でしょうね。



                                                                                                                                                                                            >体感的に、「う〜ん、いくらか最高速フェイズが長くなったかなあ」くらいです。「一瞬」が「二瞬」になったと言いましょうか・・・。

                                                                                                                                                                                            そんなものでしょう。

                                                                                                                                                                                            では.チカラ技の第2弾(笑)

                                                                                                                                                                                            > MAIN



                                                                                                                                                                                            > UPSTART

                                                                                                                                                                                            の間のものを

                                                                                                                                                                                            MOVF CHOUFU,F
                                                                                                                                                                                            BTFSS STATUS,Z
                                                                                                                                                                                            GOTO UPSTART ;0以外なら重複回数設定済みとして表示を実行

                                                                                                                                                                                            NOWCNTCK ;重複カウンタが0の場合のみ現在のDPCNT値をチェック、重複回数を設定
                                                                                                                                                                                            ;「以下になる状態」を求めるため、チェックする値の小さいものから処理する
                                                                                                                                                                                            ;条件分岐はもっと増やせるが1項目ごとに1ターン(一巡)で10マイクロ秒位の遅れ(点灯インターバル)が増加する

                                                                                                                                                                                            MOVLW D'32' ;L SET W
                                                                                                                                                                                            SUBWF DPCNT,W ;F-W
                                                                                                                                                                                            BTFSS STATUS,C ;32以下だとS1SETへ
                                                                                                                                                                                            GOTO S1SET

                                                                                                                                                                                            MOVLW D'64' ;L SET W
                                                                                                                                                                                            SUBWF DPCNT,W ;F-W
                                                                                                                                                                                            BTFSS STATUS,C ;64以下だとS2SETへ
                                                                                                                                                                                            GOTO S2SET

                                                                                                                                                                                            MOVLW D'128' ;L SET W
                                                                                                                                                                                            SUBWF DPCNT,W ;F-W
                                                                                                                                                                                            BTFSS STATUS,C ;128以下だとS3SETへ
                                                                                                                                                                                            GOTO S3SET

                                                                                                                                                                                            GOTO UPSTART ;どれも該当しないなら、そのまま表示へ

                                                                                                                                                                                            S1SET MOVLW D'200'
                                                                                                                                                                                            MOVWF CHOUFU
                                                                                                                                                                                            GOTO UPSTART

                                                                                                                                                                                            S2SET MOVLW D'120'
                                                                                                                                                                                            MOVWF CHOUFU
                                                                                                                                                                                            GOTO UPSTART

                                                                                                                                                                                            S3SET MOVLW D'30'
                                                                                                                                                                                            MOVWF CHOUFU
                                                                                                                                                                                            GOTO UPSTART

                                                                                                                                                                                            に、入れ替え、


                                                                                                                                                                                            ;MID2
                                                                                                                                                                                            CALL SET_B
                                                                                                                                                                                            CALL DOWN_S

                                                                                                                                                                                            の表示終わり後を

                                                                                                                                                                                            MOVF CHOUFU,F ;重複カウンタが0にならそのままCD_GOへ(初回・重複範囲外)
                                                                                                                                                                                            BTFSC STATUS,Z
                                                                                                                                                                                            GOTO CD_GO

                                                                                                                                                                                            DECFSZ CHOUFU,F ;重複カウンタをカウントダウンし、0になるまでUPSTARTへ
                                                                                                                                                                                            GOTO UPSTART
                                                                                                                                                                                            GOTO CD_GO ;0になったらDPCNTのカウントダウンへ

                                                                                                                                                                                            に入れ替え、



                                                                                                                                                                                            カウントダウン部分にCD_GOのラベルを追加で

                                                                                                                                                                                            CD_GO MOVF STEPDATA,W
                                                                                                                                                                                            SUBWF DPCNT,F ;F-W
                                                                                                                                                                                            BTFSC STATUS,C ;UNDER 0 THEN 0
                                                                                                                                                                                            GOTO MAIN ;F-W

                                                                                                                                                                                            4段階の重複ループ回数の設定が出来るようになります。

                                                                                                                                                                                            しきい値や重複回数をカスタマイズすれば、見せたい部分を長く見せられるようになります。

                                                                                                                                                                                            更新済みソースはこちら
                                                                                                                                                                                            https://yahoo.jp/box/7ZY1_x
                                                                                                                                                                                            Re^92: LED Cube
                                                                                                                                                                                            なんじゃらほい 2017/11/28 19:35
                                                                                                                                                                                            1. [3549] どうも難しいです。

                                                                                                                                                                                              > 表示終わり後を
                                                                                                                                                                                              これはどこでしょう。

                                                                                                                                                                                              > CD_GOのラベルを追加
                                                                                                                                                                                              ラベルを付けるのは、
                                                                                                                                                                                              ;MID2
                                                                                                                                                                                              CALL SET_B
                                                                                                                                                                                              CALL DOWN_S
                                                                                                                                                                                              の下の
                                                                                                                                                                                              MOVF STEPDATA,W
                                                                                                                                                                                              のところでしょうか。
                                                                                                                                                                                              Re^93: LED Cube
                                                                                                                                                                                              daruma 2017/11/28 20:51
                                                                                                                                                                                              1. [3550] 昨夜の「チカラ技の第2弾」はさておき、

                                                                                                                                                                                                フラグを立てるバージョンで、WAITXでフラグを見て立っていたらTIMEをたくさん呼ぶ作戦を試みました。

                                                                                                                                                                                                WAITX MOVF DPCNT,W
                                                                                                                                                                                                MOVWF DPCNTW ;
                                                                                                                                                                                                TLXR CALL TIME150

                                                                                                                                                                                                BTFSS CHOUFU,0 ;重複フラグをチェック
                                                                                                                                                                                                GOTO WAITX2 ;フラグ0ならWAITX2へ
                                                                                                                                                                                                CLRF CHOUFU
                                                                                                                                                                                                CALL TIME150
                                                                                                                                                                                                CALL TIME150
                                                                                                                                                                                                CALL TIME150
                                                                                                                                                                                                CALL TIME150
                                                                                                                                                                                                CALL TIME150

                                                                                                                                                                                                WAITX2 MOVF DPCNTW,F
                                                                                                                                                                                                BTFSC STATUS,Z
                                                                                                                                                                                                RETURN
                                                                                                                                                                                                DECFSZ DPCNTW,F
                                                                                                                                                                                                GOTO TLXR
                                                                                                                                                                                                RETURN

                                                                                                                                                                                                上記がよいかどうか以前に、フラグが立った状態でここへ来ないのです。BTFSSとBTFSCとで試して、判断分岐が動作すること自体は確かめたのですが、CHOUFUはいつも0のようです。

                                                                                                                                                                                                もしや、
                                                                                                                                                                                                http://mpga.jp/akizuki-fan/index.php?mode=article&id=3547&page=1
                                                                                                                                                                                                のバージョンでフラグが機能していないのではと不安になりました。
                                                                                                                                                                                                そこで、フラグバージョンとその前のバージョンとを10周期回して計時し比較しました。どちらも、STEPDATAは'5'、TIME150です。
                                                                                                                                                                                                結果、10回目のトップスピードに達する所要時間はどちらも14分00秒でした。「一瞬が二瞬に」もなっていなかったようです。
                                                                                                                                                                                                1秒が2秒にとなっても10回で10秒遅くなるはずですよね。
                                                                                                                                                                                                私が書き変えた部分、どこかまずいでしょうか。
                                                                                                                                                                                                以下、長いですが貼ります。

                                                                                                                                                                                                ;******************************
                                                                                                                                                                                                ; 変数レジスタ割付定義
                                                                                                                                                                                                ;******************************

                                                                                                                                                                                                DPDT EQU 20H ;LCD output data ←16F87のRAM先頭アドレス
                                                                                                                                                                                                CNT1 EQU 21H ;タイマ用カウンタ
                                                                                                                                                                                                CNT2 EQU 22H
                                                                                                                                                                                                CNT3 EQU 23H
                                                                                                                                                                                                CNT4 EQU 24H
                                                                                                                                                                                                CNT5 EQU 25H
                                                                                                                                                                                                DPCNT EQU 26H
                                                                                                                                                                                                DPCNTW EQU 27H
                                                                                                                                                                                                STEPDATA EQU 28H
                                                                                                                                                                                                STAGECNT EQU 2DH

                                                                                                                                                                                                CHOUFU EQU 29H

                                                                                                                                                                                                ORG 00H

                                                                                                                                                                                                ;************************************
                                                                                                                                                                                                ; 入出力ピンモード初期化
                                                                                                                                                                                                ;************************************

                                                                                                                                                                                                PORT_INI
                                                                                                                                                                                                ;中略

                                                                                                                                                                                                BSF STATUS,RP0 ;Set page 1

                                                                                                                                                                                                MOVLW B'01100000' ;下位2ビット注意 00じゃないとCONFIGのINTRC_IOが無効になる
                                                                                                                                                                                                MOVWF OSCCON ;BANK1

                                                                                                                                                                                                MOVLW B'00000000' ; 0-7 OUTPUT
                                                                                                                                                                                                MOVWF TRISB ;PortB set
                                                                                                                                                                                                MOVLW B'11110000' ;RA0〜3以外IN
                                                                                                                                                                                                MOVWF TRISA ;PortA set

                                                                                                                                                                                                BSF OPTION_REG,7 ;BANK1 0でプルアップ有効
                                                                                                                                                                                                BCF STATUS,RP0 ;Set Page 0

                                                                                                                                                                                                MOVLW 07H ;07Hを設定 16F87/88をPORTAをデジタルI/Oに
                                                                                                                                                                                                MOVWF CMCON ; コンパレータOFF
                                                                                                                                                                                                CLRF PORTA
                                                                                                                                                                                                CLRF PORTB ;all clear

                                                                                                                                                                                                BSF PORTA,1 ;ABCコントロール クリア済み
                                                                                                                                                                                                BSF PORTA,2 ;ABCコントロール クリア済み
                                                                                                                                                                                                BSF PORTA,3 ;ABCコントロール クリア済み

                                                                                                                                                                                                MOVLW D'255'
                                                                                                                                                                                                MOVWF DPCNT

                                                                                                                                                                                                MOVLW D'5'
                                                                                                                                                                                                MOVWF STEPDATA

                                                                                                                                                                                                CLRF CHOUFU

                                                                                                                                                                                                GOTO MAIN

                                                                                                                                                                                                ;...............................
                                                                                                                                                                                                MAIN

                                                                                                                                                                                                BTFSC CHOUFU,0 ;重複フラグをチェック
                                                                                                                                                                                                GOTO S1START ;フラグ1ならS1STARTへ

                                                                                                                                                                                                CLRF CHOUFU

                                                                                                                                                                                                MOVLW D'200' ;L SET W
                                                                                                                                                                                                SUBWF DPCNT,W ;F-W
                                                                                                                                                                                                BTFSS STATUS,C ;200以下だとS2STARTへ
                                                                                                                                                                                                GOTO S2START

                                                                                                                                                                                                S1START CLRF CHOUFU
                                                                                                                                                                                                GOTO UPSTART

                                                                                                                                                                                                S2START BSF CHOUFU,0 ;重複フラグをセット

                                                                                                                                                                                                UPSTART

                                                                                                                                                                                                ;TOP
                                                                                                                                                                                                CALL SET_A
                                                                                                                                                                                                CALL DOWN_S

                                                                                                                                                                                                ;MID
                                                                                                                                                                                                CALL SET_B
                                                                                                                                                                                                CALL DOWN_S

                                                                                                                                                                                                ;LOWER
                                                                                                                                                                                                CALL SET_C
                                                                                                                                                                                                CALL DOWN_S

                                                                                                                                                                                                ;MID2
                                                                                                                                                                                                CALL SET_B
                                                                                                                                                                                                CALL DOWN_S

                                                                                                                                                                                                MOVF STEPDATA,W
                                                                                                                                                                                                SUBWF DPCNT,F ;F-W
                                                                                                                                                                                                BTFSC STATUS,C ;UNDER 0 THEN 0
                                                                                                                                                                                                GOTO MAIN

                                                                                                                                                                                                MOVLW D'1'
                                                                                                                                                                                                MOVWF DPCNT

                                                                                                                                                                                                MAIN2

                                                                                                                                                                                                BTFSC CHOUFU,0 ;重複フラグをチェック
                                                                                                                                                                                                GOTO S3START ;フラグ1ならS3STARTへ

                                                                                                                                                                                                CLRF CHOUFU

                                                                                                                                                                                                MOVLW D'200' ;L SET W
                                                                                                                                                                                                SUBWF DPCNT,W ;F-W
                                                                                                                                                                                                BTFSS STATUS,C ;200以下だとS4STARTへ
                                                                                                                                                                                                GOTO S4START

                                                                                                                                                                                                S3START CLRF CHOUFU
                                                                                                                                                                                                GOTO DNSTART

                                                                                                                                                                                                S4START BSF CHOUFU,0 ;重複フラグをセット

                                                                                                                                                                                                DNSTART

                                                                                                                                                                                                ;*********************************
                                                                                                                                                                                                ; タイマーサブルーチン 4MHZ
                                                                                                                                                                                                ;*********************************

                                                                                                                                                                                                TIME100 MOVLW D'19' ;2+(5*19)-1+2+3=100 1×100=100MicroSec
                                                                                                                                                                                                MOVWF CNT1
                                                                                                                                                                                                T_LP1 NOP
                                                                                                                                                                                                NOP
                                                                                                                                                                                                NOP
                                                                                                                                                                                                DECFSZ CNT1,F
                                                                                                                                                                                                GOTO T_LP1
                                                                                                                                                                                                NOP
                                                                                                                                                                                                NOP
                                                                                                                                                                                                RETURN ;99Micro sec(about)

                                                                                                                                                                                                TIME150 MOVLW D'29' ;2+(5*29)-1+2+3=150 1×150=150MicroSec
                                                                                                                                                                                                MOVWF CNT1
                                                                                                                                                                                                T_LP1b NOP
                                                                                                                                                                                                NOP
                                                                                                                                                                                                NOP
                                                                                                                                                                                                DECFSZ CNT1,F
                                                                                                                                                                                                GOTO T_LP1b
                                                                                                                                                                                                NOP
                                                                                                                                                                                                NOP
                                                                                                                                                                                                RETURN ;150Micro sec(about)

                                                                                                                                                                                                ご面倒をおかけします。
                                                                                                                                                                                                Re^94: LED Cube
                                                                                                                                                                                                daruma 2017/11/29 15:06
                                                                                                                                                                                                1. [3551] > そこで、フラグバージョンとその前のバージョンとを10周期回して計時し比較しました。どちらも、STEPDATAは'5'、TIME150です。
                                                                                                                                                                                                  > 結果、10回目のトップスピードに達する所要時間はどちらも14分00秒でした。「一瞬が二瞬に」もなっていなかったようです。
                                                                                                                                                                                                  > 1秒が2秒にとなっても10回で10秒遅くなるはずですよね。
                                                                                                                                                                                                  > 私が書き変えた部分、どこかまずいでしょうか。

                                                                                                                                                                                                  >
                                                                                                                                                                                                  > ;MID2
                                                                                                                                                                                                  > CALL SET_B
                                                                                                                                                                                                  > CALL DOWN_S
                                                                                                                                                                                                  >
                                                                                                                                                                                                  > MOVF STEPDATA,W
                                                                                                                                                                                                  > SUBWF DPCNT,F ;F-W
                                                                                                                                                                                                  > BTFSC STATUS,C ;UNDER 0 THEN 0
                                                                                                                                                                                                  > GOTO MAIN
                                                                                                                                                                                                  >
                                                                                                                                                                                                  > MOVLW D'1'
                                                                                                                                                                                                  > MOVWF DPCNT

                                                                                                                                                                                                  これでは、フラグが立とうが立つまいがループ回数は増えませんから、時間に大差がなくても不思議ではありません。

                                                                                                                                                                                                  http://mpga.jp/akizuki-fan/index.php?mode=article&id=3546&page=1
                                                                                                                                                                                                  >このようにDPCNTの値をチェックして、基準値以下の場合のみフラグを立てて、

                                                                                                                                                                                                  >カウントダウンの直前に

                                                                                                                                                                                                  >BTFSC CHOUFU,0
                                                                                                                                                                                                  >GOTO S1START

                                                                                                                                                                                                  >CLRF CHOUFU

                                                                                                                                                                                                  >;DPCNTのカウントダウン処理(通常の減算処理)
                                                                                                                                                                                                  >MOVF STEPDATA,W
                                                                                                                                                                                                  >SUBWF DPCNT,F ;F-W
                                                                                                                                                                                                  >BTFSC STATUS,C ;UNDER 0 THEN 0
                                                                                                                                                                                                  >GOTO MAIN

                                                                                                                                                                                                  >重複フラグをチェックし、フラグが立っている場合のみカウント
                                                                                                                                                                                                  >ダウンを行わずに、表示ルーチントップへジャンプさせれば、
                                                                                                                                                                                                  >この値の場合ではDPCNTで200以下になると2回ずつ同じ
                                                                                                                                                                                                  >スピードでループするようになります。

                                                                                                                                                                                                  それから,WAITXは点灯時間であり=実質移動速度ですから、これを増やしても移動速度が遅くなるだけです。

                                                                                                                                                                                                  あと、フラグはDPCNTが199以下の時にしか立ちません。
                                                                                                                                                                                                  フラグ立てのしきい値はもっと小さくないと中速域がかったるくなる可能性があります。

                                                                                                                                                                                                  >昨夜の「チカラ技の第2弾」はさておき、

                                                                                                                                                                                                  昨夜の時点で修正ソースがアップロードされています。
                                                                                                                                                                                                  判らなかったら、そちらを実行してみて下さい。
                                                                                                                                                                                                  Re^95: LED Cube
                                                                                                                                                                                                  なんじゃらほい 2017/11/29 19:27
                                                                                                                                                                                                  1. [3552] > それから,WAITXは点灯時間であり=実質移動速度ですから、これを増やしても移動速度が遅くなるだけです。

                                                                                                                                                                                                    とんだ考え違いをしてしまいました。「点灯時間が延びる→そのフェイズの時間が長くなる」と思いついたのですが、延びたら低速になるんですよね。
                                                                                                                                                                                                    回数を増やすことでしかそのフェイズの時間を長くすることはできないんですね。

                                                                                                                                                                                                    で、先日のバージョンでループを増やしたつもりが
                                                                                                                                                                                                    >重複フラグをチェックし、フラグが立っている場合のみカウント
                                                                                                                                                                                                    > >ダウンを行わずに、表示ルーチントップへジャンプさせれば、
                                                                                                                                                                                                    ができていなかったのですね。「一瞬が二瞬に」なっていなかったんですね。未熟でした。

                                                                                                                                                                                                    > 昨夜の時点で修正ソースがアップロードされています。
                                                                                                                                                                                                    またしても遡っての追記に気づきませんでした。すみません。
                                                                                                                                                                                                    ダウンロードしてまずそのまま走らせました。
                                                                                                                                                                                                    STEPDATAが'1'でTIME1Mですから、長時間かかる動作ですね。1時間10分までは見ていました。
                                                                                                                                                                                                    そのあと、STEPDATAを'5'でTIME100にしたところ、順調にスピードアップしていったのですが、全点灯(に見える)まで上りついたところでそのままの状態になってしまいました。減速に転じません。どうしたことでしょう。カウンタが通り越してしまってチェックにあてはまらなくなったのでしょうか。STEPDATAが'1'でTIME1Mのままでも、辛抱強く見ていたらそうなったのかな。

                                                                                                                                                                                                    ※ STEPDATAが'1'でTIME1Mのものを寝る前に再度走らせておきました。朝になったら、全点灯(に見える)状態から抜けない状態になっていました。
                                                                                                                                                                                                    Re^96: LED Cube
                                                                                                                                                                                                    daruma 2017/11/29 23:54
                                                                                                                                                                                                    1. [3553] >どうしたことでしょう。カウンタが通り越してしまってチェックにあてはまらなくなったのでしょうか。
                                                                                                                                                                                                      >STEPDATAが'1'でTIME1Mのままでも、辛抱強く見ていたらそうなったのかな。
                                                                                                                                                                                                      >※ STEPDATAが'1'でTIME1Mのものを寝る前に再度走らせておきました。
                                                                                                                                                                                                      >朝になったら、全点灯(に見える)状態から抜けない状態になっていました。

                                                                                                                                                                                                      STEPDATA×ウェイトXの基本時間×重複設定回数なので、パラメータの設定次第で数時間になることはおかしくありません。

                                                                                                                                                                                                      こういう場合は、STEPDATAを52とかにして、無限ループか、実行時間が想定以上に長いのかの切り分けをして下さい。



                                                                                                                                                                                                      チカラ技第2弾のソースは240行〜260行の間にバグの原因があります。

                                                                                                                                                                                                      理解すれば簡単だし、勉強になるので自分で直して下さい

                                                                                                                                                                                                      チカラ技第2弾の修正HEX STEP7 1mS
                                                                                                                                                                                                      :020000040000FA
                                                                                                                                                                                                      :10000000831660308F0000308600F0308500811745
                                                                                                                                                                                                      :10001000831207309C00850186018514051585151E
                                                                                                                                                                                                      :10002000FF30A6000730A800A9011628A908031D63
                                                                                                                                                                                                      :100030002F2820302602031C262840302602031CCD
                                                                                                                                                                                                      :10004000292880302602031C2C282F28C830A9001C
                                                                                                                                                                                                      :100050002F287830A9002F281E30A9002F287120C2
                                                                                                                                                                                                      :100060007D2075207D2079207D2075207D20A908A8
                                                                                                                                                                                                      :1000700003193D28A90B2F283D282808A60203189C
                                                                                                                                                                                                      :1000800016280130A600A908031D5C28203026028E
                                                                                                                                                                                                      :10009000031C532840302602031C562880302602B9
                                                                                                                                                                                                      :1000A000031C59285C28C830A9005C287830A900B6
                                                                                                                                                                                                      :1000B0005C281E30A9005C2871207D2075207D20E1
                                                                                                                                                                                                      :1000C00079207D2075207D20A90803196A28A90BB5
                                                                                                                                                                                                      :1000D0005C286A282808A607031C4328FF30A600CE
                                                                                                                                                                                                      :1000E0001628851005158515080085140511851538
                                                                                                                                                                                                      :1000F00008008514051585110800051086010614F1
                                                                                                                                                                                                      :100100009A20860186149A20860106159A20860177
                                                                                                                                                                                                      :1001100086159A20860106169A20860186169A2050
                                                                                                                                                                                                      :10012000860106179A20860186179A2086010514F3
                                                                                                                                                                                                      :100130009A2008002608A700AD20A7080319080088
                                                                                                                                                                                                      :10014000A70B9C2808001330A1000000000000004D
                                                                                                                                                                                                      :10015000A10BA5280000000008006430A3000000E7
                                                                                                                                                                                                      :10016000000000000000000000000000A30BAF280A
                                                                                                                                                                                                      :1001700008003230A400A320A40BBB280800643080
                                                                                                                                                                                                      :10018000A400A320A40BC12808002830A500B92092
                                                                                                                                                                                                      :10019000A50BC72808006430A500B920A50BCD2801
                                                                                                                                                                                                      :0E01A0000800C930A500B920A50BD32808001F
                                                                                                                                                                                                      :02400E00503F21
                                                                                                                                                                                                      :02401000FD3F72
                                                                                                                                                                                                      :00000001FF

                                                                                                                                                                                                      ;

                                                                                                                                                                                                      チカラ技第3弾のHEX STEP変化版 重複あり1mS
                                                                                                                                                                                                      :020000040000FA
                                                                                                                                                                                                      :10000000831660308F0000308600F0308500811745
                                                                                                                                                                                                      :10001000831207309C00850186018514051585151E
                                                                                                                                                                                                      :10002000FF30A6000C30A800A9011628A908031D5E
                                                                                                                                                                                                      :10003000372820302602031C282840302602031CC3
                                                                                                                                                                                                      :100040002D2880302602031C32280C30A8003728C7
                                                                                                                                                                                                      :10005000C830A9000130A80037287830A900043042
                                                                                                                                                                                                      :10006000A80037281E30A9000830A80037288120B2
                                                                                                                                                                                                      :100070008D2085208D2089208D2085208D20A90828
                                                                                                                                                                                                      :1000800003194528A90B372845282808A602031874
                                                                                                                                                                                                      :1000900016280130A600A908031D6C28203026026E
                                                                                                                                                                                                      :1000A000031C5D2840302602031C62288030260293
                                                                                                                                                                                                      :1000B000031C67280C30A8006C28C830A900013048
                                                                                                                                                                                                      :1000C000A8006C287830A9000430A8006C281E30E5
                                                                                                                                                                                                      :1000D000A9000830A8006C2881208D2085208D2063
                                                                                                                                                                                                      :1000E00089208D2085208D20A90803197A28A90B45
                                                                                                                                                                                                      :1000F0006C287A282808A607031C4B28FF30A60086
                                                                                                                                                                                                      :100100001628851005158515080085140511851517
                                                                                                                                                                                                      :1001100008008514051585110800051086010614D0
                                                                                                                                                                                                      :10012000AA2086018614AA2086010615AA20860127
                                                                                                                                                                                                      :100130008615AA2086010616AA2086018616AA2000
                                                                                                                                                                                                      :1001400086010617AA2086018617AA2086010514B3
                                                                                                                                                                                                      :10015000AA2008002608A700BD20A7080319080048
                                                                                                                                                                                                      :10016000A70BAC2808001330A1000000000000001D
                                                                                                                                                                                                      :10017000A10BB5280000000008006430A3000000B7
                                                                                                                                                                                                      :10018000000000000000000000000000A30BBF28DA
                                                                                                                                                                                                      :1001900008003230A400B320A40BCB280800643040
                                                                                                                                                                                                      :1001A000A400B320A40BD12808002830A500C92042
                                                                                                                                                                                                      :1001B000A50BD72808006430A500C920A50BDD28B1
                                                                                                                                                                                                      :0E01C0000800C930A500C920A50BE3280800DF
                                                                                                                                                                                                      :02400E00503F21
                                                                                                                                                                                                      :02401000FD3F72
                                                                                                                                                                                                      :00000001FF



                                                                                                                                                                                                      頭脳技版TIMER1使用の最低加減速インターバル50mS版
                                                                                                                                                                                                      :020000040000FA
                                                                                                                                                                                                      :020000001828BE
                                                                                                                                                                                                      :08000800AB00030EAA00AC0AD4
                                                                                                                                                                                                      :1000100001302C02031D0E28AC0129145B200C10AA
                                                                                                                                                                                                      :1000200083160C1483122A0E8300AB0E2B0E0900CC
                                                                                                                                                                                                      :10003000831660308F0000308600F0308500811715
                                                                                                                                                                                                      :10004000831207309C000030900083160C1483123A
                                                                                                                                                                                                      :100050000B178B1785018601851405158515FF3053
                                                                                                                                                                                                      :10006000A6000130A800AC01A90136286020642058
                                                                                                                                                                                                      :100070007020682070206C20702068207020291C5F
                                                                                                                                                                                                      :10008000372810102808A602031836280130A600C9
                                                                                                                                                                                                      :10009000602064207020682070206C207020682010
                                                                                                                                                                                                      :1000A0007020291C492810102808A607031C48287E
                                                                                                                                                                                                      :1000B000FF30A6003628C9308E003C308F00080083
                                                                                                                                                                                                      :1000C000AC015B201014080085100515851508008B
                                                                                                                                                                                                      :1000D000851405118515080085140515851108007E
                                                                                                                                                                                                      :1000E0000510860106148D20860186148D20860158
                                                                                                                                                                                                      :1000F00006158D20860186158D20860106168D2019
                                                                                                                                                                                                      :10010000860186168D20860106178D2086018617AA
                                                                                                                                                                                                      :100110008D20860105148D2008002608A700962052
                                                                                                                                                                                                      :10012000A70803190800A70B8F2808001330A100A7
                                                                                                                                                                                                      :10013000000000000000A10B98280000000008004B
                                                                                                                                                                                                      :100140006430A30000000000000000000000000078
                                                                                                                                                                                                      :100150000000A30BA22808003230A4009620A40BB4
                                                                                                                                                                                                      :10016000AE2808006430A4009620A40BB428080030
                                                                                                                                                                                                      :100170002830A500AC20A50BBA2808006430A500E3
                                                                                                                                                                                                      :10018000AC20A50BC0280800C930A500AC20A50BE9
                                                                                                                                                                                                      :04019000C628080075
                                                                                                                                                                                                      :02400E00503F21
                                                                                                                                                                                                      :02401000FD3F72
                                                                                                                                                                                                      :00000001FF



                                                                                                                                                                                                      頭脳技版TIMER1使用の最低加減速インターバル250mS版
                                                                                                                                                                                                      :020000040000FA
                                                                                                                                                                                                      :020000001528C1
                                                                                                                                                                                                      :08000800AB00030EAA00AC0AD4
                                                                                                                                                                                                      :1000100005302C02031D0E28AC01291458200C10A9
                                                                                                                                                                                                      :100020002A0E8300AB0E2B0E0900831660308F0062
                                                                                                                                                                                                      :1000300000308600F03085008117831207309C0065
                                                                                                                                                                                                      :100040000030900083160C1483120B178B17850158
                                                                                                                                                                                                      :100050008601851405158515FF30A6000130A8001E
                                                                                                                                                                                                      :10006000AC01A90133285D2061206D2065206D2041
                                                                                                                                                                                                      :1000700069206D2065206D20291C34281010280867
                                                                                                                                                                                                      :10008000A602031833280130A6005D2061206D20F0
                                                                                                                                                                                                      :1000900065206D2069206D2065206D20291C462873
                                                                                                                                                                                                      :1000A00010102808A607031C4528FF30A600332897
                                                                                                                                                                                                      :1000B000C9308E003C308F000800AC01582010146D
                                                                                                                                                                                                      :1000C000080085100515851508008514051185158E
                                                                                                                                                                                                      :1000D0000800851405158511080005108601061411
                                                                                                                                                                                                      :1000E0008A20860186148A20860106158A208601C8
                                                                                                                                                                                                      :1000F00086158A20860106168A20860186168A20A1
                                                                                                                                                                                                      :10010000860106178A20860186178A208601051433
                                                                                                                                                                                                      :100110008A2008002608A7009320A70803190800D2
                                                                                                                                                                                                      :10012000A70B8C2808001330A1000000000000007D
                                                                                                                                                                                                      :10013000A10B95280000000008006430A300000017
                                                                                                                                                                                                      :10014000000000000000000000000000A30B9F283A
                                                                                                                                                                                                      :1001500008003230A4009320A40BAB2808006430C0
                                                                                                                                                                                                      :10016000A4009320A40BB12808002830A500A920E2
                                                                                                                                                                                                      :10017000A50BB72808006430A500A920A50BBD2851
                                                                                                                                                                                                      :0E0180000800C930A500A920A50BC32808005F
                                                                                                                                                                                                      :02400E00503F21
                                                                                                                                                                                                      :02401000FD3F72
                                                                                                                                                                                                      :00000001FF

                                                                                                                                                                                                      頭脳技版TIMER1使用の最低加減速インターバル250mS版 STEPDATA5 最低ウェイト150マイクロ秒
                                                                                                                                                                                                      :020000040000FA
                                                                                                                                                                                                      :020000001528C1
                                                                                                                                                                                                      :08000800AB00030EAA00AC0AD4
                                                                                                                                                                                                      :1000100005302C02031D0E28AC01291458200C10A9
                                                                                                                                                                                                      :100020002A0E8300AB0E2B0E0900831660308F0062
                                                                                                                                                                                                      :1000300000308600F03085008117831207309C0065
                                                                                                                                                                                                      :100040000030900083160C1483120B178B17850158
                                                                                                                                                                                                      :100050008601851405158515FF30A6000530A8001A
                                                                                                                                                                                                      :10006000AC01A90133285D2061206D2065206D2041
                                                                                                                                                                                                      :1000700069206D2065206D20291C34281010280867
                                                                                                                                                                                                      :10008000A602031833280130A6005D2061206D20F0
                                                                                                                                                                                                      :1000900065206D2069206D2065206D20291C462873
                                                                                                                                                                                                      :1000A00010102808A607031C4528FF30A600332897
                                                                                                                                                                                                      :1000B000C9308E003C308F000800AC01582010146D
                                                                                                                                                                                                      :1000C000080085100515851508008514051185158E
                                                                                                                                                                                                      :1000D0000800851405158511080005108601061411
                                                                                                                                                                                                      :1000E0008A20860186148A20860106158A208601C8
                                                                                                                                                                                                      :1000F00086158A20860106168A20860186168A20A1
                                                                                                                                                                                                      :10010000860106178A20860186178A208601051433
                                                                                                                                                                                                      :100110008A2008002608A7009D20A70803190800C8
                                                                                                                                                                                                      :10012000A70B8C2808001330A1000000000000007D
                                                                                                                                                                                                      :10013000A10B95280000000008001D30A100000060
                                                                                                                                                                                                      :1001400000000000A10B9F280000000008006430A0
                                                                                                                                                                                                      :10015000A3000000000000000000000000000000FC
                                                                                                                                                                                                      :10016000A30BA92808003230A4009320A40BB528C3
                                                                                                                                                                                                      :1001700008006430A4009320A40BBB28080028309A
                                                                                                                                                                                                      :10018000A500B320A50BC12808006430A500B3204A
                                                                                                                                                                                                      :10019000A50BC7280800C930A500B320A50BCD28A2
                                                                                                                                                                                                      :0201A000080055
                                                                                                                                                                                                      :02400E00503F21
                                                                                                                                                                                                      :02401000FD3F72
                                                                                                                                                                                                      :00000001FF

                                                                                                                                                                                                      TIMER1使用した頭脳技版のメインルーチン
                                                                                                                                                                                                      チカラ技2弾よりも大幅に短いです。
                                                                                                                                                                                                      MAIN
                                                                                                                                                                                                      CALL TM_SET
                                                                                                                                                                                                      UPSTART
                                                                                                                                                                                                      ;TOP
                                                                                                                                                                                                      CALL SET_A
                                                                                                                                                                                                      CALL DOWN_S
                                                                                                                                                                                                      ;MID
                                                                                                                                                                                                      CALL SET_B
                                                                                                                                                                                                      CALL DOWN_S
                                                                                                                                                                                                      ;LOWER
                                                                                                                                                                                                      CALL SET_C
                                                                                                                                                                                                      CALL DOWN_S
                                                                                                                                                                                                      ;MID2
                                                                                                                                                                                                      CALL SET_B
                                                                                                                                                                                                      CALL DOWN_S

                                                                                                                                                                                                      BTFSS CHOUFU,0 ;重複ビットチェックし、1になるまでDNSTARTへ
                                                                                                                                                                                                      GOTO UPSTART

                                                                                                                                                                                                      BCF T1CON,TMR1ON ;TMR1のTMR1ONビットをクリア カウント停止

                                                                                                                                                                                                      CD_GO MOVF STEPDATA,W
                                                                                                                                                                                                      SUBWF DPCNT,F ;F-W
                                                                                                                                                                                                      BTFSC STATUS,C ;DPCNT < 0 THEN C=0
                                                                                                                                                                                                      GOTO MAIN

                                                                                                                                                                                                      MOVLW D'1'
                                                                                                                                                                                                      MOVWF DPCNT
                                                                                                                                                                                                      MAIN2
                                                                                                                                                                                                      CALL TM_SET
                                                                                                                                                                                                      DNSTART
                                                                                                                                                                                                      ;TOP
                                                                                                                                                                                                      CALL SET_A
                                                                                                                                                                                                      CALL DOWN_S
                                                                                                                                                                                                      ;MID
                                                                                                                                                                                                      CALL SET_B
                                                                                                                                                                                                      CALL DOWN_S
                                                                                                                                                                                                      ;LOWER
                                                                                                                                                                                                      CALL SET_C
                                                                                                                                                                                                      CALL DOWN_S
                                                                                                                                                                                                      ;MID2
                                                                                                                                                                                                      CALL SET_B
                                                                                                                                                                                                      CALL DOWN_S

                                                                                                                                                                                                      BTFSS CHOUFU,0 ;重複ビットチェックし、1になるまでUPSTARTへ
                                                                                                                                                                                                      GOTO DNSTART
                                                                                                                                                                                                      BCF T1CON,TMR1ON ;TMR1のTMR1ONビットをクリア カウント停止

                                                                                                                                                                                                      CD_GO2 MOVF STEPDATA,W
                                                                                                                                                                                                      ADDWF DPCNT,F
                                                                                                                                                                                                      BTFSS STATUS,C ;OVER 255 THEN 1
                                                                                                                                                                                                      GOTO MAIN2

                                                                                                                                                                                                      MOVLW D'255'
                                                                                                                                                                                                      MOVWF DPCNT
                                                                                                                                                                                                      GOTO MAIN



                                                                                                                                                                                                      ;割り込みルーチン インターバルを50mSよりも長く出来るようにするために行数が増えてますが、50mS以下のみならもっと短くすることも可能。

                                                                                                                                                                                                      ORG 04H
                                                                                                                                                                                                      INTR MOVWF irq_wback ;save Wreg
                                                                                                                                                                                                      SWAPF STATUS,W ;save status reg
                                                                                                                                                                                                      MOVWF irq_sback

                                                                                                                                                                                                      INCF INT5CNT,F

                                                                                                                                                                                                      MOVLW D'1' ;割り込み周期でフラグを立てる値を決める 割り込み50ms×D'X'倍の設定
                                                                                                                                                                                                      SUBWF INT5CNT,W ;F-W
                                                                                                                                                                                                      BTFSS STATUS,Z
                                                                                                                                                                                                      GOTO CNCHKEND

                                                                                                                                                                                                      CLRF INT5CNT
                                                                                                                                                                                                      BSF CHOUFU,0

                                                                                                                                                                                                      CNCHKEND
                                                                                                                                                                                                      CALL CN_SET ;TIMER1カウントプリセット
                                                                                                                                                                                                      BCF PIR1,TMR1IF ;TIMER1 オーバーフローフラグのクリア

                                                                                                                                                                                                      RETBAT SWAPF irq_sback,W ;load status
                                                                                                                                                                                                      MOVWF STATUS
                                                                                                                                                                                                      SWAPF irq_wback,F ;load wk
                                                                                                                                                                                                      SWAPF irq_wback,W
                                                                                                                                                                                                      RETFIE ;割り込みを許可してリターン
                                                                                                                                                                                                      Re^97: LED Cube
                                                                                                                                                                                                      なんじゃらほい 2017/11/30 18:41
  1. 前8件
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. ...
  10. 19
  11. (1-8/149)
  12. 次8件