De in te geven commando's staan in het blauw
1. stm32 soft
Deze soft komt van VE3WWG en daarover is een zeer goed boek verschenen .
Zie http://www.allitebooks.org/?s=stm32
2. libopencm3
3. FreeRTOS
4. ARM Crosscompiler
5. STlinkV2 , dit is voor een latere post
1. stm32soft.
Komt van Github en wordt dus "gecloond".
Verzeker er u van dat ge op /home/"usernaam" staat , zie deel 1
Met volgend commando
git clone https://github.com/ve3wwg/stm32f103c8t6.git
haalt ge de nodige soft over .
Ga eens kijken naar github en lees de README.md onderaan het blad voor meer info.
https://github.com/ve3wwg/stm32f103c8t6
Het resultaat is een nieuwe map : stm32f103c8t6
Nu kunt ge dit laten of zelf hernoemen . Dit is inderdaad een lange naam , maar als je enkel stm32 intypt en dan op je TAB toets drukt , zal Linux dit zelf voor je aanvullen .Ik behoud de lange naam.
bv cd stm32 <TAB> wordt cd stm32f103c8t6
Als er meerdere mappen beginnen met stm32 zal Linux u een keuze geven.
Typ dan de eerstvolgende ontbrekend letter in ( hier een f ) en Linux doet de rest .
2. libopencm3
Ongeveer hetzelfde stramien.
zorg dat je in de juiste directory staat !
cd ~/stm32f103f8t6
en dan :
git clone https://github.com/libopencm3/libopencm3.git
U ziet een map libopencm3 bijgemaakt.
Dit is de inhoud van de map stm32f103f8t6 na installatie van libopencm3
Let ook op de eigenaar van de mappen , dit moet uw usernaam zijn en niet root !
3. FreeRTOS
Ga naar https://www.freertos.org/a00104.html
Dit was het adres op 6 mei , mss verandert dit met de tijd
En dit is het bestand, versie v10.3.1 op dit moment.
Ga in Linux naar de juiste map met
cd ~/stm32f103c8t6/rtos
Hier gaan we het bestand uitpakken met :
unzip ~/Downloads/FreeRTOSv10.3.1.zip
dit is de mapinhoud van rtos na uitpakken
Let wederom dat uw username er is en niet root
en dit onder FreeRTOS
Hier moeten we eerst al iets doen vóór we het vergeten :
De versie aanpassen in het Projekt.mk bestand onder de map ~/stm32f103c8t6/rtos
Met onderstaand commando
nano Project.mk
nano is de editor , zie eventueel Youtube voor gebruik ervan
In de bovenste lijnen moet je kijken of de juiste versienummer erin staat , zoniet aanpassen zoals op de foto hieronder .
Ik begrens altijd mijn wijzigingen met commentaar , in dit geval mijn call on4aol
bewaren met <CTRL> O < ENTER > en afsluiten met <CTRL> X
Klaar !
4. ARM Crosscompiler
Omdat een pc op een andere architectuur ( x86_64) draait dan onze ARM Cortex moeten we een compiler hebben die onze architectuur omzet naar die ARM.
Dit wordt een crosscompiler genoemd en deze gaan we nu installeren.
Ik vond de mijne op deze link
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads/9-2019-q4-major
en kies de juiste versie , namelijk voor een Linux in dit geval
Dit is een zogenaamde tarball en ingepakt in een bz2 compressiemode.
Dit moeten we eerst uitpakken en dit kan in Linux op de volgende manier.
Hiervoor gaan we wel als superuser moeten fungeren ( cfr Windows met administrator)
Vanuit de homedirectory
sudo -i
het kan zijn dat uw paswoord gevraagd wordt , geef dit dan in
en dan krijgen we
en zien we een andere prompt
maak een nieuwe map aan als deze nog niet bestaat met
mkdir /opt
en ga naar die map met :
cd /opt
U krijgt deze prompt te zien
Uitpakken van de tarball
tar xjf /home/luc/Downloads/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
Let goed op de naam van de tarball , het pad en van de usernaam , die kan verschillend zijn bij U
Er zal een nieuwe map aangemaakt zijn , iets in de trend van
gcc-arm-none-eabi-9-2019-q4-major
deze is toch wel wat lang en we korten deze in naar gcc-arm met het commando
mv gcc-arm-none-eabi-9-2019-q4-major gcc-arm
Zo ziet de inhoud van de map eruit , let niet op de map "test" , dit was inderdaad een test , bij U zal daar "opt" staan
U ziet doordat we als superuser ( root) geïnstalleerd hebben dit dan ook voorkomt in de lijst in tegenstelling met onze vorige installaties
Dit moment is een goed moment om het PATH aan te passen zodat Linux weet als je een commando uitvoert dat met deze install te maken heeft , waar de nodige bestanden zich bevinden .
We kunnen dit rechtstreeks doen op de commandolijn en het zal werken , echter bij heropstart van uw PC , zal dit PATH niet meer herkent worden .
Daarom moeten we dit in een bestand zetten , dat bij opstart doorlopen wordt . Hierdoor is het PATH dan verankerd.
Vanuit uw homedirectory /home/"uwnaam"
nano .bashrc Let op vergeet het punt niet voor bashrc
en voeg de volgende lijn er vanboven bij
export PATH=$PATH:/opt/gcc-arm/bin
Opslaan en bewaren met
<CTRL> O en <CTRL> X
Herstart uw PC !
Pas dan kan het pad opnieuw ingelezen worden !
Nu kunnen we ook al eens testen of de crosscompiler gevonden wordt.
Geef volgend commando in
arm-none-eabi-gcc --version
Ik heb daarna enkele testen gedaan .
U ziet dat de crosscompiler gevonden wordt vanuit de homedirectory
luc ~
en vanuit de root van luc
luc /
maar niet als root user
Usersroot (blauwe prompt) en root als user ( rode prompt) zijn eigenlijk twee verschillende begrippen.
Nochtans is alles geÏnstalleerd als root maar toch toegankelijk vanuit onze homedirectory.
We kunnen de bestanden laten zien met het volgend commando:
ls -l /opt/gcc-arm/bin
Hiermee beëindigen we de soft install.
We moeten nog het één en ander uitvoeren , maar dat is voor de volgende aflevering
Waw goed
BeantwoordenVerwijderenwaw ok
BeantwoordenVerwijderen