X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=examples%2Fat91sam7s%2Fat91sam7s.c;h=17293a4448bd35091ce4a4d471a74ffa6118b813;hb=9ff4e7d506adcf5c3cf8ef603279bd540c2e792b;hp=275af6e565faf6246d980d8d198ed674a8af9ac7;hpb=24c21c92d29b76a3f0de0a107f4bafef7bb0f812;p=bertos.git diff --git a/examples/at91sam7s/at91sam7s.c b/examples/at91sam7s/at91sam7s.c index 275af6e5..17293a44 100644 --- a/examples/at91sam7s/at91sam7s.c +++ b/examples/at91sam7s/at91sam7s.c @@ -37,31 +37,49 @@ * \brief AT91SAM7S-EK porting test. */ +#include "cfg/cfg_ser.h" #include + +#include + #include #include -#include #include -#include +#include + #include Timer leds_timer; Serial ser_fd; +int roll = 0; static void leds_toggle(void) { uint8_t a = (~PIOA_ODSR & 0x0f); - if (a) + if (roll == 1) { + if(a == 4) + roll = 2; + PIOA_SODR = a; PIOA_CODR = a << 1; + + } + else if (roll == 2) + { + if(a == 2) + roll = 1; + + PIOA_SODR = a; + PIOA_CODR = a >> 1; } else { PIOA_SODR = 0x0f; /* turn first led on */ PIOA_CODR = 0x00000001; + roll = 1; } /* Wait for interval time */ @@ -102,9 +120,9 @@ int main(void) /* turn first led on */ PIOA_CODR = 0x00000001; - timer_setSoftint(&leds_timer, (Hook)leds_toggle, 0); - timer_setDelay(&leds_timer, ms_to_ticks(100)); - timer_add(&leds_timer); + timer_setSoftint(&leds_timer, (Hook)leds_toggle, 0); + timer_setDelay(&leds_timer, ms_to_ticks(100)); + timer_add(&leds_timer); ASSERT(proc_testRun() == 0); // Main loop