1
Dependencies: mbed
main.cpp
00001 #include "mbed.h" 00002 00003 Serial pc(USBTX, USBRX); // tx, rx 00004 BusOut myled(P1_13,P1_12,P1_7,P1_6,P1_4,P1_3,P1_1,P1_0,LED4,LED3,LED2,LED1); //Bus definieren mit den LEDs als ausgang 00005 00006 int i,j,k; //Zähler für die aktuelle Position(i), die anzahl der LEDs die blinken sollen(j) und für eine bearbeitbare Version von j(k) 00007 int main() 00008 { 00009 j = 1; //eine LED soll am Anfang läuchten 00010 while(1) 00011 { 00012 k = j; //j kopieren 00013 myled=0x0001; // = 0000 0000 0000 0001 so sieht das Bitmuster 0x0001 aus 00014 wait(0.1); // 100ms warten, weil man sonst die erste LED nicht sieht 00015 for (i=1;i<11+j;i++) // Schleife i=1 bis i=10 00016 { 00017 myled=myled<<1; // bitweises Verschieben um 1 n. links 00018 if(k>1) //Vergleichen ob k > 1 00019 { 00020 //k ist größer als 1 also muss man eine LED anreihen 00021 myled = myled | 0x0001; //Led rechts hinzufügen 00022 k --; //k also die noch hinzuzufügenden LEDs um 1 verringern 00023 } 00024 wait(0.1); 00025 pc.printf("%d\n",i); 00026 } 00027 00028 00029 k = j; //j kopieren 00030 myled=0x0800; // = 1000 0000 0000 0000 00031 wait(0.1); 00032 for (i=1;i<11+j;i++) // Schleife i=1 bis i=11 00033 { 00034 myled = myled >> 1; // bitweises Verschieben nach rechts 00035 if(k>1) 00036 { 00037 myled = myled | 0x0800; //Led links hinzufügen 00038 k --; //k also die noch hinzuzufügenden LEDs um 1 verringern 00039 } 00040 wait(0.1); 00041 } 00042 j++; //j, die anzahl der läuchtenden LEDs wird nach jeder Runde um 1 erhöht 00043 } 00044 }
Generated on Mon Aug 8 2022 14:16:47 by
1.7.2