LEDストリップからクリスマスデコレーションを作ります。 自分の手でLEDガーランドを内蔵したクリスマスツリーそしてそれはまさに

図上の部品の指定とマーキング
6 × 10K抵抗 両方のボードのR1、R3、R5
6 × 330オーム-3K抵抗 両方のボードでR2(2K)、R4(1K)、R6(330)
1 × 2K抵抗 R7(1つのボードのみ)
6 × 47uFコンデンサ 両方のボードのC1、C2、C3
6 × 9014トランジスタ 両方のボードのQ1、Q2、Q3
13 × 赤色LED 両方のボードのD1-D6とD19(R7のある1つのボードのみ)
12 × 黄色のLED D7-D12(両方のボード上)
12 × 両方のボードの緑色のLEDD13〜D18
3 × プリント回路基板
4 × ファスナー、電源ソケット、スイッチ、USB電源ケーブルを備えたバッテリーコンテナ

セット構成

2.3Dクリスマスツリーのスキームとその動作の理論

抵抗器の数とその定格はボードに表示されています。定格が表示されていない場合は、設定された構成の表を参照してください。 取り付けられた抵抗器の値は、カラーコードを使用するか、デバイスで抵抗器の抵抗を測定することによって決定されます。

3Dクリスマスツリーのセットには、1Kとは異なる抵抗値を持つ抵抗R2、R4、R6のペアが装備されています。 いずれの場合も、緑色のLED D1〜D6の電源回路には最小の抵抗抵抗が、赤色のLED回路D7〜D12には最大の抵抗の抵抗が取り付けられています。 緑色のLEDの電源回路に低抵抗の抵抗を入れると、少し明るくなります。 緑色のLEDは通常、他の色のLEDよりも明るくありません。

ボードへの抵抗器の日曜大工の設置

導体を噛む

4.トランジスタの取り付け

ボードへのトランジスタの取り付け

ボード上のトランジスタをはんだ付けする

ボードマーキング側からトランジスタを取り付けます。 ケースの位置は、ボード上の図面に対応している必要があります。 トランジスタを過熱せずにすばやくはんだ付けします。 6つのトランジスタすべてをはんだ付けします。 次に、電解コンデンサをはんだ付けします。

5.はんだ付けコンデンサ

正極が長い

負極マーキング

ボード上の極性マーキング

ラジオデザイナーのコンデンサーははんだ付けされています

電解凝縮液をはんだ付けするときは、電解凝縮液の極性を考慮する必要があります。 負極はコンデンサ本体に刻印されており、リード自体はプラスリードよりやや短いです。 ボード上の負極は、影付きのストライプで示されています。 ボード上に画像がない場合、コンデンサの正極用のはんだパッドは通常、 正方形。 ボードにコンデンサを取り付けるときは、ボード上のコンデンサの位置を考慮してください。 写真を見る。 次に、ボードにLEDを取り付けます。

6.LEDのはんだ付け

ボードへのLEDの取り付け

LEDは接続時に極性もあります。 LEDの長い電極は正で、短い電極は負です。 PCBマーキングと正のはんだパッドの正方形の形状に再度注意してください。 はんだ付けするときは、図に示すように、同じ色のすべてのLEDを共通の抵抗とトランジスタでグループ化する必要があります。 LEDをはんだ付けする場合 異なる色、すると、LEDの1つの色が他の色よりも明るく光ります(さらに、他の色がまったく光らない場合があります!)。

ボードに対するLEDの位置に注意してください。 ダイオードD19はまだ取り付けられていません。 LEDを取り付けたら、正しい取り付けを確認します。

7.はんだ付けされたボードの動作を確認します

3Dクリスマスツリーボードにすべての要素を取り付けた後(先端のD19 LEDを除く)、ボードをテストする必要があります。 このため、木の切り株の「-」と「+」のマークが付いたサイトに5ボルトの電力が供給されます。 電池を容器に入れ、極性を確認しながら、導体を基板の電源接点パッドに接触させます。 ビデオを見る。 すべての部品が正しく取り付けられ、はんだ付けされている場合、すべてのLEDが美しく点滅するはずです。 そうでない場合は、正しいインストールを確認し、エラーを修正してください。 次に、電源とスイッチング素子をベースボードに取り付けます。

8.ベースボードのはんだ付け

ボード上のスイッチの正しい位置

3Dクリスマスツリー電源ソケットの取り付け

ベースプレート上のバッテリーコンテナ

バッテリーワイヤーのはんだ付け

3Dツリー電源スイッチボタンと外部電源ソケットをはんだ付けします。 注意! 電源スイッチを取り付けるときは、ボタンの切り欠き側がPCBの最も近い端に面している必要があります。写真を参照してください。 抵抗またはコンデンサから切断された電極の一部が、ボード上で電源ソケットに固定されています。 このようなループは、ボード上のソケットをしっかりと固定します。 ベースプレートの裏側にネジとナットでバッテリーコンテナを固定します。 写真を見る。 バッテリーからの導体は、プリント回路基板への極性を観察して短縮され、はんだ付けされます。 ボードに電力を供給し、ボードの中央にあるピンの電圧極性を確認します。 入門 最終組み立てクリスマスツリー。

9.最終組み立て

電子ツリー。 ボードアセンブリキー

ボードを接続する

ヘリンボーンに2つのボードを集めます。ボードの矢印は、近くにあるはずです。 木の幹に1つのパッドをはんだ付けして、ボードの相対的な位置を固定します。

3枚のボードを接続する

クリスマスツリーをベースのプリント回路基板に挿入し、3つすべての極性表示(「+」と「-」)を観察します。 プリント回路基板。 ツリーが正しく取り付けられていることを確認し、木の幹に接点と残りのパッドをはんだ付けします。

3D LEDツリーは、バッテリーパックまたはUSB電源から電力を供給できます。 USB電源プラグを差し込むと、ソケットの内部接点によってバッテリーが無効になるため、USB電源でバッテリーをオンのままにしておくことができます。

ガジェットやラップトップからUSB電源を供給するときは注意してください。すべてが、クリスマスツリーに電力を供給できるわけではありません。 Radioconstructorは、次のリンクで購入できる3Dクリスマスツリーを組み立てるためのパーツのセットです。 http://ali.pub/2rdf6t . 木がどのように輝くか、ビデオを見てください

自分の手で3Dクリスマスツリーを組み立てるのに成功しました。

アドオンとして、ベースボードにインストールできるクリスマスツリーは1つだけです。 次に、2番目のボードをバッテリーに接続するか、USBケーブルを介してパワーバンクなどに接続します。 ボードは頭飾りや上着に固定できます。 夜はとても涼しく見えます。 次に、セットから2つのクリスマスツリーを取得します。

おそらく、結果として生じる数少ないDIYはんだ付けキットの1つです。 便利な商品(本格的なデバイスを組み立てるためのセットは考慮されていません)。これは、組み立て後、暗い隅に置かれることはありませんが、特に子供がアセンブリに接続されている場合は、本来の目的で使用されます。
レビューには、DIY3Dクリスマスツリーの説明と組み立て手順が含まれています。

コンストラクターを組み立てると、3色のLEDで点滅する3Dツリーが表示されます。これは、単3電池3本で動作するか、USBから電力を供給できます。

セットはプチプチ付きのバッグに詰められ、さらにフォームで包まれています。 私はこの売り手()に数回注文しました、すべてが同じパッケージで損傷なしで到着しました、機器は整っていました。 注文時に、彼は持っていました ベストプライスこのクリスマスツリーのAliExpressで、約200の売り上げがあり、現在は1700を超えています。

3Dクリスマスツリーはんだ付けキットの一部として:

3枚のボード(CTR-30Cベースと2本の木の幹部分CTR-30AとCTR-30B)
LED(12個の緑、12個の黄色、13個の赤)
47uF16Vで6個のコンデンサ
6トラ​​ンジスタS9014
7つの抵抗器10KΩ
2つの抵抗器330オーム
2つの抵抗器1KΩ
2つの抵抗器2KΩ
1ボタン
電源コネクタ1個(長さ1m)
USB電源コード1本
2本のボルトと2本のナット
3*AA電池用ボックス

含まれているものは次のとおりです。

主な詳細のクローズアップ。 ボードにはEQKITのロゴがあります。


裏面ボード:


より大きい:

すべてのコンポーネントは在庫があり、余分なLEDも残っていました。 はんだ付けする前に、トランジスタテスターですべての要素をチェックしましたが、すべてが正常であることがわかりました。 残念ながら、組み立て説明書は含まれていません。

売り手は写真の形で組み立て説明書を添付しましたが、抵抗値に署名していませんでした、そして抵抗値は添付された写真ではほとんど見えません。 しかし、売り手は応答性が高く、中国語ではありますが、最も重要なのは完全に異なるクリスマスツリーからの図をすばやく送信します。 この事実を指摘した後、彼はそのような計画しか持っていないと言ったが、何かが組み立てられない場合はそれでも質問に答えることを約束した。 これに関して、売り手への拷問を終えて、彼らがまだこのセットからのものであると仮定して、彼が持っている写真を集めようとすることが決定されました。 最後に、すべてがうまくいきました。以下に、すべての抵抗値とアセンブリに関するその他の情報を示します。

ボード上のコンタクトパッドは完全に錫メッキされています。 はんだ付けするときは、フラックスを使う必要すらなく、はんだに含まれているもので十分でした。 彼はクリスマスツリーの半分を原始的な中国人ではんだ付けしましたが、彼のために別々に購入したものもありました。 実際、新しい刺し傷のテストのために、これが開始されました。「使用できない」中国のはんだごては、そのような単純な作業に非常に適していることがわかりました。 ネイティブの刺し傷は、はんだを取りたくありませんでした。 私はすでに残りの半分をT12チップでステーションのはんだごてではんだ付けしました。 今、私はどこに何がはんだ付けされたかを判断できませんでした。 手が正しい場所にある限り、任意のツールを使用してこのコンストラクターをアセンブルできます:)

マーキングに準拠しているかどうかマルチメーターで抵抗器をチェックし、便宜上署名しました。 おそらく誰かが重宝するでしょう。

まず、すべての抵抗器をボードAとBにはんだ付けしました。10Kの抵抗器ですべてがクリアになり、ボードに署名されています。 残りの金種は、次の場所に配置する必要があります。
CTR-30Aボード
R1、R3、R5、R7-10K
R2-2K
R4-1K
R6-330

CTR-30Bボード
R1、R3、R5-10K
R2-写真-330
R4-写真-2K
R6-写真-1K

次のようになりました。 抵抗器がどこにあるべきかがわかります。

次に、トランジスタとコンデンサをはんだ付けする必要があります。 ボード上では、コンデンサは22uFとして署名されており、キットでは47uFになります。これは、何らかの理由で中国人がここに保存しなかったためです。 コンデンサと抵抗器の脚を90度曲げて、はんだ付け後にボード上で水平になり、異なる方向に突き出ないようにします。 完成品。 電解コンデンサ(C1、C2、C3)の負の接点は、ボード上では影付きの領域で示され、コンデンサ自体では薄いストライプで示されます。 トランジスタの向き(Q1、Q2、Q3)もそれぞれ半円でボードに示されています。トランジスタケースの輪郭は、取り付けたとき(脚を曲げる前)にボードのパターンと一致する必要があります。 この場合、すべてのトランジスタが「下向き」にあり、ボード上の半円とは反対の方向を向いていることがわかりました。
すべての抵抗器、トランジスタ、コンデンサははんだ付けされています。

次に、LEDをはんだ付けします。 LEDには極性があり、すべてがボード上にマークされています。 すべてのLEDの向きは同じなので、1つをはんだ付けする方法を覚えておくだけで、残りは同じです。 知らない人のために、この場合、LEDは上部に近い短いリード(カソード、「-」)ではんだ付けされ、下部に長いリード(アノード、「+」)がはんだ付けされます。木。 ツリーの最終組み立て中に、上部にある最後の赤いLEDをはんだ付けする必要があります。極性はすでにそこに示されています。長いリード線で、LEDを「+」にはんだ付けします。

はんだ付けする前に、LEDの本体がクリスマスツリーを超えて伸びるように、LEDの脚を直角に曲げます。

色別のLEDの分布は次のとおりです。
料金A:
D1-D6-赤、
D7-D12-黄色、
D13-D18-緑。
ボードB:
D1-D6-緑、
D7-D12-赤、
D13-D18-黄色、

メインボード上のすべての部品ははんだ付けされています。


別の角度からの別の写真。

ボードに4.5〜5Vの電圧を印加して、組み立て前にボードをテストすることをお勧めします。 各ボードは独立して動作できます。つまり、原則として、2つの2Dクリスマスツリーを取得できます。 クリスマスツリーが別々に機能する場合は、さらに組み立てに進むことができます。

なぜなら、組み立てプロセスをさらに説明することは意味がないと思います。 すべてが明らかです。 ボードAとBははんだで固定されています。 主なことは、ボードCにクリスマスツリーを取り付けるときに極性を混同しないことです(極性はどこでも署名されているので、混同する必要があります)。
バッテリーホルダーのワイヤーはかなり長いので、ここでは必要ありません。希望の長さにカットすることをお勧めします。 念のため、赤い線は「+」端子にはんだ付けし、黒い線は「-」(署名されたBAT4.5V)にはんだ付けする必要があることを思い出してください。

電源ボタン、USB電源コネクタをはんだ付けし、バッテリーホルダーを固定します。設計者は準備ができています。


DC 5V電源コネクタをより確実に固定するために、キットには金属製のブラケットは含まれていませんが、穴が開いています。 代わりに、私が行った抵抗器またはコンデンサーの残りの脚を使用できます。

ここでは、ボードがどのようにはんだ付けされているかを確認できます。 すべてが非常に自信を持って行われ、あなたがこの目標を具体的に設定した場合にのみ崩壊します。

クリスマスツリーはNi-MH1.2Vバッテリーで非常にうまく機能します、私はそれをテストしました。 ただし、USB(5V)で作業する場合、ライトはさらに明るくなります。 USB経由で接続したときの消費電力を測定しようとしましたが、0.00Aを示していますが、ツリーは力強く点滅し、正常に動作しているため、消費電流は非常に小さく、テスターの最小しきい値を下回っています。したがって、バッテリーは非常に長い間続くはずです。

3Dツリーアセンブリ:

電源を入れます。LEDがスムーズに光り、まばたきし、目を楽しませてくれます。

私はおもちゃが好きで、集めるのも面白いし、子供たちも好きでした。 これは、組み立て後、遠くの箱に入れられないはんだ付けキットの1つですが、たとえば、子供用の常夜灯として使用できます。

このクリスマスツリーを見て、はんだごてが何であるかを知っている人も、それを組み立てたいと思っています。 どうやら中に何か入っているようです…夏に買ったので、なんとかお正月に組み立てました。 しかし今、そのようなセットの価格は下がっています。

こんにちは、みんな!!! あけましておめでとう皆さん!! すべての悪いことは古い年にとどまらせてください、そしてすべての良いことは新しい年に私たちと一緒になります!! ですから、この記事では、たとえば、あなたのクリスマスツリーを飾ることができるような小さなクリスマスツリーをほんの数時間で作る方法をお話ししたいと思います。 職場、新年に、または家のどこかに立つことができます

デバイスの基本は、単純なマルチバイブレータです。

発振周波数は、ベース回路の容量と抵抗の定格に依存します。 実験用の広いフィールド。

私たちは何が必要なのか?

1)LED。 緑6個、黄色6個、赤7個の3色を使用しました。
2)抵抗器。 10kOhm-2個、および1kOhm-使用されるLEDの数に等しい。
3)トランジスタのペア
4)直径2および4mmの熱収縮
5) 銅線、ニス塗り、厚さ約0.8または0.7 mm
6)何か他のもの...

ワイヤーは約10〜15cmの長さに切断する必要があります。 このようなセグメントの数は、LEDの数に2を掛けたものに等しくする必要があります。 セグメントの半分を10cm、残りの半分を15cmにすることをお勧めします。
図のように、抵抗器がLEDにはんだ付けされ、次にこれらすべてがワイヤセグメントにはんだ付けされます。
次に、LEDの抵抗器が熱収縮で「隠され」ます。

その後、抵抗器で各LEDの動作を再度確認し、極性を確認する必要があります。 次に、LEDのすべての「プラス」とすべての「マイナス」を一緒にねじります。次に、いわば、「プラス」の束を2つに分割して、接続する2つのほぼ同一のLEDグループを取得します。私たちのマルチバイブレーター。 おおよそこのように。

2つのKT816Gトランジスタにヒンジで取り付けてマルチバイブレータを作成しましたが、残念ながら写真を撮る時間がありませんでした。
これらすべてを適切なケースに押し込むことは残っています、そして出来上がり! 楽しみ!!

"どのように 新年それに会えば、それを使うでしょう」-長い間キャッチフレーズになってきたキャッチフレーズで、ある程度前もってお気に入りの休日の準備をすることができます。オリビエやみかんなどの伝統的な属性がかけがえのないものである場合は、さまざまな選択肢があります。毎年設置や装飾を行うことで、頭脳、アマチュア無線、電子工学のエンジニア、特に頭を悩ませることができます。

「スマートな」WS2812BLEDの技術を使ってインターネットでビデオを見ると、すぐにそのアプリケーションに関する多くのアイデアが生まれました。 11月末に、eBayで注文された200個のダイオードの待望のテープがついに到着しました。 配達は無料です、1つのダイオードの費用は約6ルーブルです。 そして、正月まであと1か月しかなかったので、ビジネスと楽しみを組み合わせて、ダイオードの接続方法を考え、休暇の準備をすることにしました。

WS2812Bは、ドライバーと制御プロトコル回路が統合された3色LEDです。 「通常の」RGBダイオードのように4つのピンがありますが、目的は異なります。2つのピンは回路に電力を供給するために予約され、1つのピンはデータ入力用に、もう1つは出力用に予約されています(ダイオードは直列に接続できます)。 各ダイオードの明るさと色を調整するための複雑なアルゴリズムを考え出す必要はありません-開発者は一連のバイトをダイオードチェーンに転送し、必要な時間間隔に耐える必要があります-その後、チェーンは次のように点灯します別のシーケンスが与えられるまで、または電源がオフになるまで、指定された色。 この場合、MKまたはFPGAの出力は1つだけ消費されます。

ダイオードのデータシート(記事の最後に添付)には、すべての特性が詳細に説明されています。ここでは、最も重要なパラメーターを示します。

  • 1つのダイオードのサイズは5x5mmで、ハウジングは表面実装用です。
  • 供給電圧-3.5...5.3V;
  • 最大金額 1つのチェーン内のダイオード-1024、リフレッシュレートは毎秒30フレーム。 プロトコルのタイミングが理想的に守られていれば、このような数のダイオードを接続することが可能であり、問​​題が発生する可能性があることに注意してください。
  • LEDはRGBモデルを実装します。各色は1バイトでエンコードされます。理論的には、1600万色以上を取得することが可能です。 しかし、目には、それほど近くない色の違いは認識できません。

ダイオードの接続図は次のとおりです。

電源が投入されると、ダイオードは初期化されず、青色に点灯します。 ダイオードチェーンを初期化するには、次のことを行う必要があります。

  1. 8ビットG7..G0を送信して、最初のダイオードの緑色を設定します。
  2. ビットR7..R0を送信して、赤色を設定します。
  3. 設定するビットB7..B0を送信します 青い色の;
  4. 2番目、3番目、およびその他のダイオードについて、手順1〜3を繰り返します。 つまり、最初のダイオードの初期化後、データはそれを通過して次のダイオードに渡され始めます。
  5. 入力を少なくとも50µsの間論理「0」に設定します。その後、初期化されたすべてのダイオードが指定された色になります。

1と0の転送は直接実行されませんが、特定の時間間隔を保持することによって実行されます。 1ビットの合計伝送時間は1.25µs、1つのLEDの設定は30 µsです。 実際には、期間を観察するだけで済みます 上級、ローの持続時間は、ラージサイドに範囲外になる可能性があります。

次に、ダイオードを初期化し、エフェクトの制御と変更を行うプログラムについて詳しくコメントします。 プログラムはアセンブリ言語で書かれており、ATmelStudio6.2環境のプロジェクトは記事の最後に添付されています。 ロードおよびスイッチング効果のロジックのみが考慮されます。 スタックの初期化や割り込みとポートの設定などの明らかなことは省略されています。 また、一連のダイオードがコントローラーのPD7ポートに接続されており、動作周波数は8MHzであると想定されています。

プログラムの考え方は次のとおりです。 LEDに交互に出力する必要がある特定のエフェクトのセットがあります。 効果の特徴は次のとおりです。

  • フレームレート;
  • 勤務時間;
  • "知能"。 「スマート」は、プログラミングが簡単な効果です(たとえば、滑らかな色のオーバーフロー、多くの効果で同じ)。 「ばかげた」効果は、フレームごとに、配列によって説明されます。

動作のロジックを説明する前に、次のレジスタと定数が必要な理由を説明する必要があります。

Def temp = r16;すべてについて、一種のガベージレジスタ.defカウンタ=r17;LEDカウンタレジスタ.defcurFn=r18;現在のエフェクトの開始から経過したフレームの数.defcurEf=r19; 7 ..4-数値効果の合計、3..0-現在の数値.equ LED_COUNT=17;一定-LEDの総数.equBUFFER_SIZE=LED_COUNT * 12 + 1;バッファサイズ(後で説明).equ XTAL = 8000000 ;クロック周波数.equDIV=256;タイマープリスケーラー値.equTPS=XTAL/DIV;秒あたりのタイマーティック数.equEND=0xFE;終了マーカー

上記の効果の特徴を考えると、次のようになります。

EffectName:.db high(TPS / 15)、low(TPS / 15)、15 * 16.1 .db 7,7,9,7,7,9,7,7,9,7,7,9 .db 7、 7,9,7,7,9,7,7,9,7,7,9 .db 7,7,9,7,7,9,7,7,9,7,7,9 .db 7 7,9,7,7,9,7,7,9,7,7,9 .db 7,7,9、END

最初の行には、4バイトの特性が含まれています。

  • フレームレートを決定する2バイトのタイマー割り込み設定。 この場合、頻度は15フレーム/秒です。
  • 効果持続時間バイト(フレーム単位)。 この効果は16秒間続きます。
  • 効果の「賢さ」のバイト。 この効果(オーバーフロー)はプログラミングが簡単なので、バイトは1に等しくなります。
  • 各ダイオードの51バイトの色特性(フレームごとの記述の場合、1桁多くなります)。
  • 配列終了マーカー。

バッファといくつかの定数を格納するために、RAMに次の量のスペースが割り当てられます。

Dseg BytesBuffer:.byte BUFFER_SIZE;ダイオードにロードされるバイト配列(以下で説明)ColorsTable:.byte LED_COUNT * 3 + 1; 3-カラーチャネルの数(R、G、B)、エンドマーカーの場合は1バイトMaxFrame:。バイト1;特定のエフェクトで再生されるフレーム数CurEffectAddr:.byte2;現在のエフェクトのアドレスを格納します。equCEA_H=CurEffectAddr + 1 .equ CEA_L = CurEffectAddr + 0

エフェクトの「プログラマビリティ」について詳しく説明したいと思います。 重要なのは、配列は各色の強度(0から16)をリストする必要があるということです。 次に、これらの値に次のレジスタの値を掛けます(同時に、オーバーフローの実装におけるヘルパー定数が与えられます):

Def R = r20; red.def G = r21; green.def B=r22;およびblue.defF=r23;状態マシンのフラグ;状態flags.equG_HIGH= 1 .equ R_DOWN = 2 .equ B_HIGH = 3 .equ G_DOWN = 4 .equ R_HIGH = 5 .equ B_DOWN = 6 .equ MAX_FLAG = 7

配列からの定数と対応するレジスタの積は、各ダイオードのカラーテーブル(ColorsTable)を形成します。 エフェクトがプログラムされている場合、値 レジスタR、G、B動的に変更できます。 このような効果のすべてのフレームの説明は実用的ではありません(コントローラーのメモリが多すぎます)。

効果をプログラムできない場合は、すべてのフレームが配列にリストされ、強度はレジスタ値の代わりに15倍されます。

カラーテーブルを受け取った後、ダイオードに直接ロードされるバイトのシーケンスを取得する必要があります。 これにより、次の機能が実行されます。

ColorToBytes:ldi temp、0x88 sbrc R0,7;lpmコマンドの標準引数としてレジスタR0を使用しますsubitemp、-(1<<6) ;сложения в AVR нет, поэтому так извращенно sbrc R0,6 subi temp,-(1<<2) st Y+,temp ldi temp,0x88 sbrc R0,5 subi temp,-(1<<6) sbrc R0,4 subi temp,-(1<<2) st Y+,temp ldi temp,0x88 sbrc R0,3 subi temp,-(1<<6) sbrc R0,2 subi temp,-(1<<2) st Y+,temp ldi temp,0x88 sbrc R0,1 subi temp,-(1<<6) sbrc R0,0 subi temp,-(1<<2) st Y+,temp ret

つまり、この関数は1バイトを4に変換し、ダイオードにロードされます。

LoadData:cli;ロードビットをダイオードにループします。 非常に高速で、万が一の場合に備えて、ここで何も壊れないように、中断を禁止します。 LoadData2:ld temp、Y + cpi temp、END breq FromBegin;すべてのダイオードが初期化され、無限ループにジャンプしますOut1:out PortD、temp lsl temp nop out PortD、temp lsl temp nop out PortD、temp lsl temp nop out PortD、temp lsl temp nop out PortD、temp lsl temp nop out PortD、temp lsl temp nop cbi PortD、7 rjmp PC +1;2サイクルかかりますが2バイトかかります。2*nopは同じ量を取ります。rjmpPC+1;しかし4バイトかかりますrjmpPC+ 1 rjmp PC + 1 rjmp PC + 1 rjmp PC + 1 rjmp LoadData2 FromBegin:sei cbi PortD、7ループ:;これまでのところ、ループは完全に空です。つまり、これ以上rjmpを配置できます。アクション/ハンドラーループ

魔法の定数0x88はどこから来たのですか? 低レベルと高レベルの必要な期間は、ポートの出力で特定の値を維持することによって形成されます。 lsl --nop --outコマンドは、3サイクル、つまり375 nsで実行されます。これは、許容誤差の範囲内です。 したがって、ゼロの送信は、シーケンス1000と1のロード-1100に削減されます。つまり、2ビットが1バイトで送信され、1つのダイオードの設定が12バイトで送信されます(24ビット= 3バイトG、 R、B)、これはすぐにこの行を明らかにします:

Equ BUFFER_SIZE = LED_COUNT * 12 + 1;バッファサイズ(後で説明します)

そのため、バイトは最初は0x88であり、ColorToBytes関数は、必要に応じて位置6と2にバイトを設定し、バイトを出力バッファーにロードします。

上記のタイマー割り込みは、以下を実装します。

  • エフェクトが「最後まで」到達した場合、次のフレームがエフェクトの開始になります。
  • エフェクトが設定された時間再生された場合、次のフレームが次のエフェクトの開始になります。
  • 効果が「スマート」である場合、レジスターの強度値が変更されます。
  • 一般的な作業アルゴリズムは、次のブロック図で表されます。

    また、記事の最後にプロジェクトテンプレートが添付されています。このテンプレートを少し編集すると、WS2812Bをすばやく操作できます。

    完成したデバイスを「スマート」LED(クリスマスツリー)でデモンストレーションすることは残っています。 クリスマスツリーのスキームは非常に単純で、以下に示されています。

    回路の主要コンポーネントは、TQFPパッケージのATmega8Aマイクロコントローラーです。 また、クリスマスツリーの将来の改良のために2つのボタンを残しました。 残りのコンポーネントは、サイズ0805の抵抗とコンデンサでほぼ完全に表されます。ツリーはマイクロUSBコネクタを介して5ボルトで給電され、外部のPowerBankタイプのメモリに接続するとどこにでも配置できます。 PPツリーを含むファイルはアーカイブ(両面ボード)にあります。

    CNCマシンでカットされたボードの写真(片面):

    クリスマスツリーをA3の紙に固定する予定だったので、生まれて初めて薄い(0.3mm)テキスタイルからボードを切り取ろうとしました。 大きなボードの場合、このようなテキスタイルライトの機械的強度は低くなります。 厚さ1mmからテキスタイルを服用することをお勧めします。 写真は向こう側の半透明の道も写っています!

    回路のはんだ付けとフラッシュは問題を引き起こさないはずです。必要なすべてのファイルが記事の最後に添付されています。 作業中のクリスマスツリーの写真(オーロラ効果、花輪の断片):

    作品の小さなビデオ(オーバーフロー効果の例):

    記事の最後に添付されているのは、以下を含むアーカイブです。

    • AtmelStudio6.2のオリジナルのクリスマスツリープロジェクト。
    • 同じ環境のプロジェクトテンプレート。
    • クリスマスツリーPCBファイル;
    • 樹形図ファイル;
    • クリスマスツリーファームウェア;
    • コントローラのFUSEビット。
    • ダイオード接続図;
    • WS2812Bのデータシート。

    無線要素のリスト

    指定 の種類 宗派 ノートスコア私のメモ帳
    U1 MKAVR8ビット

    ATmega8A-AU

    1 TQFP32 メモ帳に
    D1-D17 発光ダイオードWS2812B17 メモ帳に
    C1 コンデンサ47uF1 TANT_A メモ帳に
    C2 コンデンサ100 nF1 0805

    年末年始の前夜、魂は周りのすべてが美しく、魔法であり、次のお祝いを思い出させることを要求します。 敷地内だけでなく、街路空間も積極的に飾ります。 この記事では、自分の手で明るく輝くクリスマスツリーを作る方法を説明します。 それは家や小さな店の近くのエリアをうまく​​補完します。

    必要になるだろう:

    • プラスチック製のフック;
    • LEDガーランド自体(2.5メートルのクリスマスツリーの場合、約30〜50メートルのガーランドが必要です)。
    • ペグ;
    • 垂直サポート(金属パイプ、木製ブロックなど)。

    ちょっとした秘密:球根の間隔が狭い花輪は、より明るく「ふわふわした」クリスマスツリーを作成するのに役立ちます。 スレッドが互いに可能な限り接近していることも重要です。 花輪の標準的な長さは10〜20メートルを超えません。 それを長くするには、最後に特別なコネクタが付いているモデルを選択するか、即興の手段(たとえば、スレッドで結ぶ)で製品を固定することができます。 ガーランドの準備ができたら、装飾の作成を開始します。 何をする必要がありますか:

    • 敷地内に空きスペースを用意します(安全上の理由から、建物や樹木から離れた場所を選択することをお勧めします)。
    • 垂直サポートを取り付けてしっかりと固定すると、地面に掘ることができます。
    • ラックの周りに同じ距離でペグを配置します。
    • 花輪を取り、このように配置します。最初のペグから始めて、上に上げ、プラスチックのフックに固定し、2番目のペグまで下げ、巻き付け、地面に沿って3番目のペグに持っていきます。もう一度上に上げるなど。

    ご覧のとおり、LEDクリスマスツリーの作成は非常に簡単です。 最小限の時間で、特別な準備は必要ありません。 上記の推奨事項は、通りだけでなく、家の装飾を作成するために使用できます。 原理は同じです。高さを調整し、対称的に配置された取り付けポイントで丸いベースを切り取るだけです。 垂直スタンドと底部をマスクすることを忘れないでください。緑色の包装紙で覆うか、糸、リボン、見掛け倒しで包むことができます。

    Borisova Tatiana

    私は自然と環境にやさしいすべてのものが大好きなので、年末年始にどの木を購入するか(ライブか人工か)という質問は、それだけの価値はありません。 デンマークのトウヒ200/225cmを購入しました。家の中の匂いはただの神聖なもので、新鮮な針葉樹で、休日の雰囲気とそれに対応するムードが自然に現れました。 購入にとても満足しています。

    Krasko Svetlana

    私は私立児童発達センターの秘書として働いています。 ロビーに設置するためにライブスプルース300/350を購入しました。 クリスマスツリーはとてもゴージャスで、ふわふわで太く、しかもとても美しく豊かなエメラルド色をしています。 そして、おもちゃや花輪で飾った後、それはアメリカ映画の最高の伝統のように見えます。 子供も親も喜んでいます。

    ジューコワ・ラリサ

    毎年、クリスマスツリーを立てず、小さな人工的なものに限定することを約束しますが、夫や子供たちの目からは、どこにも行かないことを理解しています。 私はこの店で数年前からデンマークにグリーンビューティーを注文しています。 価格は国内のものより少し高いですが、見栄えがよく、長持ちします。 昨年、私たちのクリスマスツリーはエピファニーの前に立っていて、購入した日と同じように見えました。