LED is switched on and off by typing 1,2,3 and 4

Dependencies:   mbed

Committer:
Parkz
Date:
Sat Jul 13 09:14:11 2013 +0000
Revision:
0:343714a476ac
The scanf function here doesnt seem to be working. Please help me!

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Parkz 0:343714a476ac 1 #include "mbed.h"
Parkz 0:343714a476ac 2 #include<stdio.h>
Parkz 0:343714a476ac 3 Serial pc(USBTX,USBRX);
Parkz 0:343714a476ac 4 DigitalOut leds[]={(LED1),(LED2),(LED3),(LED4)};
Parkz 0:343714a476ac 5 void ledon(int no)
Parkz 0:343714a476ac 6 {
Parkz 0:343714a476ac 7 if(leds[no]==0)
Parkz 0:343714a476ac 8 {
Parkz 0:343714a476ac 9 leds[no]=1;
Parkz 0:343714a476ac 10 }
Parkz 0:343714a476ac 11 else
Parkz 0:343714a476ac 12 {
Parkz 0:343714a476ac 13 leds[no]=0;
Parkz 0:343714a476ac 14 }
Parkz 0:343714a476ac 15 }
Parkz 0:343714a476ac 16
Parkz 0:343714a476ac 17 int main()
Parkz 0:343714a476ac 18 {
Parkz 0:343714a476ac 19 int buffer=0;
Parkz 0:343714a476ac 20 a:
Parkz 0:343714a476ac 21 pc.printf("\nType numbers 1,2,3,4 to switch respective leds on and off\n");
Parkz 0:343714a476ac 22 pc.scanf("%d",&buffer);
Parkz 0:343714a476ac 23 pc.printf("Its %d\n",buffer);
Parkz 0:343714a476ac 24 switch(buffer)
Parkz 0:343714a476ac 25 {
Parkz 0:343714a476ac 26 case 1:ledon(buffer-1);
Parkz 0:343714a476ac 27 break;
Parkz 0:343714a476ac 28 case 2:ledon(buffer-1);
Parkz 0:343714a476ac 29 break;
Parkz 0:343714a476ac 30 case 3:ledon(buffer-1);
Parkz 0:343714a476ac 31 break;
Parkz 0:343714a476ac 32 case 4:ledon(buffer-1);
Parkz 0:343714a476ac 33 }
Parkz 0:343714a476ac 34 goto a;
Parkz 0:343714a476ac 35 }
Parkz 0:343714a476ac 36