Microsoft introduserte nylig en ny UWP-app som lar brukerne programmere en Raspberry Pi 2, Raspberry 3 eller en Raspberry Pi Sense Hat fra nettleserne. Windows 10 IoT Core Blockly lar brukerne lage et program med sammenlåsende blokker som deretter kan kontrollere en Raspberry Pi mini-datamaskin.
Microsoft hentet inspirasjon fra fire forskjellige prosjekter når de utformet dette nye verktøyet, inkludert Googles Blockly open source block editor, BBCs micro: bit og sin egen block editor..
Windows 10 IoT Core Blockly har en enkel struktur: hovedappen starter en webserver som serverer Blockly-redigeringssiden på port 8000. Brukere kan få tilgang til Blockly-redigereren ved å bla til Raspberry Pi: 8000 fra en nettleser. Microsoft opprettet også egendefinerte blokker for spesifikke Sense Hat-funksjoner, som du finner under spesifikke kategorier Basic, Input, LED, Images, Pin og mer.
Andre funksjoner inkluderer:
- Blockly gjør det enkelt å oversette blokker til JavaScript, slik at vi kan generere en kjørbar JavaScript-kodebit. Du kan se hva blokkeringsprogrammet ditt oversetter til i JavaScript ved å trykke på den blå knappen "Konverter til JavaScript" - merk: for å aktivere "hendelser" som "på joystick-knappen trykkes" har vi noen få JavaScript-funksjoner, og vi er spesielt oppmerksom rekkefølgen på de forskjellige funksjonene.
- På dette tidspunktet har vi en blokkeredigerer som kan generere en kjørbar JavaScript-kodebit: Vi trenger noe som kan utføre denne JavaScript-kodebiten på en annen tråd uten å forstyrre webserveren.
- For å kjøre kodebiten, instanserer vi Chakra JavaScript-motoren (som er en del av hver Windows 10-utgave) og starter kodebiten. Chakra gjør det enkelt å stoppe utdraget etter eget ønske.
- Mange av blokkene samhandler direkte med Sense Hat. Vi kunne ha skrevet en haug JavaScript-kode for å kontrollere Sense Hat, men vi utnyttet det komplette og brukervennlige C # SenseHat-biblioteket fra EmmellSoft. Det å bygge bro mellom JavaScript og C # var ekstremt enkelt å utnytte et UWP-bibliotek for innpakning.
- Sist, vi la til noen maskiner for å sikre at den siste "kjør" -utdraget er lagret på Raspberry Pi (både blokkoppsettet og JavaScript-utdraget er hurtigbufret) og kjør igjen neste gang IoT Core Blockly-appen starter (f.eks. din enhet).
For mer informasjon om hvordan du konfigurerer IoT Core Blockly på din Raspberry Pi, sjekk ut Microsofts blogginnlegg.