Fatima Vunic
/
mbed_test
Test Programm
Diff: main.cpp
- Revision:
- 3:9be1093ae35e
- Parent:
- 2:b43b5da6f341
- Child:
- 4:3c91e63e0642
--- a/main.cpp Mon Jan 13 17:37:00 2020 +0000 +++ b/main.cpp Mon Jan 13 17:46:52 2020 +0000 @@ -3,7 +3,7 @@ //#define BUTTON A1 // NUCLEO:Taster A1 //int modifybBit (int x, unsigned char position, bool State); -//int lauflicht (bool richtung, int time, int &anz); +int lauflicht (bool richtung, int time, int &anz); void nibbleLeds (int value); void printb (uint8_t x); @@ -16,9 +16,41 @@ int anzahl, anz; uint8_t value = INIT; + anzahl = lauflicht(true, 400, anz=0); + printf("anzahl = %d\n", anzahl); + nibbleLeds(value); wait (0.1); } + + int lauflicht(bool richtung, int time, int &anz){ + int i; + uint8_t lauf = 0x01; + + if(!richtung) + lauf = 0x08; + + while(1) { + nibbleLeds(lauf&0x0F); + if(richtung) { + lauf = lauf << 1; + if(lauf > 8) + lauf = 0x01; + } + else { + lauf = lauf >> 1; + if(lauf == 0) + lauf = 0x08; + } + if(button) + break; + wait_ms(time); + anz++; + } + return anz; + } + + void printb (uint8_t x){ for (int i = sizeof(x)<<3; i; i--) putchar('0'+((x>>(i-1))&1));