pxt-calliope/docs/projects/flashing-heart.md

96 lines
1.8 KiB
Markdown
Raw Normal View History

2017-04-05 19:16:47 +02:00
# Flashing Heart
2016-05-28 06:40:59 +02:00
## Introduction @unplugged
Learn how to use the LEDs and make a flashing heart!
![Heart shape in the LEDs](/static/mb/projects/flashing-heart/show-leds.gif)
2018-10-10 18:00:56 +02:00
## Step 1 @fullscreen
2016-05-28 06:40:59 +02:00
Place the ``||basic:show leds||`` block in the ``||basic:on start||`` block and draw a heart.
2016-05-28 06:40:59 +02:00
```blocks
2016-05-28 06:40:59 +02:00
basic.showLeds(`
. # . # .
# # # # #
# # # # #
. # # # .
. . # . .`
);
2016-05-28 06:40:59 +02:00
```
2018-10-10 18:00:56 +02:00
## Step 2 @fullscreen
2016-05-28 06:40:59 +02:00
Place another ``||basic:show leds||`` block under the heart to make it blink. Check in the simulator to see the heart blink.
2017-04-05 19:16:47 +02:00
```blocks
2016-05-28 06:40:59 +02:00
basic.showLeds(`
. # . # .
# # # # #
# # # # #
. # # # .
. . # . .`);
2017-04-05 19:16:47 +02:00
basic.showLeds(`
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .`);
2016-06-11 05:09:18 +02:00
```
2018-10-10 18:00:56 +02:00
## Step 3 @fullscreen
2016-06-11 05:09:18 +02:00
But we only see the heart blink once. To have it continue to blink, move the blocks inside the ``||basic:forever||`` to make the animation repeat.
2016-06-11 05:09:18 +02:00
2018-07-09 06:08:21 +02:00
```blocks
2016-06-11 05:09:18 +02:00
basic.forever(() => {
2016-12-08 09:10:00 +01:00
basic.showLeds(`
. # . # .
# # # # #
# # # # #
. # # # .
. . # . .`
);
2017-04-05 19:16:47 +02:00
basic.showLeds(`
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .`
);
2016-06-11 05:09:18 +02:00
})
2016-06-11 20:40:09 +02:00
```
2018-10-10 18:00:56 +02:00
## Step 4 @fullscreen
2017-04-05 19:16:47 +02:00
Now let's get fancy and place more ``||basic:show leds||`` blocks to create your own animation.
2017-04-05 19:16:47 +02:00
```blocks
2016-06-11 20:40:09 +02:00
basic.forever(() => {
2016-12-08 09:10:00 +01:00
basic.showLeds(`
. # . # .
# # # # #
# # # # #
. # # # .
. . # . .`
);
basic.showLeds(`
. # . # .
2017-04-05 19:16:47 +02:00
# . # . #
# . . . #
. # . # .
2016-12-08 09:10:00 +01:00
. . # . .`);
2017-04-05 19:16:47 +02:00
basic.showLeds(`
. . . . .
. # . # .
. # # # .
. . # . .
. . . . .`);
2016-06-11 20:40:09 +02:00
})
2016-06-25 23:22:50 +02:00
```
2016-12-08 09:10:00 +01:00
2018-10-10 18:00:56 +02:00
## Step 5 @fullscreen
2016-12-08 09:10:00 +01:00
If you have a @boardname@ connected, click ``|Download|`` to transfer your code and watch the hearts flash!