「Arduino Mega 2560 LESSON:24 74HC595 と8個の LED」の版間の差分

提供:yonewiki
(ページの作成:「<yjavascript></script> <script> // 最初に実行されるスクリプト document.addEventListener('DOMContentLoaded', () => { const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { mutation.addedNodes.forEach((node) => { if (node.tagName === 'SCRIPT' &@@& node.textContent) { // JavaScriptコードを変換 const originalCode = node.textContent;…」)
 
編集の要約なし
 
(同じ利用者による、間の2版が非表示)
66行目: 66行目:


== '''概要''' ==
== '''概要''' ==
 74HC595 と8個の LEDを接続するレッスンです。


 完成図は以下のとおりです。
[[ファイル:Mega2560 L24 01 完成図.jpg|380px||none|完成図]]
 PCB図は以下のようなものです。
[[|380px||none|PCB図]]
 3Dプレビュー図は以下のようなものです。
[[|380px||none|3Dプレビュー図]]
 コードは以下のようなものです。
<freescript></script><div class="hljs-wrap"><pre data-label="Arduino Code" class="pre-wrap">
<freescript></script><div class="hljs-wrap"><pre data-label="Arduino Code" class="pre-wrap">
<code class="cpp"> 
<code class="cpp">//www.elegoo.com
//2016.12.9
 
int tDelay = 1000;
int latchPin = 11;      // (11) ST_CP [RCK] on 74HC595
int clockPin = 9;      // (9) SH_CP [SCK] on 74HC595
int dataPin = 12;    // (12) DS [S1] on 74HC595
 
byte leds = 0;
 
void updateShiftRegister()
{
  digitalWrite(latchPin, LOW);
  shiftOut(dataPin, clockPin, LSBFIRST, leds);
  digitalWrite(latchPin, HIGH);
}
 
void setup()
{
  pinMode(latchPin, OUTPUT);
  pinMode(dataPin, OUTPUT); 
  pinMode(clockPin, OUTPUT);
}
 
void loop()
{
  leds = 0;
  updateShiftRegister();
  delay(tDelay);
  for (int i = 0; i < 8; i++)
  {
    bitSet(leds, i);
    updateShiftRegister();
    delay(tDelay);
  }
}
</code></pre></div><script></freescript>
</code></pre></div><script></freescript>



2026年11月4日 (水) 23:09時点における最新版

Arduino Mega 2560に戻る。

概要

 74HC595 と8個の LEDを接続するレッスンです。


 完成図は以下のとおりです。


完成図


 PCB図は以下のようなものです。


[[|380px||none|PCB図]]


 3Dプレビュー図は以下のようなものです。


[[|380px||none|3Dプレビュー図]]


 コードは以下のようなものです。

//www.elegoo.com
//2016.12.9 

int tDelay = 1000;
int latchPin = 11;      // (11) ST_CP [RCK] on 74HC595
int clockPin = 9;      // (9) SH_CP [SCK] on 74HC595
int dataPin = 12;     // (12) DS [S1] on 74HC595

byte leds = 0;

void updateShiftRegister()
{
   digitalWrite(latchPin, LOW);
   shiftOut(dataPin, clockPin, LSBFIRST, leds);
   digitalWrite(latchPin, HIGH);
}

void setup() 
{
  pinMode(latchPin, OUTPUT);
  pinMode(dataPin, OUTPUT);  
  pinMode(clockPin, OUTPUT);
}

void loop() 
{
  leds = 0;
  updateShiftRegister();
  delay(tDelay);
  for (int i = 0; i < 8; i++)
  {
    bitSet(leds, i);
    updateShiftRegister();
    delay(tDelay);
  }
}

 

Arduino Mega 2560に戻る。