This is an old revision of the document!


Laboratorul 01. Introducere în Microbit

Placa de dezvoltare Microbit

Microbit (BBC Micro Bit sau micro:bit) este un microcontroler (minicalculator simplu cu capacități limitate care poate rula un singur program) dezvoltat cu ajutorul BBC în scopuri educaționale. Printre caracteristicile principale ale plăcii se numără:

  • Nordic nRF52833 SoC
    • Procesor ARM Cortex-M4 core cu 64 MHz
    • Memorie RAM: 128 KB
    • Memorie Flash: 512 KB
  • Interfata de conectare prin USB
  • Microfon si speaker
  • Antena radio
  • 2 butoane programabile
  • 25 de LED-uri
  • 3 pini programabili
  • Senzor tactil

Simulator Microbit

Pentru a putea simula interacțiunea și programarea unei plăci Microbit, vom folosi o platformă online numită MakeCode. Primii pași pe care îi vom face în acomodarea cu acest simulator este să creăm un proiect și să scriem un program folosind Visual Programming.

Visual Programming (Blockly)

Visual Programming sau Blockly este o bibliotecă dezvoltată de Google care ne permite să scriem coduri folosind blocuri care se pot lega împreună folosind mouse-ul (drag-and-drop). Odată ce programul este “ansamblat” și rulat, în spate se generează codul echivalent într-un limbaj high-level precum Python sau JavaScript (în cazul platformei MakeCode, codul rezultat este în JavaScript).

Avantajul la folosirea Blockly este că nivelul de cunoștințe de programare necesar este redus, iar un program minimal poate fi construit cu ușurință. Dezavantajul major apare în momentul în care dorim să construim programe mai mari și mai complexe, dezvoltarea acestuia într-un limbaj de programare normal fiind mult mai rapidă și mai facilă.

În continuare vom vedea care sunt câteva din block-urile principale din cadrul platformei MakeCode:

Block-uri de bază

Acestea sunt block-uri simple utilizate pentru simularea unui ecran din LED-urile disponibile pe placă, dar și alte funcții precum delay-uri, care întârzie execuția block-ului următor de cod. Câteva exemple sunt:

  • Generarea de imagine folosind LED-urile:

  • Afișarea unui număr folosind LED-urile:

  • Întârzierea execuției următorului block de cod:

Block-uri de interacțiune cu funcționalitățile plăcii

Acestea sunt block-urile care interacționează cu senzorii disponibili pe placă precum cei de atingere, giroscop (pentru înclinație) sau temperatură, dar și cu alte componente precum cele două butoane de pe placă. Câteva exemple sunt:

  • Detectarea înclinării repetate a plăcii:

  • Detectarea atingerii (senzorul se află sub logo):

  • Detectarea apăsării butonului:

Bucle repetitive

Secțiunea de block-uri cuprinsă în cadrul acestui block se va repeta de un număr specific de ori. Cele mai importante sunt:

  • Repetarea unei secțiuni de un număr repetat de ori:

  • Repetarea unei secțiuni de un număr repetat de ori folosind o variabilă:

  • Buclă repetitivă condițională:

  • Întreruperea unei bucle repetitive:

Block-uri logice

Aici avem block-uri care execută block-urile interioare doar dacă o anumită condiție este îndeplinită, dar și blocuri care întorc o valoare logică (adevărat sau fals). Cele mai importante sunt:

  • Secțiune condițională - executată dacă valoarea este adevărată:

  • Verificarea egalității a două numere:

  • Verificarea valorii logice a două valori:

info2/laboratoare/01.1614637072.txt.gz · Last modified: 2021/03/02 00:17 by alexandru.vochescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0