linking in maker activities

This commit is contained in:
Tom Ball 2016-06-11 21:12:08 -04:00
parent f8e80e6a9d
commit 56301d2d6f
9 changed files with 80 additions and 51 deletions

View File

@ -22,15 +22,15 @@
![](/static/mb/projects/a5-compass.png) ![](/static/mb/projects/a5-compass.png)
## Music ## [Hack your headphones](/lessons/hack-your-headphones/activity)
![](/static/mb/projects/a6-music.png) ![](/static/mb/projects/a6-music.png)
## Conductive ## [Banana keyboard](/lessons/banana-keyboard/activity)
![](/static/mb/projects/a7-conductive.png) ![](/static/mb/projects/a7-conductive.png)
## Network ## [Telegraph](/lessons/telegraph/activity)
![](/static/mb/projects/a8-network.png) ![](/static/mb/projects/a8-network.png)
@ -38,7 +38,7 @@
![](/static/mb/projects/a9-radio.png) ![](/static/mb/projects/a9-radio.png)
## Watch ## [Watch](/lessons/the-watch/activity)
![](/static/mb/projects/a10-watch.png) ![](/static/mb/projects/a10-watch.png)

View File

@ -1,83 +1,112 @@
# compass activity
![](/static/mb/projects/a5-compass.png) ![](/static/mb/projects/a5-compass.png)
Use the compass to determine which direction you are heading. Display the direction that the micro:bit is facing using the compass
### ~avatar avatar
Welcome! This guided tutorial will show you how to program a script that displays the direction the micro:bit is pointing. Let's get started!
### ~
## Step 1 ## Step 1
Continuously sample the compass heading and store in the variable `degrees`: Create a loop that will continuously update the reading of the compass.
```blocks ```blocks
let degrees = 0;
basic.forever(() => { basic.forever(() => {
degrees = input.compassHeading();
}); })
``` ```
## Step 2 ## Step 2
If the degrees is less than 45, we are heading North: Store the reading of the micro:bit in a variable called `degrees`.
```blocks ```blocks
let degrees = 0;
basic.forever(() => { basic.forever(() => {
degrees = input.compassHeading(); let degrees = input.compassHeading()
if (degrees <= 45) { })
basic.showString("N");
} else if (false) { } else { }
});
``` ```
### Step 3 ## Step 3
Otherwise, if the degrees is less than 135, we are heading East: If `degrees` is less than `45`, then the compass heading is mostly pointing toward North. Display `N` on the micro:bit.
```blocks ```blocks
let degrees = 0;
basic.forever(() => { basic.forever(() => {
degrees = input.compassHeading(); let degrees = input.compassHeading();
if (degrees <= 45) { if (degrees < 45) {
basic.showString("N"); basic.showString("N");
} else if (degrees <= 135) {
basic.showString("E");
} else { }
});
```
### Step 4
Otherwise, if the degrees is less than 225, we are heading East:
```blocks
let degrees = 0;
basic.forever(() => {
degrees = input.compassHeading();
if (degrees <= 45) {
basic.showString("N");
} else if (degrees <= 135) {
basic.showString("E");
} else if (degrees <= 225) {
basic.showString("S");
} else {
} }
}); });
``` ```
### Step 5 ## Step 4
If `degrees` is less than 135, the micro:bit is mostly pointing East. Display `E` on the micro:bit.
Otherwise, we are heading west.
```blocks ```blocks
let degrees = 0;
basic.forever(() => { basic.forever(() => {
degrees = input.compassHeading(); let degrees = input.compassHeading();
if (degrees <= 45) { if (degrees < 45) {
basic.showString("N"); basic.showString("N");
} else if (degrees <= 135) { }
else if (degrees < 135) {
basic.showString("E"); basic.showString("E");
} else if (degrees <= 225) { }
});
```
## Step 5
If `degrees` is less than 225, the micro:bit is mostly pointing South. Display `S` on the micro:bit.
```blocks
basic.forever(() => {
let degrees = input.compassHeading();
if (degrees < 45) {
basic.showString("N");
}
else if (degrees < 135) {
basic.showString("E");
}
else if (degrees < 225) {
basic.showString("S"); basic.showString("S");
} else { }
});
```
## Step 6
If none of these conditions returned true, then the micro:bit must be pointing West. Display `W` on the micro:bit.
```blocks
basic.forever(() => {
let degrees = input.compassHeading();
if (degrees < 45) {
basic.showString("N");
}
else if (degrees < 135) {
basic.showString("E");
}
else if (degrees < 225) {
basic.showString("S");
}
else {
basic.showString("W"); basic.showString("W");
} }
}); });
``` ```
### ~avatar avatar
Excellent, you're ready to continue with the [challenges](/lessons/compass/challenges)!
### ~

View File

Before

Width:  |  Height:  |  Size: 156 KiB

After

Width:  |  Height:  |  Size: 156 KiB

View File

Before

Width:  |  Height:  |  Size: 163 KiB

After

Width:  |  Height:  |  Size: 163 KiB

View File

Before

Width:  |  Height:  |  Size: 220 KiB

After

Width:  |  Height:  |  Size: 220 KiB

View File

Before

Width:  |  Height:  |  Size: 120 KiB

After

Width:  |  Height:  |  Size: 120 KiB

View File

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 97 KiB

View File

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

Before

Width:  |  Height:  |  Size: 164 KiB

After

Width:  |  Height:  |  Size: 164 KiB