#include #include #include #include #include #include "display.h" #include "font.h" #include "modem.h" #include "system.h" int main (void) { // disable ADC to save power PRR |= _BV(PRADC); // dito wdt_disable(); // Enable pull-ups on PC3 and PC7 (button pins) PORTC |= _BV(PC3) | _BV(PC7); display.setString("Ohai! "); display.enable(); modem.enable(); sei(); while (1) { // nothing to do here, go to idle to save power SMCR = _BV(SE); asm("sleep"); /* * The display timer causes a wakeup after 256µs. Run the system * loop after the timer's ISR is done. * The Modem also causes wakeups, which is pretty convenient since * it means we can immediately process the received data. */ rocket.loop(); display.scroll(); } return 0; }