
Task 4.3.2 Solution
Fork of Task342Solution by
Diff: main.cpp
- Revision:
- 0:cdb59b84bd58
- Child:
- 2:717364fdf071
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Thu Sep 24 12:26:53 2015 +0000 @@ -0,0 +1,51 @@ +#include "mbed.h" + +//Global objects +BusOut binaryOutput(D5, D6, D7); +DigitalIn SW1(D4); + +//Function prototypes +void waitForButtonPress(); + +//Main function +int main() { + + //Create a variable to hold the bit pattern + unsigned int u; + + //Flash LED's to indicate the code is running + binaryOutput = 7; + wait(0.5); + binaryOutput = 0; + + while(1) { + + u = 7; //Set initial value 111 + binaryOutput = u; //Show binary on LED's + waitForButtonPress(); //Call function + + //Use & to reset bit 1 + u = u & 5; //AND with binary 101 + binaryOutput = u; + waitForButtonPress(); + + //Modify u with & to reset bit 2 to a 0 + u = u & 3; //AND with 011 + binaryOutput = u; + waitForButtonPress(); + + + //Modify u with & to reset bit 0 to a 0 + u = u & 6; //AND with 110 + binaryOutput = u; + waitForButtonPress(); + + } //end while(1) +} //end main + + +void waitForButtonPress() { + while (SW1 == 0); + wait(0.25); + while (SW1 == 1); +} \ No newline at end of file