#pragma vector = 1 __interrupt void pushButtonInterrupt() { onewire_stalls = 0; // reset delay for reading 1-wire device // check for interrupt 10 (0x04) if (EIF1 & 0x04) { // interrupt 10 application_mode++; if (application_mode == MODE_TOTAL) application_mode = 0; dotemperature = 0; dohumidity = 0; docounter = 0; if (application_mode==MODE_TEMPERATURE) dotemperature = 1; else if (application_mode==MODE_HUMIDITY) dohumidity = 1; else if (application_mode==MODE_SPEED) docounter = 1; if (application_mode == MODE_TIMER) { // set RTC timeout to < 100 ms rtc_setsubsecondsalarm(0xF0); } else { // set RTC timeout to ~500 ms rtc_setsubsecondsalarm(0x80); } Display(); } /* check the other push button interrupts */ ...