led test for academic practice

Dependencies:   mbed

Fork of LED_FLASH_TEST_SU by naoto tanaka

Committer:
NT32
Date:
Thu Apr 10 12:23:30 2014 +0000
Revision:
0:68fbb882ee59
Child:
1:d1e024be1615
led test for practice

Who changed what in which revision?

UserRevisionLine numberNew contents of line
NT32 0:68fbb882ee59 1 #include "mbed.h"
NT32 0:68fbb882ee59 2
NT32 0:68fbb882ee59 3 BusOut leds(P1_13, P1_14, P1_22, P0_17, P0_18, P0_19, P1_15, P0_1);
NT32 0:68fbb882ee59 4
NT32 0:68fbb882ee59 5 int main()
NT32 0:68fbb882ee59 6 {
NT32 0:68fbb882ee59 7 unsigned char hex = 0x00;
NT32 0:68fbb882ee59 8 int state = 0, count = 0;
NT32 0:68fbb882ee59 9 while(1)
NT32 0:68fbb882ee59 10 {
NT32 0:68fbb882ee59 11 // single led flash
NT32 0:68fbb882ee59 12 while(state == 0)
NT32 0:68fbb882ee59 13 {
NT32 0:68fbb882ee59 14 count++;
NT32 0:68fbb882ee59 15 leds = 1;
NT32 0:68fbb882ee59 16 if(count == 20)
NT32 0:68fbb882ee59 17 {
NT32 0:68fbb882ee59 18 state++;
NT32 0:68fbb882ee59 19 }
NT32 0:68fbb882ee59 20 wait(0.1);
NT32 0:68fbb882ee59 21 }
NT32 0:68fbb882ee59 22
NT32 0:68fbb882ee59 23 hex = 0xff;
NT32 0:68fbb882ee59 24 count = 0;
NT32 0:68fbb882ee59 25
NT32 0:68fbb882ee59 26 //all led blink
NT32 0:68fbb882ee59 27 while(state == 1)
NT32 0:68fbb882ee59 28 {
NT32 0:68fbb882ee59 29 count++;
NT32 0:68fbb882ee59 30 //exclusive or.(all bits flipping)
NT32 0:68fbb882ee59 31 leds = hex ^ 0xff;
NT32 0:68fbb882ee59 32 if(count == 6)
NT32 0:68fbb882ee59 33 {
NT32 0:68fbb882ee59 34 state++;
NT32 0:68fbb882ee59 35 }
NT32 0:68fbb882ee59 36 wait(0.5);
NT32 0:68fbb882ee59 37 }
NT32 0:68fbb882ee59 38
NT32 0:68fbb882ee59 39 hex = 0x01;
NT32 0:68fbb882ee59 40 count = 0;
NT32 0:68fbb882ee59 41
NT32 0:68fbb882ee59 42 //flashing led rotate
NT32 0:68fbb882ee59 43 while(state == 2)
NT32 0:68fbb882ee59 44 {
NT32 0:68fbb882ee59 45 count++;
NT32 0:68fbb882ee59 46 //bit rotate
NT32 0:68fbb882ee59 47 leds = hex << 1;
NT32 0:68fbb882ee59 48 if(hex == 0)
NT32 0:68fbb882ee59 49 {
NT32 0:68fbb882ee59 50 hex = 0x01;
NT32 0:68fbb882ee59 51 }
NT32 0:68fbb882ee59 52 if(count == 24)
NT32 0:68fbb882ee59 53 {
NT32 0:68fbb882ee59 54 state = 0;
NT32 0:68fbb882ee59 55 }
NT32 0:68fbb882ee59 56 wait(0.125);
NT32 0:68fbb882ee59 57 }
NT32 0:68fbb882ee59 58 }
NT32 0:68fbb882ee59 59 }