@@ -31,6 +31,8 @@ It runs the breadboard keyboard in this picture. | |||
<img src="tutorials/keybrd_1_breadboard/breadboard_keyboard_2x2.JPG" title="breadboard keyboard" alt="breadboard keyboard" style="height:290px;width:328px;"> | |||
<img src="tutorials/keybrd_1_breadboard/breadboard_keyboard_2x2.JPG" title="breadboard keyboard" alt="breadboard keyboard" height="290" width="328"> | |||
Example complex keybrd sketch | |||
----------------------------- | |||
keybrd_DH and its instantiation files contain about 800 lines of code. |
@@ -1,13 +1,13 @@ | |||
Tutorial 10 - writing your own port classes | |||
Tutorial 10 - writing IOE Port classes | |||
=========================================== | |||
Port classes are the keybrd library's interface to I/O expander ports. | |||
To write your own port classes: | |||
To write your own Port class: | |||
1. Get a copy of the controller or I/O expander datasheet. | |||
1. Get a copy of the I/O expander datasheet. | |||
2. Study other keybrd Port classes. | |||
For example, the keybrd_DH library use these keybrd classes for its PCA9655E I/O: | |||
For example, the keybrd_DH library uses these keybrd classes for its PCA9655E I/O expander: | |||
* PortWrite_PCA9655E | |||
* PortRead_PCA9655E | |||
* LED_PCA9655E |
@@ -23,7 +23,7 @@ Exercises | |||
| Layout | **0** | **1** | | |||
|:------:|:-----:|:-----:| | |||
| **0** | a ! 6 | b @ 7 | | |||
| **1** | sym |. num .| | |||
| **1** | sym | num | | |||
<br> | |||
<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>. |