Operácie

Kurz micro:bit: Rozdiel medzi revíziami

Z SensorWiki

Riadok 86: Riadok 86:
 
<!-- **************************************************************************** -->
 
<!-- **************************************************************************** -->
  
[[Súbor:microbit-WinkSmiley.png]][[Súbor:microbit-WinkSmileyRun.png]]
 
  
 
<gallery heights=200px mode="packed">  <!-- slideshow? -->
 
<gallery heights=200px mode="packed">  <!-- slideshow? -->
Riadok 158: Riadok 157:
  
 
<!-- **************************************************************************** -->
 
<!-- **************************************************************************** -->
 +
 +
 +
[[Súbor:microbit-DisplayMisc.png]][[Súbor:microbit-DisplayMiscRun.png]]
 +
 +
  
 
<gallery heights=200px mode="packed">  <!-- slideshow? -->
 
<gallery heights=200px mode="packed">  <!-- slideshow? -->
Riadok 429: Riadok 433:
 
</tabs>
 
</tabs>
  
 +
 +
 +
 +
<!-- **************************************************************************** -->
 +
 +
[[Súbor:microbit-SimpleTimer.png]][[Súbor:microbit-SimpleTimerRun.png]]
 +
 +
<gallery heights=200px mode="packed">  <!-- slideshow? -->
 +
Image:microbit-SimpleTimer.png|''Prvý program...''
 +
Image:microbit-SimpleTimerRun.png|''...bude vyzerať v simulátore takto.''
 +
</gallery>
 +
 +
Jednoduche kuchynske minutky
 +
 +
<tabs>
 +
<tab name="Javascript"><source lang="javascript">
 +
input.onButtonPressed(Button.A, function () {
 +
    for (let index = 0; index < 9; index++) {
 +
        myTime += -1
 +
        basic.showNumber(myTime)
 +
        basic.pause(1000)
 +
    }
 +
})
 +
input.onButtonPressed(Button.AB, function () {
 +
    myTime = 9
 +
    basic.showNumber(myTime)
 +
})
 +
let myTime = 0
 +
myTime = 9
 +
basic.showIcon(IconNames.Yes)
 +
 
 +
</source></tab>
 +
<tab name="Python"><source lang="python" style="background: LightBlue;">
 +
 +
# *******
 +
 +
 +
</source></tab>
 +
<tab name="C++"><syntaxhighlight lang=c style="background: Cornsilk">
 +
 +
/* */
 +
 +
</syntaxhighlight></tab>
 +
</tabs>
 +
 +
 +
<!-- **************************************************************************** -->
 +
 +
[[Súbor:microbit-PeopleCounter.png]][[Súbor:microbit-PeopleCounterRun.png]]
 +
 +
<gallery heights=200px mode="packed">  <!-- slideshow? -->
 +
Image:microbit-PeopleCounter.png|''Prvý program...''
 +
Image:microbit-PeopleCounterRun.png|''...bude vyzerať v simulátore takto.''
 +
</gallery>
 +
 +
Prazdny
 +
 +
<tabs>
 +
<tab name="Javascript"><source lang="javascript">
 +
 +
 
 +
</source></tab>
 +
<tab name="Python"><source lang="python" style="background: LightBlue;">
 +
 +
# *******
 +
 +
 +
</source></tab>
 +
<tab name="C++"><syntaxhighlight lang=c style="background: Cornsilk">
 +
 +
/* */
 +
 +
</syntaxhighlight></tab>
 +
</tabs>
  
  
  
 
[[Category:micro:bit]]
 
[[Category:micro:bit]]

Verzia zo dňa a času 18:36, 24. máj 2020


Obsah

  1. Čo je to physical computing? Interaktivita v umení, priemysle, vzdelávaní.
  2. Zoznámte sa s BBC micro:bit - Tour de Board.
    1. Displej a tlačidlá
    2. Napájanie a konektory
    3. Senzory
    4. Komunikačné možnosti
  3. Začíname. Prvý program.
  4. Možnosti programovania: Microsoft Blocks, Javascript, Python, C++
  5. Vstupy a výstupy
    1. Displej, LED diódy
    2. Tlačidlá, jednoduché senzory
    3. Externé zariadenia
  6. Senzory
    1. Snímač tlaku
    2. Snímač zrýchlenia
    3. Kompas
    4. Snímač teploty
    5. Snímač osvetlenia
  7. Komunikácia
    1. Sériová linka a USB
    2. Rádio
    3. Bluetooth
  8. Vlastný projekt


Toto je zatial len priebezne robena zbierka prikladov


    
basic.showIcon(IconNames.Heart)
from microbit import *

display.show(Image.HEART)
 #include "MicroBit.h"

 MicroBit uBit;
 MicroBitImage Heart("0,1,0,1,0\n
                      1,0,1,0,1\n
                      0,1,0,1,0\n
                      1,0,1,0,1\n
                      0,1,0,1,0\n"); // 5x5 image 

int main()
{
    uBit.init();
    uBit.display.print(Heart);
    release_fiber();
}



Zmurkajuci smajlik:

    
basic.forever(function () {
    basic.showIcon(IconNames.Happy)
    basic.pause(100)
    basic.showLeds(`
        . . . . .
        . # . . .
        . . . . .
        # . . . #
        . # # # .
        `)
    basic.pause(100)
})
# MindPlus
# microbit
from microbit import *


while True:
  display.show(Image("00000:09090:00000:90009:09990"))
  sleep(100)
  display.show(Image("00000:00090:00000:90009:09990"))
  sleep(100)
 /*!
 * MindPlus
 * microbit
 *
 */
#include <Microbit_Matrix.h>
// Static constants
const uint8_t bbcBitmap[][5] = {
	{B00000,B01010,B00000,B10001,B01110},
	{B00000,B00010,B00000,B10001,B01110}
};


// Main program start
void setup() {

}
void loop() {
	MMatrix.show(bbcBitmap[0]);
	delay(100);
	MMatrix.show(bbcBitmap[1]);
	delay(100);
}



Microbit-DisplayMisc.pngMicrobit-DisplayMiscRun.png


Zakladne vypisy:

    
basic.showString("Result:")
basic.showNumber(3)
basic.showIcon(IconNames.Yes)

})
# MindPlus
# microbit
from microbit import *


display.scroll(str("Result: "), wait=False, loop=False)
display.scroll(str((str(3))), wait=False, loop=False)
display.show(Image("00000:00009:00090:90900:09000"))
/*!
 * MindPlus
 * microbit
 *
 */
#include <Microbit_Matrix.h>
// Static constants
const uint8_t bbcBitmap[][5] = {
	{B00000,B00001,B00010,B10100,B01000}
};


// Main program start
void setup() {
	MMatrix.print("Result: ");
	MMatrix.print((String(3)));
	MMatrix.show(bbcBitmap[0]);
}
void loop() {

}




Visacka na diskoteku:

basic.showIcon(IconNames.Yes)
    
input.onButtonPressed(Button.A, function () {
    basic.showIcon(IconNames.Happy)
})
input.onButtonPressed(Button.B, function () {
    basic.showIcon(IconNames.Sad)
})
input.onButtonPressed(Button.AB, function () {
    basic.showIcon(IconNames.Heart)
})
# MindPlus
# microbit
from microbit import *


def on_button_a():
  while True:
    if button_a.is_pressed():
      yield callback_button_a()
    else:
      yield

def on_button_b():
  while True:
    if button_b.is_pressed() and not button_a.is_pressed():
      yield callback_button_b()
    else:
      yield

# Event callback function
def callback_button_a():
  global mind_n_myValue, mind_s_my_string_variable
  display.show(Image("00000:09090:00000:90009:09990"))
def callback_button_b():
  global mind_n_myValue, mind_s_my_string_variable
  display.show(Image("00000:09090:00000:09990:90009"))
def callback_button_a():
  global mind_n_myValue, mind_s_my_string_variable
  display.show(Image("09090:99999:99999:09990:00900"))


func_button_a = on_button_a()
func_button_b = on_button_b()
display.show(Image("00000:00009:00090:90900:09000"))
while True:
  next(func_button_a)
  next(func_button_b)
/*!
 * MindPlus
 * microbit
 *
 */
#include <Microbit_Matrix.h>
// Function declaration
void buttonACallback();
void buttonBCallback();
void buttonABCallback();
// Static constants
const uint8_t bbcBitmap[][5] = {
	{B00000,B00001,B00010,B10100,B01000},
	{B00000,B01010,B00000,B10001,B01110},
	{B00000,B01010,B00000,B01110,B10001},
	{B01010,B11111,B11111,B01110,B00100}
};


// Main program start
void setup() {
	onEvent(ID_BUTTON_A, PRESS, buttonACallback);
	onEvent(ID_BUTTON_B, PRESS, buttonBCallback);
	onEvent(ID_BUTTON_AB, PRESS, buttonABCallback);
	MMatrix.show(bbcBitmap[0]);
}
void loop() {

}

// Event callback function
void buttonACallback() {
	MMatrix.show(bbcBitmap[1]);
}
void buttonBCallback() {
	MMatrix.show(bbcBitmap[2]);
}
void buttonABCallback() {
	MMatrix.show(bbcBitmap[3]);
}


Pocitadlo ludi pri vchode:

    
input.onButtonPressed(Button.A, function () {
    pocetNavstevnikov += 1
})
input.onButtonPressed(Button.AB, function () {
    pocetNavstevnikov = 0
})
let pocetNavstevnikov = 0
pocetNavstevnikov = 0
basic.showIcon(IconNames.Yes)
basic.forever(function () {
    basic.showNumber(pocetNavstevnikov)
})
# MindPlus
# microbit
from microbit import *


mind_n_pocetNavstevnikov = 0

def on_button_a():
  while True:
    if button_a.is_pressed():
      yield callback_button_a()
    else:
      yield

# Event callback function
def callback_button_a():
  global mind_n_myValue, mind_n_pocetNavstevnikov, mind_s_my_string_variable
  mind_n_pocetNavstevnikov = mind_n_pocetNavstevnikov + 1;
def callback_button_a():
  global mind_n_myValue, mind_n_pocetNavstevnikov, mind_s_my_string_variable
  mind_n_pocetNavstevnikov = 0


func_button_a = on_button_a()
mind_n_pocetNavstevnikov = 0
while True:
  next(func_button_a)
  # 滚动显示字符串,不支持中文字符
  display.scroll(str((str(mind_n_pocetNavstevnikov))), wait=False, loop=False)
/*!
 * MindPlus
 * microbit
 *
 */
#include <Microbit_Matrix.h>

// Dynamic variables
volatile float mind_n_pocetNavstevnikov;
// Function declaration
void buttonACallback();
void buttonABCallback();


// Main program start
void setup() {
	onEvent(ID_BUTTON_A, PRESS, buttonACallback);
	onEvent(ID_BUTTON_AB, PRESS, buttonABCallback);
	mind_n_pocetNavstevnikov = 0;
}
void loop() {
	MMatrix.print((String(mind_n_pocetNavstevnikov)));
}


// Event callback function
void buttonACallback() {
	mind_n_pocetNavstevnikov += 1;
}
void buttonABCallback() {
	mind_n_pocetNavstevnikov = 0;
}



Microbit-SimpleTimer.pngMicrobit-SimpleTimerRun.png

Jednoduche kuchynske minutky

input.onButtonPressed(Button.A, function () {
    for (let index = 0; index < 9; index++) {
        myTime += -1
        basic.showNumber(myTime)
        basic.pause(1000)
    }
})
input.onButtonPressed(Button.AB, function () {
    myTime = 9
    basic.showNumber(myTime)
})
let myTime = 0
myTime = 9
basic.showIcon(IconNames.Yes)
# *******
/* */


Microbit-PeopleCounter.pngMicrobit-PeopleCounterRun.png

Prazdny


# *******
/* */