51caso
Idea de programación: cada vez que se lee el valor del puerto P1, los 4 bits inferiores se enmascaran y solo se juzgan los 4 bits superiores
{
#define INPUTMASK 0xF0
char ReadPort = 0;
ReadPort = P1 amp INPUTMASK;
cambiar(ReadPort)
{
case 0xf0: break /* Si no se presiona ningún botón, salta*/
case 0x10: Subfunction1(); saltar a la subfunción 1 */
case 0x20: Subfunction2(); break /* Presione P1.5, saltar a la subfunción 2 */
case 0x40: Subfunction3(); ; /* Presione P1.6, salte a la subfunción 3 */
case 0x80: Subfunction4() /* Presione P1.7, salte a la subfunción 4 * /
predeterminado:
Subfunción5(); braak /* Presione 2 o más teclas para saltar a la subfunción 5 */
}
}
La programación de bloques de módulos se utiliza en la función de caja de interruptor. Las subfunciones aquí son la implementación del estado de otros puertos en el estado clave correspondiente, que no se describirá nuevamente.