注意:すべてのOSOYOO ARDUINO用製品はサードパーティー製品であり、ARDUINOと完全に互換性があります

認可されたオンライン小売業者:

AMAZON
amzuk

内容

  1. 紹介
  2. 準備
  3. このプロジェクトについて
  4. 接続
  5. スケッチのアップロード
  6. プログラムの実行結果

紹介

このレッスンでは、74HC595を使用して、Osoyooベーシックボード上の1つの7セグメントLEDディスプレイを駆動する方法を紹介します。以前には、単一の7セグメントLEDディスプレイをボード上の8つのポートに直接接続する方法を紹介しました。これにより、ポートを5つ節約できます。ボードのポートが限られているため、これは非常に重要です。

準備

ハードウェア

ソフトウェア

このプロジェクトについて

実験では、SRCLR(ピン10)が5V(HIGHレベル)に接続され、OE(ピン13)がGND(LOWレベル)に接続されています。したがって、データはSRCLKの立ち上がりエッジに入力され、立ち上がりエッジを通じてメモリレジスタに入力されます。shiftout()関数を使用して、8ビットのデータをDSを介してシフトレジスタに出力します。SRCLKの立ち上がりエッジで、シフトレジスタ内のデータが1ビットずつ順次移動し、QB内のデータがQCに移動します。RCLKの立ち上がりエッジで、シフトレジスタ内のデータがメモリレジスタに移動します。8回後にすべてのデータがメモリレジスタに移動します。その後、メモリレジスタ内のデータがバス(QA-QH)に出力されます。したがって、16文字が7セグメントに順番に表示されます。

接続

回路を以下のように構築します:

スケッチのアップロード

上記の操作が完了したら、USBケーブルを使用してボードをコンピュータに接続します。緑色の電源LED(PWRとラベルされています)が点灯するはずです。次に、以下のスケッチをOsoyooベーシックボードにアップロードします。

const int latchPin = 12;//Pin connected to latchPin of 74HC595
const int clockPin = 8;//Pin connected to clockPin of 74HC595 
const int dataPin = 11; //Pin connected to dataPin of 74HC595 
//display 0,1,2,3,4,5,6,7,8,9,A,b,C,d,E,F
int datArray[16] = {252, 96, 218, 242, 102, 182, 190, 224, 254, 246, 238, 62, 156, 122, 158, 142};

void setup ()
{
  //set pins to output
  pinMode(latchPin,OUTPUT);
  pinMode(clockPin,OUTPUT);
  pinMode(dataPin,OUTPUT);
}
void loop()
{
  //loop from 0 to 256
  for(int num = 0; num < 16; num++)
  {
    digitalWrite(latchPin,LOW); //ground latchPin and hold low for as long as you are transmitting
    shiftOut(dataPin,clockPin,MSBFIRST,datArray[num]);
    //return the latch pin high to signal chip that it 
    //no longer needataPin to listen for information
    digitalWrite(latchPin,HIGH); //pull the latchPin clockPin to save the data
    delay(1000); //wait for a second
  }
}

実行結果

アップロードが完了して数秒後、0から9までとAからFまでの7セグメント表示が表示されるはずです。