開発の経緯

はじめに

電子工作における学習と実験は、常に新しい発見と挑戦に満ちています。
今回のプロジェクトでは、74HC595シフトレジスタを使用し、SPI通信を介してLEDを制御する基板の作成に挑戦しました。

74HC595 秋月電子で購入

このプロジェクトは、基本的なデジタル電子工学の概念と、シリアル通信の原理を理解し、それを実践することを目的としています。

プロジェクトの背景

このプロジェクトは、私の電子工作における学習過程の一環として始まりました。
特に、シフトレジスタとSPI通信の理解と活用は、デジタル回路設計の基本的なスキルです。

74HC595は、その汎用性と使いやすさから、初学者にとって理想的なコンポーネントであると感じました。
さらに、Arduinoなどのマイクロコントローラーを使用してSPI通信を実装することで、より広範な応用が可能となります。

プロジェクトの目的

  • シフトレジスタとSPI通信の動作原理を学ぶ
  • 実際の回路設計と基板製作を通じて理論と実践を結びつける
  • LED制御を通じた視覚的に楽しい出力の確認

74HC595シフトレジスタの解説

74HC595の基本

74HC595は、シリアル入力/パラレル出力(SIPO)タイプのシフトレジスタです。
8ビットのデータをシリアルで受け取り、パラレルで出力できます。これにより、限られたピン数のマイコンでも多数の出力制御が可能です。

これにより、制限されたピン数を持つマイクロコントローラでも多数の出力を制御することが可能になります。

動作原理

74HC595は主に3つの入力ピンを使用します。

  • データピン:ビットデータを受信
  • クロックピン:各ビットのタイミング制御
  • ラッチピン:出力レジスタへの反映タイミング制御

これにより、データの更新が必要な時だけ新しいデータが出力に反映され、安定した制御が可能になります。

以下に、74HC595の大まかなブロック図を示します。

74HC595 動作ブロック図

74HC595 動作ブロック図

アプリケーションの例

74HC595の一般的な使い方は、LEDの制御です。
例えば、8ビットのシフトレジスタを使用することで、8個のLEDを個別に制御できます。

この制御により、LEDの個別制御、表示パネル、光のパターン作成などに利用され、複数の74HC595をカスケード接続することで拡張も可能です。


Arduinoとの連携

Arduinoと74HC595を組み合わせることで、プログラムによる柔軟な制御が可能になります。
Arduinoと74HC595を使えば、少ないIOピンでも多くのLEDを制御できるため、小型のプロジェクトでも複雑な出力を実現することができます。

Arduino UNO R4 Minima

Arduino UNO R4 Minima

Arduino UNO R4 Minima starter kit

Arduino UNO R4 Minima starter kit

また、Arduinoのライブラリと組み合わせれば、初心者でも簡単に扱えます


回路と基板の設計

このプロジェクトでの主要な目的の一つは、74HC595シフトレジスタを用いてLEDを制御するための効率的な回路を設計することでした。
74HC595は、シリアル入力を受け取り、それをパラレル出力に変換する能力を持っています。
これにより、限られたピン数のマイクロコントローラでも多くのLEDを制御することが可能になります。

基板の設計と製作

回路図は、シフトレジスタ、LED、抵抗器、コンデンサを適切に配置し、それらの間の接続を明確に示すように設計しました。
特に、74HC595の各ピンの機能を正確に理解し、それに応じて配線することが重要でした。

本プロジェクトでは、SPI(Serial Peripheral Interface)通信を使用して74HC595を制御しました。
SPI通信は高速で信頼性が高く、マイクロコントローラとシフトレジスタ間のデータ転送を効率的に行うことができます。
回路設計では、SPI通信に対応するための接続も考慮に入れました。

また、基板を複数を簡単にカスケード接続できるように工夫をしました。

以下に作成した回路図を示しています。

74HC595 回路図

74HC595 回路図

実際の回路設計では、SPI通信に対応した74HC595とLEDを組み合わせて、効率的な配置を目指しました。

上記の回路図をもとに設計した基板が以下になっています。
KiCadでレイアウトした配線図です。74HC595の各ピンを意識しながら、コンパクトに収まるように配置しています。

74HC595 配線図

74HC595 配線図


基板製造と動作確認

JLCPCBで製造依頼し、以下のような基板を作成:

  • 部品は表面実装でアセンブリ依頼
  • コネクタ部分のみ手はんだで対応

ICと抵抗・LED・コンデンサなどの表面実装部品はJLCPCBのほうでアセンブリをしてもらいました。   同じ部品をたくさん使う場合、自分で部品を集めてはんだするよりも、手間・価格面共にコスパがいいと思います。

実際に届いた基板が以下のようなものになっております。
しっかりと抵抗とLEDは引っ付いてそうです。その基板にコネクタをはんだ付けしました。

実際の基板

実際の基板

そして、5枚ぐらい連結すると以下のようになります。

基板連結

基板連結

そして、実際の動作している動画がこちらになっております。

複数枚の基板を連結して、連動点灯が可能。点灯状態も綺麗で、視覚的に確認しやすい結果が得られました。

緑色のLEDが美しく点灯し、基板の動作も安定しています。 この基板でシフトレジスタのお勉強がいろいろとできそうです。


宣伝とかご紹介

GitHub公開リソース

JLCPCB向けファイル

74HC595_testboard.zip を使えば、同じ基板が作成可能です。BOM/CPLファイルも同梱済み。
そちらのファイルを使用することで、LEDと抵抗が実装済みの基板を製作することができますので、自己責任とはなりますがご利用いただけたらと思います。


Boothショップでの購入

ElectroRam Studio にて販売中です。

内容:

  • LED・抵抗実装済み基板

購入サイト:ElectroRam Studio


まとめ

今回のプロジェクトでは、74HC595シフトレジスタとArduinoを使って、少ないピン数でも多くのLEDを制御できる基板を自作しました。 シリアル通信(SPI)によって複数の出力を効率的に扱える技術は、デジタル回路設計の基礎でありながら非常に応用範囲の広い要素です。

記事を通して、回路設計・基板製作・ライブラリ活用・動作確認までの一連の流れを紹介してきました。 また、基板を複数枚連結して視覚的に美しいLED点灯を実現できたことで、電子工作の楽しさや「自分で作る喜び」を再確認できる内容になったのではないでしょうか。

これから同じように挑戦される方や、シフトレジスタの学習を進めたい方にとって、少しでも参考になれば幸いです。

あなたの手で「使える道具を作る」楽しさを、ぜひ体験してみてください。

それでは、良き電子工作ライフを!!

See You …