Dominic Harg
/
TINF_Test_1301
Testprogramm lauflicht
Diff: main.cpp
- Revision:
- 3:e46730634660
- Parent:
- 2:f2a2e427327e
- Child:
- 4:a0cc5eebc75e
--- a/main.cpp Mon Jan 13 17:30:42 2020 +0000 +++ b/main.cpp Mon Jan 13 17:38:50 2020 +0000 @@ -3,6 +3,7 @@ void nibbleLeds(int value); void printb(uint8_t x); +int lauflicht(bool richtung, int time, int &anz); BusOut myleds(LED1, LED2, LED3, LED4); DigitalIn button(BUTTON1); @@ -13,11 +14,43 @@ int anzahl, anz; uint8_t value = INIT; + anzahl = lauflicht(true , 400, anz=0); + printf("anzahl= %d\n", anzahl); + nibbleLeds(value); printb(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--)