Browse Source

document

tags/v0.5.0
wolfv6 8 years ago
parent
commit
e0a53ca748

+ 1
- 1
README.md View File

@@ -35,7 +35,7 @@ The remaining [keybrd tutorials](tutorials) show how to create custom keybrd fir
Example complex keybrd sketch
-----------------------------
The keybrd_DH emulates the DataHand keyboard.
It has 72 keys, 4 layers, a sub-layer, 2 matrices, and many features.
It has 72 keys, 4 layers, 6 sub-layers, 2 matrices, 8 LEDs, and blinking LEDs.
The keybrd_DH and its instantiation files contain about 800 lines of code.
[mainSketch.ino](https://github.com/wolfv6/keybrd_DH/blob/master/examples/keybrd_DH/mainSketch.cpp)<br>

+ 4
- 0
doc/CHANGELOG.md View File

@@ -7,6 +7,10 @@ keybrd version 1.0.0 will be released when the public API is stable.
## [Unreleased][unreleased]
## [0.3.1] - 2016-05-30
### Changed
* Rename StateLayers to LayerState
## [0.3.0] - 2016-05-09
### Changed
* Restructured the project directory to conform to Arduino library manager specifications

+ 1
- 1
doc/keybrd_library_user_guide.md View File

@@ -190,7 +190,7 @@ Hardware items to check:
* 5 volts across power and ground
* To validate keyboard hardware, modify the simple single-layer keybrd sketch from the tutorial.
<!-- todo after teensy LC bb, linke to minimal keybrd sketch
<!-- todo after teensy LC bb, link to minimal keybrd sketch
[minimal keybrd sketch](blob/master/tutorials/keybrd_2_single-layer_annotated/keybrd_2_single-layer_annotated.ino).
-->

+ 2
- 2
doc/planned_features.md View File

@@ -2,7 +2,7 @@ planned_features is a view of where the keybrd project is headed.
Top priority
============
Add interrupts for I2C
Redesign elements of debouncer.
Med priority
============
@@ -12,7 +12,7 @@ Add 16x16 matrix capability (currently limited to 8x8 matrices)
Low priority
============
Add matrix-to-layout transform array (to decouple matrix from layout)
Add matrix-to-layout mapping array (to decouple matrix from layout)
Change tutorial sketches from teensy 2.0 and PCA9655E-D IOE to Teensy LC and MCP23018 IOE

+ 0
- 8
src/LED.h View File

@@ -3,14 +3,6 @@
/* LED is an abstract base class
Each LED object is an IC pin that is used to power an LED on and off.
Connect the LED in series with the resistor:
Calculate current-limiting-resistor value (100 Ohms to 10k Ohms will work with 5 volts)
R = (Vs - Vf) / If
http://www.digikey.com/en/resources/conversion-calculators/conversion-calculator-led-series-resistor
Connect the LED's anode (the longer lead) to the AVR output pin (+)
Connect the LED's cathode to ground (-)
Never connect a LED directly from ground to power. Doing so would destroy the LED.
*/
class LED
{

+ 4
- 4
tutorials/tutorial_3a_multi-layer_keyboard.md View File

@@ -17,7 +17,7 @@ When you finish this tutorial you will be able to be able to modify a multi-laye
## Pseudo code for simple layer scheme
The following pseudo code has just enough detail to show how layer schemes work.
**Key_Layer** objects select the active layer.
**Key_Layer** objects are used to select an active layer.
The "layer" variable is a layer id number.
When a Key_Layer object is pressed, it tells LayerState to update the active layer.
```
@@ -40,9 +40,9 @@ class LayerState
}
```
**Key_Layered** objects contain multiple Key pointers, one Key pointer for each layer.
Layer ids are used like indexes to select the appropriate key.
When a Key_Layered object is pressed, it gets the active layer from LayerState, and then sends the key of the active layer.
**Key_Layered** objects contain multiple elements, one element for each layer.
Layer ids are used like indexes to send the appropriate element.
When a Key_Layered object is pressed, it gets the active layer from LayerState, and then sends the appropriate element.
```
class Key_Layered
{