Cam 1: Gwneud
Beth yw e?
Creu cannwyll electronig y gallwch ei diffodd! Mae meicroffon parod y micro:bit newydd yn synhwyro sŵn eich anadl ac yn diffodd y gannwyll - ac yn ei throi ymlaen eto.
Cyflwyniad
Canllaw codio
Beth fyddwch yn ei ddysgu
- Sut i ddefnyddio rhifau ar hap i oleuo LEDs ar hap
- Sut i newid allbynnau mewn ymateb i fewnbynnau synhwyrydd
- Sut i ddefnyddio rhesymeg Boolean i greu switsh sy'n toglo ymlaen ac i ffwrdd pan fydd yn cael ei sbarduno gan yr un digwyddiad
Sut mae'n gweithio
- Cedwir rhif ar hap rhwng 1 a 3 mewn newidyn a elwir yn flicker.
- Defnyddir y rhif hwn i droi LEDs ymlaen ac i ffwrdd ar hap i edrych fel fflam yn crynu.
- Trefnir LEDs y micro:bit mewn grid gyda cholofnau a rhesi wedi'u rhifo o 0 i 4. Mae'r rhaglen yn plotio (troi ymlaen) ac yn dad-blotio (diffodd) gwahanol LEDs yn y rhes uchaf gan ddibynnu ar y rhif ar hap a gedwir yn y newidyn flicker.
- Rhoddir cyfesurynnau ar gyfer yr LEDs bob amser gyda'r golofn ar draws yn gyntaf (yr echelin x) ac wedyn y rhes i fyny ac i lawr (yr echelin y). Mae canol y fflam ar gyfesuryn 2,0.
- Mae dolen am byth yn parhau i redeg yr animeiddiad.
- Mae'r rhaglen hefyd yn defnyddio newidyn a elwir yn lit i olrhain a yw'r gannwyll wedi'i goleuo neu beidio. Mae hyn yn newidyn Boolean. Gall fod gan newidynnau Boolean ddau werth yn unig: gwir (ymlaen) neu gau (i ffwrdd).
- Pan fydd synhwyrydd y meicroffon yn synhwyro sŵn uchel, er enghraifft pan fyddwch yn chwythu arno, bydd y cod yn toglo gwerth lit drwy ei osod i fod yn not lit (heb ei goleuo). Felly, pan fyddwch yn chwythu ar y meicroffon, os yw lit yn wir, bydd yn troi'n gau a bydd sgrin yn cael ei chlirio, gan droi'r LEDs i ffwrdd.
- Os oedd lit yn gau, mae'n troi'n wir ac rydym yn troi'r animeiddiad ymlaen eto.
Beth sydd ei angen arnoch
- micro:bit
- Golygydd MakeCode neu Python
- pecyn batri (opsiynol)
Cam 2: Codio
1from microbit import *
2import random
3
4lit = True
5
6while True:
7 if microphone.was_event(SoundEvent.LOUD):
8 lit = not lit
9 sleep(500)
10 if lit:
11 display.show(Image(
12 "00900:"
13 "09990:"
14 "09990:"
15 "09990:"
16 "09990"))
17 sleep(150)
18 flicker = random.randint(1, 3)
19 if flicker != 2:
20 display.set_pixel(2,0,0)
21 display.set_pixel(flicker,0,9)
22 sleep(150)
23 else:
24 display.clear()
Cam 3: Gwella
- Creu eich cynllun eich hun ar gyfer droi animeiddiad ymlaen neu i ffwrdd gan ddefnyddio sŵn.
- Gallwch wneud y bloc 'ar sŵn uchel' yn fwy neu'n llai sensitif drwy ychwanegu bloc 'gosod trothwy sŵn uchel' at floc 'ar ddechrau'. Gallwch ddod o hyd iddo o dan Mewnbwn a '...mwy.' Defnyddio rhifau llai ar gyfer synau mwy tawel, rhifau mwy ar gyfer synau uwch.
- Yn Python, i newid y trothwy ar gyfer synau uchel defnyddiwch
microphone.set_threshold(SoundEvent.LOUD, 128)
ychydig cyn y ddolentra'n Wir:
gan newid y rhif 128 i'r gwerth sŵn o'ch dewis. Gall y rhif hwn fod yn unrhyw rif rhwng 0 a 255, gyda 255 fel y sŵn uchaf.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.
Translation generously supported by the Welsh Government.