keybrd library is an open source library for creating custom-keyboard firmware.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

tutorial_2_single-layer_keyboard.md 2.0KB

8 years ago
8 years ago
7 years ago
12345678910111213141516171819202122232425262728
  1. Tutorial 2 - single-layer keyboard
  2. =======================================
  3. The easiest way to learn the keyboard library is to read some simple sketches.
  4. [keybrd_2_single-layer.ino](keybrd_2_single-layer/keybrd_2_single-layer.ino) is a simple sketch with annotations that explain how a keybrd sketch works.
  5. The sketch will run on the basic breadboard keyboard described in [tutorial_1_breadboard_keyboard.md](tutorial_1_breadboard_keyboard.md)
  6. After reading the sketch you will be able to modify it to suite your own single-layer keyboard design.
  7. ![basic breadboard keyboard](keybrd_1_breadboard/basic_breadboard_keyboard_front.JPG "basic breadboard keyboard")
  8. Exercises
  9. ---------
  10. 1) Read the four class definitions #included in the sketch.
  11. Classes are defined in the [keybrd library](../src/).
  12. 2) Add a fifth key to the breadboard keyboard and sketch.
  13. Not all rows have to have the same number of keys.
  14. The scanner should have enough readPins to cover all the keys of the longest row.
  15. | Layout |**0**|**1**|**2**|
  16. |:------:|:---:|:---:|:---:|
  17. | **0** | 1 | 2 | 3 |
  18. | **1** | a | b | |
  19. Please take the [keybrd tutorials usability survey](../CONTRIBUTING.md#keybrd-tutorials-usability-survey)
  20. <br>
  21. <a rel="license" href="https://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://licensebuttons.net/l/by/4.0/88x31.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" property="dct:title">keybrd tutorial</span> by <a xmlns:cc="https://creativecommons.org/ns" href="https://github.com/wolfv6/keybrd" property="cc:attributionName" rel="cc:attributionURL">Wolfram Volpi</a> is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.<br />Permissions beyond the scope of this license may be available at <a xmlns:cc="https://creativecommons.org/ns" href="https://github.com/wolfv6/keybrd/issues/new" rel="cc:morePermissions">https://github.com/wolfv6/keybrd/issues/new</a>.