Come Collegare Arduino 10 Segment LED Bar Graph

Premessa: questi LED a barre a 10 segmenti hanno molti usi: con un ingombro ridotto e un semplice collegamento. Essenzialmente, sono 10 LED rossi individuali alloggiati insieme.

CARATTERISTICHE TECNICHE

  • Forward Current (Per Segment): 25mA
  • Max Reverse Voltage: 5v
  • 10 segment bar
  • Color: Super Bright Red
  • Industrial standard size
  • Low power consumption
  • Categorized for luminous intensity

LISTA MATERIALI

SCHEMA DI COLLEGAMENTO

Si noti che lo schema di collegamento mostra i pin collegati in ordine inverso per motivi di chiarezza. Quando si esegue il codice di esempio incluso qui, è possibile notare una sequenza di ordine inverso. Se si desidera collegare i LED nell’ordine corretto, è necessario cablare: Arduino D2 a PIN1 Arduino D3 a PIN2 Arduino D4 a PIN3 Arduino D5 a PIN4 e così via …

In alternativa, è possibile modificare il codice di esempio per operare nell’ordine previsto.

CODICE DI ESEMPIO

// # Description:
// # The sketch for using the 10 Segment LED Bar Graph with prototype shield

// # Connection:
// #        LED Bar positive pins -- Arduino digital pins through a 1K resistor
// #        LED Bar negative pins -- GND

const int ledPin[10] =  {
  2,3,4,5,6,9,10,11,12,13};      // the number of the LED pins
int ledState = 0;

void setup() {
  Serial.begin(9600);
  // set the digital pin as output:
  for(int i = 0; i < 10 ;i   ){
    pinMode(ledPin[i], OUTPUT);
    digitalWrite(ledPin[i], LOW);
  }
  ledState = 1;
  display(ledState);
  delay(100);
}

void loop()
{
  for(int i = 0; i < 9; i  ){
    ledState = ledState << 1;
    display(ledState);
    delay(50);
    Serial.println(ledState,BIN);
  }
  for(int i = 9; i > 0; i--){
    ledState = ledState >> 1;
    display(ledState);
    delay(50);
    Serial.println(ledState,BIN);
  }
}

void display(int sat){
  for(int i = 0; i < 10 ;i   ){
    digitalWrite(ledPin[i],bitRead(ledState,i));
  }
}

Buon Progetto.