This is the Revision A verion of the In8 RoboBrick. The status of this project is that it has been replaced by the InOut10 RoboBrick.
This document is also available as a PDF document.
The In8 RoboBrick allows you to read up to 8 digital inputs. An interrupt can be generated on the states of selected inptus.
A picture of the In8-A RoboBrick is shown below:
The basic operation is to send a query to the In8 RoboBrick to read the 4 bits of data. The programmer can download a complement mask to cause any of the bits to be complemented prior to reading.
The In8 RoboBrick supports RoboBrick Interrupt Protocol. The interrupt pending bit is set whenever the the formula:
L&(~I) | H&I | R&(~P)&I | F&P&(~I)]is non-zero, where:
The In8 RoboBrick supports both the standard shared commands and the shared interrupt commands in addition to the following commands:
Command Send/
ReceiveByte Value Discussion 7 6 5 4 3 2 1 0 Read Inputs Send 0 0 0 0 0 0 0 0 Return input values abcdefgh (after XOR'ing with complement mask) Receive a b c d e f g h Read Complement Mask Send 0 0 0 0 0 0 0 1 Return complement mask cccccccc Receive c c c c c c c c Read Low Mask Send 0 0 0 0 0 0 1 0 Return low mask llllllll Receive l l l l l l l l Read High Mask Send 0 0 0 0 0 0 1 1 Return high mask hhhhhhhh Receive h h h h h h h h Read Raising Mask Send 0 0 0 0 0 1 0 0 Return raising mask rrrrrrrr Receive r r r r r r r r Read Falling Mask Send 0 0 0 0 0 1 0 1 Return falling mask ffffffff Receive f f f f f f f f Read Raw Send 0 0 0 0 1 0 0 0 Return raw data abcd (without XOR'ing with complement mask) Receive a b c d e f g h Set Complement Mask Send 0 0 0 0 1 0 0 1 Set complement mask to cccccccc Send c c c c c c c c Set Low Mask Send 0 0 0 0 1 0 1 0 Set low mask to llllllll Send l l l l l l l l Set High Mask Send 0 0 0 0 1 0 1 1 Set high mask to hhhhhhhh Send h h h h h h h h Set Raising Mask Send 0 0 0 0 1 1 0 0 Set raising mask to rrrrrrrr Send r r r r r r r r Set Falling Mask Send 0 0 0 0 1 1 0 1 Set falling mask to ffffffff Send f f f f f f f f Read Interrupt Bits Send 1 1 1 0 1 1 1 1 Return the interrupt pending bit p and the interrupt enable bit e. Receive 0 0 0 0 0 0 e p Set Interrupt Commands Send 1 1 1 1 0 c c c Set Interrupt Command ccc. Shared Commands Send 1 1 1 1 1 c c c Execute Shared Command ccc.
The hardware consists of a circuit schematic and a printed circuit board.
The schematic for the In8 RoboBrick is shown below:
The parts list kept in a separate file -- in8.ptl.
The printed circuit board files are listed below:
The In8 software is available as one of:
In addition, there is a test suite available as:
The following issues have come up: