??? 09/16/06 13:52 Modified: 09/16/06 14:36 Read: times |
#124407 - Port modes Responding to: ???'s previous message |
If you don't use quasi-bidirectional port mode at the rows, you will need additional pull-ups in the range of 4k7...10k here, equally what you use to drive the columns. These pull-ups are also needed for the AND-gate you connect to the rows. In quasi-bidirectional port mode no additional pull-ups are needed, because internal ones are already provided.
The best way to drive a scanpad is to use quasi-bidirectional port mode, not only for the rows, but also for the columns. Push-pull drivers at the columns should be avoided, because heavy short circuits can occur, when pressing more than one key at a time! If you want to use (true) open drain outputs at the columns, then don't forget these obligatory pull-up resistors at each column of about 4k7...10k. Otherwise, potentials here can float to the nowhere's land causing internal port circuitry to oscillate. But take care, (true) open drain outputs are very slowly and can cause trouble at your other port pins. To speed up open drains means to use very low pull-up resistors like 470R, but which is highly unsuited for a microcontroller project. So, if it doesn't hurt elsewhere in your circuit please use quasi-bidirectional port mode (if your Silabs micro allows). Kai |