-
Notifications
You must be signed in to change notification settings - Fork 0
Software_WSL
[TOC]
De opdrachten moeten thuis op een pc uitgevoerd worden. We maken daarbij gebruik van een groot aantal programma's. De eenvoudigste manier om dit te doen is door gebruik te maken van Windows Subsystem for Linux (WSL). De stappen gaan ervan uit dat jouw Windows systeem up-to-date is met de laatste windows-update versies en virtualisatie aan heeft staan.

wsl --install --no-distribution

Als er om administratie rechten wordt gevraagd kun je deze accepteren.
Start de computer nu opnieuw op.
De docent heeft een image gemaakt op basis van Arch Linux waar de benodigde software op is geïnstalleerd. Download ems30_wsl.zip en pak deze uit naar bijvoorbeeld c:\ems30_wsl\ of %HOMEPATH%. De hele WSL machine zal zich in deze map bevinden. Voer het ems30_registreren script uit door erop te dubbelklikken, dit installeert de ESM30 distributie. Dit kan even duren dus heb geduld.

Je kunt controleren of het is gelukt door via het start menu "WSL" uit te voeren. Het wachtwoord van de gebruiker is "ems".

Je kunt het gedownloade zipbestand en het backup.ext4.vhdx.gz bestand verwijderen om meteen wat schijfruimte vrij te geven.
We zullen als IDE Visual Studio Code gaan gebruiken. Dit is een super aanpasbaar programma wat voor vele doeleinden kan worden gebruikt. Van Python en C tot Rust op microcontrollers. VS Code heeft standaard ook de optie om gekoppeld te worden aan de WSL instantie. Dit gaan we dan ook doen.
De makkelijkste weg om dit te installeren is via de windows package manager. Open een CMD venster zonder rechten en voer het volgende commando uit:
winget install vscode


VSCode werkt op basis van extensies. Installeer de remote extensie door eerst in de meest linker balk op het roostertje te klikken, vervolgens te zoeken naar remote en dan op install te klikken voor de 'Remote Development' extensie.

Met de extensie kunnen we nu verbinding maken met de WSL instantie. Druk in VSCode op F1 om het commando venster te openen. Type WSL en kies voor WSL: New WSL Window.

Er wordt verbinding gemaakt en een VSCode-server wordt onder de WSL instantie gestart:

Het bovenste icoontje van de linker balk heet de "explorer". Dit is in feite de bestandsverkenner. Klik op "Open Folder" en ga naar "Opdrachten/Hallo_EMS30". Klik op "OK"

Bij het openen van nieuwe mappen zal VSCode altijd nagaan of je dit vertrouwt. Je kunt dit natuurlijk accepteren door op "Yes, I trust the authors" te klikken. Je kunt ook het vinkje aanzetten.

CMake zal vragen welke toolkit je wilt gebruiken. Je kunt hier op de optie klikken met Using compilers C = /usr/sbin/gcc. Mocht het venstertje verdwijnen dan kun je op de onderste balk van VS Code op "No active kit" drukken.

Het project maakt gebruik van CMake in plaats van Makefiles. Het CMakeList bestand in de map beschrijft het project en wat er gecompileerd moet worden. Dit is nu ingesteld dat main.c en alle bestanden in de "src" folder worden meegecompileerd. De EMS30 WSL instantie heeft al een aantal extensies geïnstalleerd staan, waaronder CMake.
Je kunt een breakpoint in main.c zetten en debuggen om te kijken of alles werkt door in de onderste balk op het kevertje te klikken.

Na afloop van dit vak wil je misschien de instantie van je computer halen. Dit kun je doen met behulp van het EMS30.exe clean commando in de map waar je de WSL instantie had geplaatst.
Bij EMS10 en EMS20 heb je al gebruik gemaakt van Code Composer Studio (CCS) van Texas Instruments om de EXP430G2ET LaunchPad en de CC3220S LaunchPad te programmeren. Deze Launchpads gaan je bij EMS30 ook weer gebruiken. We raden je aan om de laatste versie van CCS en van de SimpleLink CC32XX SDK te installeren.
Deze kun je downloaden van de TI website:
De installatie wijst grotendeels zichzelf. Kies bij het installeren van CCS voor een Custom Installation en installeer alleen de volgende componenten:
- MSP430 ultra-low power MCUs;
- Simplelink Wi-Fi CC32XX Wireless MCUs.
De EMS30 distributie maakt gebruik van Arch Linux. De package manager van Arch Linux heet 'pacman'. Arch Linux maakt gebruik van een rolling release systeem. Dit betekent dat, in tegenstelling tot ubuntu, je vrijwel altijd up-to-date bent. Om alle packages (software) van het systeem bij te werken:
$sudo pacman -Syu
Of als je dit al een tijd niet gedaan hebt is het verstandig eerst de keyring te updaten om de laatste keys binnen te halen met
$sudo pacman -Sy archlinux-keyring
Elk ander programma kun je op dezelfde manier installeren. Om te zoeken kun je het volgende commando gebruiken:
$sudo pacman -Ss ikzoekiets
Of je bekijkt de wiki page van pacman. Sowieso is de Arch Linux wiki erg uitgebreid en kun je over vrijwel elk onderwerp wel iets vinden.