• Aide
  • Eurêkoi Eurêkoi

Livre

Micro:bit : programmez la carte avec Makecode et Micropython

Résumé

Guide pour apprendre à programmer la carte micro:bit afin de créer des objets interactifs et connectés, qu'il s'agisse de périphériques divers ou de moteurs et de robots, enrichi de nombreux exemples. L'auteur expose également des alternatives à cette carte telles que Arduino, Makey Makey, Ozobot ou encore Pyboard. Les sketchs utilisés dans les exemples sont accessibles en téléchargement.


  • Éditeur(s)
  • Date
    • C 2020
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (495 p.) : ill. ; 21 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-2-409-02500-6
  • Indice
    • 681.33 Logique câblée, microprogrammation, microprocesseurs
  • Quatrième de couverture
    • micro:bit

      Programmez la carte avec MakeCode et MicroPython

      Ce livre s'adresse à toute personne qui souhaite apprendre à programmer la carte micro:bit aussi bien avec le langage MakeCode. constitué de blocs, qu'avec MicroPython, langage plus textuel. Il intéressera autant les professeurs des écoles ou de technologie, les animateurs, les parents souhaitant initier leurs enfants au codage que tous ceux qui sont à la recherche d'une carte facile à programmer pour créer des objets interactifs ou connectés.

      Après une présentation de plusieurs cartes de développement et des langages de programmation les plus couramment utilisés pour les programmer, les chapitres qui suivent décrivent en détail l'utilisation et la programmation de la carte micro:bit, avec des exemples de code systématiquement présentés en MakeCode et en MicroPython. Ensuite, le lecteur est invité à utiliser la carte d'abord seule avant de découvrir comment la relier aux composants électroniques les plus classiques (boutons poussoirs, capteurs, LED, buzzer...) et comment la connecter à différents modules et cartes d'extension (LED adressable, relais, détecteur à ultrasons, Joystick écran LCD...)

      Un chapitre est entièrement consacré aux moteurs et aux robots (télécommandés, détecteurs d'obstacle, suiveurs de ligne...) avec de nombreux exemples. Le lecteur dispose également de toutes les informations lui permettant de fabriquer son propre robot avec une carte de contrôle et quelques moteurs fixés sur un châssis.

      Dans la suite du livre, l'auteur présente d'autres cartes, utilisées fréquemment en milieu scolaire, telles que Arduino, Makey Makey, Ozobot, PyBoard et Circuit Playground Express ;cette dernière constituant une alternative intéressante à la carte micro:bit.

      Pour finir, le dernier chapitre regroupe les principales fonctions du langage MicroPython (avec la bibliothèque micro:bit) permettant ainsi au lecteur de vérifier facilement la syntaxe de son code.

      Les programmes utilisés dans les exemples du livre sont disponibles en téléchargement sur le site www.editions-eni.fr


  • Tables des matières
      • micro:bit

      • Programmez la carte avec MakeCode et MicroPython

      • Editions ENI

      • Avant-propos
      • Chapitre 1
      • Cartes de développement
      • 1. Présentation générale17
      • 1.1 Types de cartes18
      • 1.1.1 Cartes à microcontrôleur18
      • 1.1.2 Cartes à microprocesseurs19
      • 1.1.3 Le meilleur des deux20
      • 1.2 Évolution20
      • 1.3 Utilisation pédagogique22
      • 1.4 Makers23
      • 2. Programmation23
      • 2.1 Algorithme24
      • 2.1.1 Exemple concret24
      • 2.1.2 Organigramme25
      • 2.2 Évolution des langages26
      • 2.3 Principes actuels de programmation28
      • 2.3.1 Initialisation du programme28
      • 2.3.2 Boucle infinie28
      • 2.3.3 Variables28
      • 2.3.4 Constantes28
      • 2.3.5 Opérateurs29
      • 2.3.6 Conditions29
      • 2.3.7 Boucle conditionnelle29
      • 2.3.8 Commentaires29
      • 2.3.9 Fonctions29
      • 2.3.10 Bibliothèques (ou modules)29
      • 2.4 Syntaxe30
      • 3. Langages de programmation par blocs30
      • 3.1 MakeCode30
      • 3.1.1 Installation30
      • 3.1.2 Tutoriels31
      • 3.1.3 Interface33
      • 3.1.4 Programmation34
      • 3.1.5 Conclusion35
      • 3.2 Scratch36
      • 3.2.1 Installation36
      • 3.2.2 Utilisation37
      • 3.2.3 Conclusion39
      • 4. Langages de programmation par lignes de code39
      • 4.1 MicroPython40
      • 4.1.1 Installation40
      • 4.1.2 Bibliothèques (ou modules)41
      • 4.1.3 Indentation41
      • 4.1.4 Commentaires42
      • 4.2 IDE Arduino42
      • 4.2.1 Installation42
      • 4.2.2 Bibliothèque Adafruit46
      • 4.2.3 Téléversement47
      • 5. Autres langages48
      • 5.1 Vitta Science48
      • 5.2 JavaScript49
      • 5.3 mBlock50
      • 5.4 L'application micro:bit51
      • Chapitre 2
      • Premiers programmes
      • 1. Présentation de la carte53
      • 1.1 Historique rapide53
      • 1.2 Caractéristiques53
      • 1.3 Achat de la carte54
      • 1.4 Environnement de développement55
      • 2. Mise en route56
      • 3. Mise à jour du firmware56
      • 4. Matrice58
      • 4.1 Texte défilant (Hello world)58
      • 4.2 Un seul caractère66
      • 4.3 Image67
      • 4.4 Animation69
      • 4.5 Nombres72
      • 4.6 Pixel76
      • 5. Boutons78
      • 5.1 Programmation des boutons78
      • 5.2 Chronomètre et compte à rebours85
      • 5.3 Compteur manuel88
      • Chapitre 3
      • Capteurs internes
      • 1. Accéléromètre91
      • 2. Jeux de hasard95
      • 2.1 Pile ou Face95
      • 2.2 Pierre Papier Ciseaux97
      • 2.3 Dé (version simplifiée)99
      • 2.4 Dé (version classique)100
      • 3. Magnétomètre103
      • 3.1 Boussole103
      • 3.2 Compteur de tours105
      • 4. Mesure de température108
      • 5. Mesure de luminosité109
      • 6. Capteurs sensitifs110
      • 7. Radio112
      • 8. Envoi de caractères112
      • 8.1 Envoi de nombres115
      • 8.2 Deux coeurs à l'unisson117
      • 8.3 Température extérieure120
      • 8.4 Tricher au jeu « Pierre Feuille Ciseaux »123
      • 8.5 Communiquer en Morse126
      • 9. Communication série131
      • 10. Stockage138
      • Chapitre 4
      • Entrées et sorties
      • 1. Présentation143
      • 1.1 Types de ports144
      • 1.1.1 Bornes 3V et GND144
      • 1.1.2 Entrées numériques144
      • 1.1.3 Entrées analogiques144
      • 1.1.4 Entrées tactiles145
      • 1.1.5 Sorties numériques145
      • 1.1.6 Sorties analogiques145
      • 1.1.7 Matrice146
      • 1.1.8 Boutons146
      • 1.1.9 Bus SPI et I2C146
      • 1.2 Branchement du micro : bit147
      • 1.2.1 Anneaux147
      • 1.2.2 Breadboard (ou platine d'essai)148
      • 1.2.3 Connecteurs150
      • 1.2.4 Modules spécifiques151
      • 2. Capteurs152
      • 2.1 Bouton poussoir152
      • 2.1.1 Branchement152
      • 2.1.2 Programmation154
      • 2.1.3 Boutons A et B155
      • 2.2 Potentiomètre157
      • 2.2.1 Branchement158
      • 2.2.2 Programmation159
      • 2.3 Capteurs analogiques159
      • 2.3.1 Photorésistance160
      • 2.3.2 Humidité (analogique)161
      • 3. Actionneurs163
      • 3.1 LED (sortie numérique)163
      • 3.1.1 Branchement164
      • 3.1.2 Programmation164
      • 3.2 Inversion de la LED165
      • 3.2.1 Branchement165
      • 3.2.2 Programmation166
      • 3.3 Feu tricolore à 3 états167
      • 3.3.1 Branchement168
      • 3.3.2 Programme de base169
      • 3.3.3 Programme optimisé170
      • 3.3.4 Avec une fonction171
      • 3.4 Feu tricolore à 4 états173
      • 3.5 Feux de chantier173
      • 3.5.1 Branchement173
      • 3.5.2 Programmation174
      • 3.6 Feux de chantier avec compte à rebours177
      • 3.7 LED [sortie analogique]181
      • 3.7.1 Branchement182
      • 3.7.2 Programmation182
      • 3.8 LED RGB184
      • 3.8.1 Types de LED RGB185
      • 3.8.2 Branchement186
      • 3.8.3 Programmation (mode numérique)188
      • 3.8.4 Programmation (mode analogique)190
      • 3.8.5 Programmation (couleurs prédéfinies)192
      • 3.9 Musique195
      • 3.9.1 Buzzer Actif195
      • 3.9.2 Buzzer passif195
      • 3.9.3 Haut-parleur196
      • 3.9.4 Musiques préprogrammées197
      • 3.9.5 Notes des musiques198
      • 3.9.6 Fréquence des notes201
      • 3.9.7 Sirène203
      • 3.10 Synthèse vocale204
      • 4. Kits de démarrage205
      • 4.1 Inventor's Kit205
      • 4.2 Valise Grove207
      • 4.3 Boson Starter Kit207
      • 4.4 Gravity loT Starter Kit209
      • Chapitre 5
      • Modules et cartes d'extension
      • 1. Modules211
      • 1.1 LED adressables (NeoPixel)211
      • 1.1.1 Branchement212
      • 1.1.2 SERVO : Lite et module Grove214
      • 1.1.3 Programmation216
      • 1.2 Circular RGB LED220
      • 1.2.1 Programmation221
      • 1.2.2 Aller plus loin222
      • 1.3 Ultrasonic Ranger223
      • 1.3.1 Branchement223
      • 1.3.2 Programmation224
      • 1.4 Détecteur de mouvement (PIR)226
      • 1.4.1 Branchement227
      • 1.4.2 Programmation228
      • 1.5 Relais229
      • 1.5.1 Branchement231
      • 1.5.2 Programmation232
      • 1.6 Sensor Board233
      • 1.6.1 Branchement234
      • 1.6.2 Capteur de son234
      • 1.6.3 Température235
      • 1.6.4 Lumière236
      • 2. Cartes d'extension237
      • 2.1 LAMP : bit237
      • 2.1.1 Principe de fonctionnement238
      • 2.1.2 Programme de base239
      • 2.1.3 Réglage du seuil de déclenchement241
      • 2.1.4 Variation de la LED242
      • 2.1.5 Détecteur de lumière243
      • 2.1.6 Système de surveillance244
      • 2.1.7 Alarme lumineuse246
      • 2.2 Joystick for micro:bit248
      • 2.2.1 Branchement des composants249
      • 2.2.2 Programme de test250
      • 2.2.3 Contrôle d'un pixel254
      • 2.2.4 Musique255
      • 2.3 Game ZIP 64256
      • 2.3.1 Branchement des composants257
      • 2.3.2 Boutons257
      • 2.3.3 LED adressables259
      • 2.3.4 Musique262
      • 2.3.5 Vibreur263
      • 2.3.6 Aller plus loin264
      • 2.4 KLEF Piano265
      • 2.4.1 Touches tactiles266
      • 2.4.2 Programmation267
      • 2.5 Aller plus loin272
      • 2.6 : VIEW Text32 (écran LCD)272
      • 2.6.1 Programmation273
      • Chapitre 6
      • Moteurs et robots
      • 1. Moteurs à courant continu277
      • 1.1 Utilisation d'un transistor278
      • 1.1.1 Branchement278
      • 1.1.2 Programmation279
      • 1.2 Pont en H280
      • 1.2.1 Branchement282
      • 1.2.2 Programmation282
      • 1.3 Motor Driver Board de Kitronik285
      • 1.3.1 Branchement286
      • 1.3.2 Programmation287
      • 2. Servomoteur289
      • 2.1 Branchement simple290
      • 2.1.1 Branchement290
      • 2.1.2 Programmation291
      • 2.2 Servo : Lite292
      • 2.2.1 Branchement293
      • 2.2.2 La barrière294
      • 2.2.3 Programmation294
      • 3. Moteurs et servomoteurs en même temps296
      • 3.1 Driver Expansion Board296
      • 3.1.1 Branchement297
      • 3.1.2 Programmation298
      • 3.2 Crickit300
      • 3.2.1 Connecteurs301
      • 3.2.2 Mise à jour302
      • 3.2.3 Branchement303
      • 3.2.4 Programmation303
      • 4. Robots308
      • 4.1 MeArm308
      • 4.1.1 Montage309
      • 4.1.2 Alimentation310
      • 4.1.3 Fonctionnement311
      • 4.1.4 Réglage des moteurs312
      • 4.1.5 Programme de base313
      • 4.1.6 Amélioration du programme315
      • 4.1.7 Petit défaut318
      • 4.2 MOVE mini319
      • 4.2.1 Calibration des moteurs320
      • 4.2.2 Montage du robot321
      • 4.2.3 Test du robot322
      • 4.2.4 : MOVE mini MK2323
      • 4.2.5 Contrôle avec un autre Micro:bit323
      • 4.2.6 Joystick for micro:bit328
      • 4.2.7 Dessins332
      • 4.3 Extensions du robot : MOVE mini332
      • 4.3.1 Pare-chocs332
      • 4.3.2 Suiveur de ligne333
      • 4.3.3 Activation du 3e moteur336
      • 4.3.4 Bulldozer337
      • 4.3.5 Tipper trailer (remorque benne)342
      • 4.4 Maqueen343
      • 4.4.1 Montage343
      • 4.4.2 Sirène de police344
      • 4.4.3 LED NeoPixel345
      • 4.4.4 Contrôle du robot au Joystick346
      • 4.4.5 Contrôle du robot par IR (infrarouge)352
      • 4.4.6 Mesure de distance354
      • 4.4.7 Détection des obstacles355
      • 4.4.8 Suivi de ligne356
      • 4.5 Extension Maqueen Mechanic358
      • 4.5.1 Robot Mechanic Beetle359
      • 4.5.2 Autres robots364
      • 4.6 Extension batterie rechargeable364
      • 4.7 Bit Kit micro:car365
      • 4.7.1 Programmation366
      • 4.8 Votre robot371
      • Chapitre 7
      • Circuit Playground Express
      • 1. Présentation373
      • 1.1 Microcontrôleur et mémoire374
      • 1.2 Alimentation374
      • 1.2.1 Connecteur micro-USB374
      • 1.2.2 Entrée batterie JST374
      • 1.2.3 Anneaux d'alimentation375
      • 1.3 Boutons375
      • 1.3.1 Bouton Reset375
      • 1.3.2 Boutons poussoirs (A et B)375
      • 1.3.3 Interrupteur (deux positions)375
      • 1.4 Capteurs376
      • 1.4.1 Capteur de luminosité376
      • 1.4.2 Capteur de température376
      • 1.4.3 Capteur sonore376
      • 1.4.4 Accéléromètre 3 axes376
      • 1.4.5 Capteurs tactiles376
      • 1.4.6 Emetteur et récepteur infrarouges377
      • 1.5 Autres composants377
      • 1.5.1 LED verte377
      • 1.5.2 LED rouge377
      • 1.5.3 LED RGB adressables (NeoPixel)377
      • 1.5.4 Haut-parleur378
      • 1.6 Entrées et sorties externes378
      • 2. Mise en route379
      • 2.1 Drivers379
      • 2.2 MakeCode online379
      • 2.3 MakeCode App380
      • 2.4 CircuitPython381
      • 3. Utilisation384
      • 3.1 LED NeoPixel384
      • 3.2 Animation386
      • 3.3 Haut parleur388
      • 3.4 Lecteur audio391
      • 3.5 Autres exemples392
      • 4. Crickit for Circuit Playground Express393
      • 4.1 Contrôle de moteurs395
      • 4.1.1 Branchement395
      • 4.1.2 Programmation396
      • Chapitre 8
      • Pyboard
      • 1. Présentation401
      • 2. Modes de programmation403
      • 2.1 Éditeur de texte403
      • 2.2 Terminal405
      • 2.3 Safe mode (Mode de sécurité)408
      • 2.4 Réinitialisation d'usine408
      • 2.5 Messages d'erreur409
      • 3. Exemples de code410
      • 3.1 LED410
      • 3.1.1 Branchement410
      • 3.1.2 Programmation411
      • 3.2 Feu tricolore411
      • 3.2.1 Branchement412
      • 3.2.2 Programmation412
      • 4. Carte d'extension Gravity413
      • 4.1 Capteur analogique413
      • 4.1.1 Branchement413
      • 4.1.2 Programmation414
      • 4.2 Servomoteur415
      • 4.2.1 Branchement415
      • 4.2.2 Programmation415
      • 5. Carte pyboard-UNO-R3416
      • 5.1 Batterie Lipo417
      • 5.2 Installation des bibliothèques418
      • 5.3 Entrées et sorties UNO418
      • 5.3.1 Branchement419
      • 5.3.2 Programmation420
      • 5.4 LED NeoPixel interne420
      • 5.5 LED NeoPixel externes421
      • 5.5.1 Branchement421
      • 5.5.2 Programmation422
      • 5.6 Buzzer423
      • 5.7 Afficheur OLED425
      • 6. Sources426
      • Chapitre 9
      • Arduino, Makey Makey et Ozobot
      • 1. Arduino427
      • 1.1 IDE Arduino428
      • 1.2 mBlock429
      • 1.3 VittaScience430
      • 2. Arduino Uno431
      • 2.1 Contrôle d'une LED431
      • 2.1.1 Branchement432
      • 2.1.2 Programmation432
      • 2.2 Feu tricolore436
      • 2.2.1 Branchement436
      • 2.2.2 Programmation437
      • 3. Arduino Leonardo439
      • 3.1 Manette de jeu439
      • 3.1.1 Branchement440
      • 3.1.2 Programmation440
      • 3.2 Shield Joystick442
      • 3.2.1 Branchement442
      • 3.2.2 Programmation442
      • 4. Makey Makey444
      • 4.1 Piano « Banane »445
      • 4.2 Scratch447
      • 4.3 Aller plus loin450
      • 5. Ozobot Bit451
      • 5.1 Mise en route452
      • 5.2 Code couleur (OzoCodes)454
      • 5.3 Ozobot Bit App et Bit Groove455
      • 5.4 Ozoblockly456
      • 5.5 Dessins458
      • 5.6 Aller plus loin458
      • Chapitre 10
      • MicroPython
      • 1. Introduction459
      • 2. Structure d'un programme459
      • 2.1 Données460
      • 2.1.1 Variables460
      • 2.1.2 Portée des variables461
      • 2.1.3 Liste461
      • 2.1.4 Types de données461
      • 2.2 Fonctions462
      • 2.2.1 Sans paramètres462
      • 2.2.2 Avec paramètres462
      • 2.3 Opérateurs463
      • 2.3.1 Opérateurs arithmétiques463
      • 2.3.2 Opérateurs de comparaison463
      • 2.3.3 Opérateurs logiques463
      • 2.4 Structures de contrôle463
      • 2.4.1 if, else, elif464
      • 2.4.2 while464
      • 2.4.3 for464
      • 2.4.4 break465
      • 3. micro : bit465
      • 3.1 Matrice de LED465
      • 3.1.1 display.show465
      • 3.1.2 display.scroll467
      • 3.1.3 display.clear468
      • 3.1.4 display.get_pixel468
      • 3.1.5 display.set_pixel468
      • 3.1.6 display.off468
      • 3.1.7 display.on468
      • 3.1.8 display.is_on469
      • 3.2 Boutons469
      • 3.2.1 button_x.is_pressed469
      • 3.2.2 button_x.was_pressed469
      • 3.2.3 button_x.get_presses469
      • 3.3 Accéléromètre470
      • 3.4 Magnétomètre471
      • 3.5 Autres capteurs473
      • 3.5.1 Température473
      • 3.5.2 Luminosité ambiante473
      • 3.6 Système473
      • 3.6.1 sleep473
      • 3.6.2 running_time473
      • 3.6.3 reset474
      • 3.6.4 panic474
      • 3.6.5 random.randint474
      • 3.6.6 random.randrange474
      • 3.6.7 random.random474
      • 3.6.8 random.choice475
      • 3.6.9 random.seed475
      • 3.7 Communication radio475
      • 3.7.1 import radio475
      • 3.7.2 radio.on475
      • 3.7.3 radio.off475
      • 3.7.4 radio.send476
      • 3.7.5 radio.receive476
      • 3.7.6 radio.config476
      • 3.7.7 radio.reset477
      • 3.7.8 radio.send_bytes477
      • 3.7.9 radio.receive_bytes477
      • 3.8 Entrées/sorties477
      • 3.8.1 is_touched477
      • 3.8.2 read_digital478
      • 3.8.3 write_digital478
      • 3.8.4 read_analog478
      • 3.8.5 write_analog478
      • 3.9 Musique479
      • 3.9.1 import music479
      • 3.9.2 music.set_tempo479
      • 3.9.3 music.get_tempo()479
      • 3.9.4 music.play480
      • 3.9.5 music.pitch482
      • 3.9.6 music.stop482
      • 3.9.7 music.reset482
      • 3.10 Synthèse vocale483
      • 3.10.1 import speech483
      • 3.10.2 speech.say483
      • 3.10.3 speech.translate483
      • 3.10.4 speech.pronounce483
      • 3.10.5 speech.sing484
      • 3.11 NeoPixel484
      • 3.12 REPL (Avec Mu)485
      • 3.13 Graphique485
      • Index487

  • Origine de la notice:
    • Abes ;
    • Electre
  • Disponible - 681.33 QUE

    Niveau 3 - Informatique