Giter Site home page Giter Site logo

1kill2steal / counting-blinks Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 34.2 MB

An arduino_hal (hardware abstraction layer) tool using the Arduino Nano that counts in binary using the LEDs.

License: Apache License 2.0

Rust 100.00%
arduino-nano embedded-rust

counting-blinks's Introduction

Counting blinks

Rust project for the Arduino Nano that implements binary counting with LEDs.

Prerequisites

Arduino nano.

USB type A (or whatever type your sender accepts) to Micro USB or USB type C (depending on your Arduino Nano variant)

A breadboard (at least from a1-j30 which should be the smallest one).

4 jumper wires (male to male).

3 resistors (I'm using metal film blue ones).

3 LED diodes (the colors don't matter).

Example Board Layout

Arduino from d30 to j16.

Jumper cable at GND (in this case: d19 or j17) to negative column at the j column side.

3 Jumper cables:

  • d30-a1 (pin.d12)
  • d29-a5 (pin.d11)
  • d28-a9 (pin.d10)

3 Resistors:

  • b1-i9
  • b5-i5
  • b9-j9

Some vocabulary for the LEDs:

  • Anode - the long end (positive charged): the part where oxidization happens.
  • Cathode - the short part (negative charged): the part where reduction happens.

3 LEDs:

  • Anode: j1 | Cathode: at the negative column
  • Anode: j5 | Cathode: at the negative column
  • Anode: j9 | Cathode: at the negative column

Note

The position of the cathodes on the negative column doesn't matter as long as they're on the column where the GND jump wire is connected.

For reference, it should look something similar to the following:

Preview vid

Code Build Instructions

  1. Install prerequisites as described in the avr-hal README (avr-gcc, avr-libc, avrdude, ravedude).

  2. Run cargo build to build the firmware.

  3. Run cargo run to flash the firmware to a connected board. If ravedude fails to detect your board, check its documentation at https://crates.io/crates/ravedude.

  4. ravedude will open a console session after flashing where you can interact with the UART console of your board.

License

Licensed under either of

At your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

counting-blinks's People

Contributors

1kill2steal avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.