Robert Buch
/
compile
main
test.cpp
- Committer:
- robertbuc
- Date:
- 2020-01-13
- Revision:
- 5:d0e564605224
- Parent:
- 4:179695a6d7fd
File content as of revision 5:d0e564605224:
/* weitere viele Beispiele in meinem WIKI */ #include "mbed.h" //#define BUTTON1 p14 //#define BUTTON1 A1 void nibbleLeds(int value); void printb(uint8_t x); int lauflicht(bool richtung, int time, int &anz); int modifyBit (int x,unsigned char position,bool State); BusOut myleds(LED1,LED2,LED3,LED4); DigitalIn button(BUTTON1); const int INIT=0x03; int main() { int anzahl,anz; uint8_t value=INIT; anzahl=lauflicht(true,400,anz=0); printf("anzahl= %d\n",anzahl); nibbleLeds(value); printb(value); printb(modifyBit(INIT,3,1)); wait(0.1); } int modifyBit(int x,uint8_t position, bool State) { int mask=1<<position; int state=int(State); return (x&~mask)|((state<<position)&mask); } 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)); printf("\n"); } void nibbleLeds(int value) { myleds=value%16; }