This is the documentation page for the pushbutton boards.
- 1 Overview
- 2 Assembly instructions
- 3 External resources
- 4 Additional software
- 5 Pinout
- 6 jumper settings
- 7 Programming
- 8 The software
- 9 Default operation
- 10 Future hardware enhancements
- 11 Future software enhancements
- 12 Changelog
This board adds 4 pushbuttons to your I2C or SPI enabled device.
None: the board comes fully assembled.
The only LED is a power indicator.
See solder jumpers on how to change the solder jumper.
By changing the solder jumper SJ1, you can make the connector SPI0 into an ICSP programming connector for the attiny44 on the board.
Reading the pushbuttons is very much like the DIO module. The read and write ports are described below.
Some ports just set a single value. So writing more than one byte to such a port is redundant. Other ports are logically a stream of bytes. So writing more than one byte is encouraged.
The pushbutton board defines just one port.
The pushbutton board supports several read ports:
|0x01||identification string. (terminated with 0).|
|0x02||read eeprom (serial number).|
|0x10||read all buttons|
|0x20||read button 1 (1 means NOT pushed, 0 means pushed)|
|0x21||read button 2 (1 means NOT pushed, 0 means pushed)|
|0x22||read button 3 (1 means NOT pushed, 0 means pushed)|
|0x23||read button 4 (1 means NOT pushed, 0 means pushed)|
|0x30||reports which buttons have been pushed since last read of this register|
|0x40||read button 1 (1 means pushed, 0 means NOT pushed) (V1.1 and up)|
|0x41||read button 2 (1 means pushed, 0 means NOT pushed) (V1.1 and up)|
|0x42||read button 3 (1 means pushed, 0 means NOT pushed) (V1.1 and up)|
|0x43||read button 4 (1 means pushed, 0 means NOT pushed) (V1.1 and up)|
Future hardware enhancements
Future software enhancements
- Initial public release