Operácie

Počítadlo návštevníkov

Z SensorWiki

Verzia z 13:05, 21. jún 2020, ktorú vytvoril Balogh (diskusia | príspevky)

Naprogramujeme jednoduché počítadlo návštevníkov. Existuje takáto mechanická pomôcka, ktorú drží usporiadateľ, ktorý stojí pri dverách a vždy keď niekto vojde dnu, pripočíta jednotku. My teraz navrhneme modernejšiu, elektronickú verziu. Po zapnutí sa znova ikonkou ubezpečíme, že je zariadenie pripravené. Stlačením tlačidla sa vždy pripočíta jednotka. Stlačením oboch sa zariadenie vynuluje a začneme od začiatku. Vo všetkých príkladoch používame premennú pocetNavstevnikov.


    
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)
})
# *******
#include <Adafruit_Microbit.h>

Adafruit_Microbit_Matrix microbit;

int pocetNavstevnikov = 0;

void setup() {
   pinMode(PIN_BUTTON_A, INPUT);
   pinMode(PIN_BUTTON_B, INPUT);

   microbit.begin();
   microbit.show(microbit.YES);
   delay(1000);
}

void loop() { 

 if (! digitalRead(PIN_BUTTON_A) && ! digitalRead(PIN_BUTTON_B)) 
  {
       pocetNavstevnikov = 0;
       delay(1000);
  }
  
 if (! digitalRead(PIN_BUTTON_A)) 
  {
       pocetNavstevnikov++;
  }

 microbit.print(pocetNavstevnikov);
 delay(200); 
 
}
<tab name="mBED C++"><syntaxhighlight lang=c style="background: Cornsilk">
#include "MicroBit.h"

MicroBit uBit;

static int pocetNavstevnikov = 0;

MicroBitImage          YES("0,0,0,0,0\n 0,0,0,0,1\n 0,0,0,1,0\n 1,0,1,0,0\n 0,1,0,0,0\n");

void onButtonA(MicroBitEvent e)
{
   pocetNavstevnikov++;
}

void onButtonAB(MicroBitEvent e)
{
   pocetNavstevnikov = 0;
}


int main()
{
    uBit.init();  // setup
    uBit.messageBus.listen(MICROBIT_ID_BUTTON_A,  MICROBIT_BUTTON_EVT_CLICK, onButtonA);
    uBit.messageBus.listen(MICROBIT_ID_BUTTON_AB, MICROBIT_BUTTON_EVT_CLICK, onButtonAB);

    uBit.display.print(YES);
    uBit.sleep(1000);

  
    while (1)
    {
       uBit.display.print(pocetNavstevnikov);
       uBit.sleep(100);
    }
}


👉 Späť na zoznam príkladov....