Skip to content

Latest commit

 

History

History
87 lines (50 loc) · 1.44 KB

shift-register-seven-segment-anode.md

File metadata and controls

87 lines (50 loc) · 1.44 KB

Shift Register - Common Anode Seven Segment controller

Breadboard for "Shift Register - Common Anode Seven Segment controller"

docs/breadboard/shift-register-seven-segment-anode.png

Fritzing diagram: docs/breadboard/shift-register-seven-segment-anode.fzz

 

Run this example from the command line with:

node eg/shift-register-seven-segment-anode.js
const {Board, ShiftRegister} = require("johnny-five");
const board = new Board();

board.on("ready", () => {
  const register = new ShiftRegister({
    isAnode: true,
    pins: {
      data: 2,
      clock: 3,
      latch: 4,
      reset: 9,
    }
  });
  let number = 0;
  let decimal = 0;

  register.reset();

  // Display numbers 0-9, one at a time in a loop.
  // Shows just the number for a half second, then
  // the number + a decimal point for a half second.
  setInterval(() => {
    register.display(number + (decimal && "."));

    if (decimal) {
      number++;
    }

    if (number === 10) {
      number = 0;
    }

    decimal ^= 1;
  }, 500);
});

 

License

Copyright (c) 2012-2014 Rick Waldron waldron.rick@gmail.com Licensed under the MIT license. Copyright (c) 2015-2023 The Johnny-Five Contributors Licensed under the MIT license.