Skip to content

Gweithgaredd

Cannwyll

Canolradd | MakeCode, Python | Dangosydd LED, Meicroffon | Dewis, Rhesymeg Boolean, Synwyryddion

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.
grid yn dangos cyfesurynnau dangosydd LED y micro:bit
  • 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 ddolen tra'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.
Ariennir gan Lywodraeth Cymru / Funded by Welsh Government

Translation generously supported by the Welsh Government.