| ??? 03/18/05 13:26 Read: times |
#89936 - to matrix or not to matrix Responding to: ???'s previous message |
If the depicted is the only combination you want to detect (and maybe standalone keypresses), it is OK to use a matrix.
For the general case (I want to know exactly which switches are on) you need the diodes (at EVERY switch). For example, in a simple diode-less matrix you cannot distinguish these 5 cases: | | | | | | | | | | | | --+--o--+--+-- --+--o--+--o-- --+--+--+--o-- | | | | | | | | | | | | --+--+--+--+-- --+--+--+--+-- --+--+--+--+-- | | | | | | | | | | | | --+--o--+--o-- --+--o--+--+-- --+--o--+--o-- | | | | | | | | | | | | | | | | | | | | --+--o--+--o-- --+--o--+--o-- | | | | | | | | --+--+--+--+-- --+--+--+--+-- | | | | | | | | --+--+--+--o-- --+--o--+--o-- | | | | | | | | and many more. For the depicted case, the (pseudo)program would be: - output (open collector output - standard '51 - pulled up) 0111 (leftmost digit is the uppermost row); read columns, check if it is 0111 (leftmost digit is ... surprise, surprise ... the leftmost column) - output 1011, check if input is 1110 - output 1101, check if input is 1101 - output 1110, check if input is 1011 Jan Waclawek |
| Topic | Author | Date |
| more about keypad | 01/01/70 00:00 | |
| What have you written ? | 01/01/70 00:00 | |
| Scan keyboard "matrix" style | 01/01/70 00:00 | |
| better not a matrix | 01/01/70 00:00 | |
| yes, but | 01/01/70 00:00 | |
| wanting Picture | 01/01/70 00:00 | |
| To Jan! | 01/01/70 00:00 | |
| to erik and mehdi | 01/01/70 00:00 | |
| Re: | 01/01/70 00:00 | |
| Multiple in a row/column | 01/01/70 00:00 | |
| To Jan! | 01/01/70 00:00 | |
| general matrix | 01/01/70 00:00 | |
To Jan! | 01/01/70 00:00 | |
| to matrix or not to matrix | 01/01/70 00:00 | |
| Usefull document? | 01/01/70 00:00 |



