Inhoudsopgave:

Setup ST Visual Develop met de Cosmic STM8 Compiler - Ajarnpa
Setup ST Visual Develop met de Cosmic STM8 Compiler - Ajarnpa

Video: Setup ST Visual Develop met de Cosmic STM8 Compiler - Ajarnpa

Video: Setup ST Visual Develop met de Cosmic STM8 Compiler - Ajarnpa
Video: Getting Started with STM8S using STVD and Cosmic C Compiler 2024, November
Anonim
Stel ST Visual Develop in met de Cosmic STM8-compiler
Stel ST Visual Develop in met de Cosmic STM8-compiler

Dit is hoe ik de Integrated Development Environment (IDE) heb ingesteld om STM8-microcontrollers van ST Microelectronics (ST) te programmeren met Windows 10. Ik beweer niet dat dit de juiste manier is, maar het werkt goed voor mij. In deze Instructable ziet het eruit als veel werk, maar het is eigenlijk helemaal niet zo veel werk.

Benodigdheden:

Koffie en wat geduld

PC met Windows 10

internet toegang

STLink debugger/programmeur

Stap 1: Download de Cosmic Compiler en ST Microelectronics IDE (STVD)

Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
Download de Cosmic Compiler en ST Microelectronics IDE (STVD)

U moet zich registreren op de ST.com-site en de Cosmic.com-site en er verschillende programma's van downloaden. Daarnaast heb je een licentie nodig om de Cosmic compiler te gebruiken. Deze licentie is gratis en een jaar geldig, daarna vraagt u eenvoudig een nieuwe licentie aan. De licentie is alleen geldig voor de pc waarop het verzoek is gedaan. Ik denk dat het door ST wordt betaald als een service voor de bedrijven die hun hardware gebruiken, maar daar ben ik niet zeker van. (Ik weet dat er een andere compiler is, SDCC, die open source is, maar ik heb er geen ervaring mee.)

Ik begin met het downloaden van de Cosmic compiler omdat de aanvraag voor een licentie wordt afgehandeld door een medewerker van Cosmic dus het kan even duren, als je de aanvraag in een weekend verstuurt zul je waarschijnlijk moeten wachten tot de volgende week. In die tijd kunnen we de IDE van ST downloaden en installeren. Ga dus naar:

https://www.cosmicsoftware.com/download.php

Scroll naar beneden tot je het gele blokje "STM8 free tools with no limits" ziet, klik op de link "Registreer en download" en vul de gevraagde info in. Daarna kunt u de compilers downloaden. Er zijn twee compilers en twee programma's genaamd Idea_STM8 en IdeaCXM in de download, we zullen alleen de STM8-compiler ervan gebruiken.

Stap 2: De Cosmic Compiler(s) installeren

De Cosmic Compiler(s) installeren
De Cosmic Compiler(s) installeren
De Cosmic Compiler(s) installeren
De Cosmic Compiler(s) installeren
De Cosmic Compiler(s) installeren
De Cosmic Compiler(s) installeren

Voer het gedownloade programma uit als beheerder van uw pc (u hebt het beheerderswachtwoord nodig) zodat het kan worden geïnstalleerd in de map "Program Files (x86)". Volg gewoon de instructies, accepteer de licentie (ik heb het niet gelezen, toch?), vul uw naam en een bedrijfsnaam in en klik op volgende en vervolgens op de volgende schermen. Nadat alle bestanden zijn geïnstalleerd, wil het zichzelf in het "pad" plaatsen, ik heb het zichzelf laten registreren in HKEY_LOCAL_MACHINE zodat het voor alle gebruikers van de pc werkt, niet alleen voor de beheerder.

Zorg ervoor dat u de informatie in de volgende schermen leest en selecteer wat u wel of niet wilt, b.v. Ik wil geen pictogrammen op het bureaublad.

Aan het einde van de installatie wordt Readme.txt geopend waarin staat dat u de software op twee manieren kunt registreren. Bij mij werkte de "On the Web"-methode niet, dus koos ik voor de e-mailoptie. Vul bij Gebruiker, Bedrijf en E-mail je echte naam en e-mailadres in, ik heb geen bedrijf dus heb ik maar een leuke naam verzonnen. Selecteer vervolgens "Schrijf naar bestand", sla het op een plaats op waar jij en de beheerder toegang hebben tot: C:\ werkte voor mij. U kunt dit bestand als bijlage bij een e-mail verzenden of de tekst erin kopiëren en in de hoofdtekst van uw e-mail naar Cosmic sturen. Het e-mailadres is:

[email protected]

en zorg ervoor dat u: " STM8FSE_2020 License Request " als onderwerp invoert. Rond de installatie af en laat uw pc opnieuw opstarten. En dan gewoon wachten tot de licentie arriveert.

Stap 3: Download en installeer ST Visual Develop

Download en installeer ST Visual Develop
Download en installeer ST Visual Develop
Download en installeer ST Visual Develop
Download en installeer ST Visual Develop
Download en installeer ST Visual Develop
Download en installeer ST Visual Develop

Download en installeer ondertussen de ST Visual Develop-software.

Ga naar:

Scroll naar de onderkant van de pagina en klik op "Get Software", accepteer de Licentieovereenkomst (ik heb het ook niet gelezen…) en Login als je al een login hebt met ST of registreer als je nog geen login hebt. De ST-site is nogal traag, dus het kan zijn dat u enkele seconden moet wachten op een reactie ervan, wacht geduldig af, het zal werken.

Sla het gedownloade zip-bestand op en open het, pak de software uit naar waar Windows het wil hebben. Start de installatie van ST Visual development door "sttoolset_pack42.exe" als administrator uit te voeren. Klik door de eerste schermen, accepteer opnieuw de licentieovereenkomst (en opnieuw zonder deze te lezen) en accepteer de meeste opties die ST voorstelt. Nee, ik weet ook niet waarom ST directorynamen als "st_toolset" heeft gekozen. Nogmaals, ik wilde geen pictogrammen op het bureaublad en ik heb de release-opmerkingen niet gelezen.

De eerste keer dat ik de ST Toolset installeerde, mislukte deze door aan het einde van de installatie te blijven hangen. Toen ik de installatie via de taakmanager beëindigde en ST Visual Develop probeerde te starten, kreeg ik een scherm met de melding dat er een "afwijking" was opgetreden. Waarna het programma begon…..

Ik heb opnieuw geïnstalleerd en de tweede keer ging het goed. Nog een herstart van Windows later was het programma correct geïnstalleerd en startte het zonder foutmeldingen.

Stap 4: Enkele opties in STVD

Enkele opties in STVD
Enkele opties in STVD
Enkele opties in STVD
Enkele opties in STVD
Enkele opties in STVD
Enkele opties in STVD

We moeten verschillende opties instellen in ST Visual Develop (STVD) Ga naar - Extra - Opties - Gereedschapset. Selecteer de Toolset genaamd "STM8 Cosmic" en stel het "Root path" in op:

"C:\Program Files (x86)\COSMIC\FSE_Compilers\CXSTM8"

Het "Bin path" kan leeg blijven, het "Include path" zal al "HSTM8" zijn en het "Lib path" zal "Lib" zijn, die zijn allemaal correct. Klik op Toepassen en OK, de waarschuwing(en) die u ontvangt gaan over andere Toolsets, zodat ze kunnen worden genegeerd.

Kijk eens naar de andere tabbladen van de Opties, misschien wilt u enkele van de opties wijzigen.

In het tabblad "Debug" heb ik Automatisch bestanden opslaan geselecteerd omdat het me irriteerde toen het na elke bewerking vroeg of ik het wilde opslaan voor een compilatie. Natuurlijk wil het dat mijn bewerkingen worden opgeslagen!

In het tabblad "Bewerken" heb ik de lange regel uitgeschakeld - standaard ingeschakeld en ik heb de tab-grootte gewijzigd van 2 naar 4 en het lettertype van "Courier New" naar "Consolas" met een puntgrootte van 12.

Maar deze instellingen zijn persoonlijke voorkeuren, niet belangrijk en kunnen later worden gedaan.

Stap 5: Eerste programma (knipperend)

Eerste programma (knipperend)
Eerste programma (knipperend)
Eerste programma (knipperend)
Eerste programma (knipperend)
Eerste programma (knipperend)
Eerste programma (knipperend)

Het is tijd om te gaan programmeren. Om dat te doen hebben we een zogenaamde werkruimte nodig waar STVD informatie opslaat over de projecten erin. Klik op Bestand - Nieuwe werkruimte - Maak lege werkruimte, ik geef de werkruimte meestal de naam van het type microcontroller dat ik voor het project zal gebruiken het. Dus ik zal "STM8S103" kiezen en ik zal het in een map met dezelfde naam plaatsen.

Nu kunt u met de rechtermuisknop op de werkruimte (STM8S103.stw) klikken en er een nieuw project in maken. Klik dan op Nieuw Project en geef het de naam die je wilt, maak ook een map aan om dit project in te plaatsen, dat doet STVD niet vanzelf! Selecteer de STM8 Cosmic toolchain en controleer of de Toolchain root "C:\Program Files (x86)\COSMIC\FSE_Compilers\CXSTM8" is. Klik op OK.

Selecteer vervolgens de microcontroller die u gaat gebruiken, hier kies ik de STM8S103F3P en klik op Selecteren, OK

Het project is aangemaakt en u kunt de mappen openen om te zien welke bestanden door STVD zijn aangemaakt. SLUIT nu ST Visual Ontwikkel en sla de wijzigingen in de werkruimte en uw nieuwe project op. We zullen enkele bestanden overschrijven en meer toevoegen om STVD voor te bereiden voor gebruik met de Cosmic-compiler.

Stap 6: Overschrijven en bestanden toevoegen

Overschrijven en bestanden toevoegen
Overschrijven en bestanden toevoegen
Overschrijven en bestanden toevoegen
Overschrijven en bestanden toevoegen

De benodigde bestanden kunnen worden gedownload van:

https://gitlab.com/WilkoL/setup-st-visual-develop-…

en sla ze op in een nieuwe map, ik noem deze map mijn sjabloon

In de vorige stap hebben we het project in een eigen projectmap aangemaakt. Kopieer ALLE bestanden en mappen die je hebt gedownload van Gitlab naar deze projectmap. Het zal enkele bestanden vervangen die er al zijn.

De standaard bibliotheek wordt gebruikt (zie main.h) stm8s_conf.h is al bewerkt om USE_FULL_ASSERT uit te sluiten)

stm8s_it.c is al bewerkt om TIMER4 UPDATE IRQ-verwerking op te nemen (voor systick en DELAY)

Stap 7: Start ST Visual Develop opnieuw en voltooi de projectconfiguratie

Start ST Visual Development opnieuw en voltooi de projectconfiguratie
Start ST Visual Development opnieuw en voltooi de projectconfiguratie
Start ST Visual Development opnieuw en voltooi de projectconfiguratie
Start ST Visual Development opnieuw en voltooi de projectconfiguratie
Start ST Visual Development opnieuw en voltooi de projectconfiguratie
Start ST Visual Development opnieuw en voltooi de projectconfiguratie
Start ST Visual Development opnieuw en voltooi de projectconfiguratie
Start ST Visual Development opnieuw en voltooi de projectconfiguratie

Wanneer u STVD opnieuw opstart, krijgt u een heel leeg scherm te zien.

Om naar uw project te gaan, selecteert u Bestand - Recente werkruimte - "de naam die u eraan hebt gegeven" STVD zal het laatste (en nog steeds enige) project openen. U kunt een eerste blik werpen op de bestanden, maar we zijn nog niet klaar.

Voeg eerst de volgende bestanden toe:

stm8s_it.c naar bronbestanden

stm8s_it.h en main.h om bestanden op te nemen (zie afbeeldingen)

Maak nu de mappen aan in de projectmap:

lib

lib/inc

lib/src

standard_lib

standard_lib/inc

standard_lib/scr (zie afbeeldingen)

En voeg daarna alle bestanden in de corresponderende schijfmappen toe aan de nieuwe mappen in het project. Uiteindelijk zou het eruit moeten zien als de laatste foto hierboven.

Stap 8: De projectinstellingen

De projectinstellingen
De projectinstellingen
De projectinstellingen
De projectinstellingen
De projectinstellingen
De projectinstellingen

We zijn bijna klaar…

GA NAAR: Project -> Instellingen -> Algemeen

- Gereedschapset moet STM8 Cosmic zijn

- kies "Project specifiek toolset pad"

- verander het rootpad in: C:\Program Files (x86)\COSMIC\FSE_Compilers\CXSTM8

- pad opnemen moet Hstm8 zijn, bibliotheekpad moet Lib. zijn

GA NAAR: Project -> Instellingen -> C-Compiler -> Categorie Algemeen

- verander de optimalisaties in Aanpassen

– verander Compiler Message Display van "Alleen weergavefouten" in "Displayfouten en waarschuwingen"

– voeg STM8S103 HSE_VALUE=16000000UL toe aan de preprocessordefinities

– (of de STM8S103 of een ander type microcontroller en de daadwerkelijke HSE-waarde die u gebruikt)

GA NAAR: Project -> Instellingen -> C-Compiler ->Categorie-optimalisaties

Selecteer voor DEBUG:

– Uitschakelen voor foutopsporing (-no)

– Split functies in aparte secties (+split)

Selecteer voor RELEASE:

– Split functies in aparte secties (+split)

– Snelheidsoptimalisatie (+snel) (STM8 Cosmic>= 4.3.2)

– of kies Minimaliseer codegrootte (+compact)

(maar niet zowel +snel als +compact)

GA NAAR: Project -> Instellingen -> C-Compiler -> Categorie Preprocessor

- extra omvatten bibliotheken moeten zijn:

standaard_lib\inc; lib\inc;. ← voeg de "punt" toe

- controleer dit voor zowel Debug- als Release-instellingen

GA NAAR: Project -> Instellingen -> Linker

- vink in de categorie-uitvoer "Kaartbestand genereren" aan

- als je ondersteuning nodig hebt voor variabelen met drijvende komma, vink dan Zwevend aan in de categorie Algemeen (hierdoor wordt de code groter, dus doe dit alleen als dat nodig is)

- doe dit voor zowel Debug- als Release-instellingen

En tenslotte:

klik op OK en probeer REBUILD_ALL om te controleren op waarschuwingen / fouten. Als alles goed gaat, wordt de code foutloos gecompileerd en gekoppeld aan een S19-bestand dat je kunt vinden in de map Debug.

Stap 9: De microcontroller programmeren

De microcontroller programmeren
De microcontroller programmeren
De microcontroller programmeren
De microcontroller programmeren
De microcontroller programmeren
De microcontroller programmeren

Die laatste stap is om de code in de microcontroller zelf te krijgen. Er zijn verschillende manieren om dit te doen, hier zal ik laten zien hoe het te doen met de "Light Programmer" die deel uitmaakt van STVD.

In de menubalk vind je het onder Tools - Programmer

GA NAAR: Extra -> Programmeur -> Instellingen:

– hardware wijzigen in "ST-LINK"

GA NAAR: Tools -> Programmer -> Memory Areas – DATA MEMORY: moet leeg zijn

– PROGRAMMAGEHEUGEN -> Toevoegen: projectnaam\Debug\xxx.s19 bestand of

– PROGRAMMAGEHEUGEN -> Toevoegen: projectnaam\Release\xxx.s19 bestand wanneer u compileerde in release-modus

De optiebytes zijn interessant om te controleren, maar zijn meestal correct. Ik denk dat het het beste is om de optiebytes te wijzigen met een apart programma: ST Visual Programmer dat ik hier niet zal bespreken.

KLIK NU OK, dit is belangrijk, doe dit voordat je de microcontroller programmeert of je blijft alle bovengenoemde opties instellen.

GA NAAR: Extra -> Programmeur -> Programma

klik op "Start" om de code naar de MCU te uploaden en bewonder je knipperende led:-)

Stap 10: Problemen oplossen

Probleemoplossing
Probleemoplossing
Probleemoplossing
Probleemoplossing
Probleemoplossing
Probleemoplossing
Probleemoplossing
Probleemoplossing

Om mij onbekende redenen kan het gebeuren dat Debugging niet werkt. De oplossing lijkt te zijn om de registratie van het DAO350. LL-bestand ongedaan te maken en opnieuw te registreren.

Om dit te doen start u cmd als beheerder en voert u de volgende opdrachten uit:

Regsvr32 /u "C:\Program Files (x86)\Common Files\Microsoft Shared\DAO\DAO350. DLL"

Regsvr32 "C:\Program Files (x86)\Common Files\Microsoft Shared\DAO\DAO350. DLL"

Het kan ook voorkomen dat zodra u de Light Programmer wilt starten, STVD crasht, soms met een "onvoldoende geheugen"-fout. Als dit gebeurt, kopieer dan het bestand ProgrammerAddOn. DLL over het bestand in de map /STVD.

De EEProm gebruiken

Als er gegevens in de EEPROM moeten, werkt uploaden via de Light Programmer NIET bij mij. De oplossing die ik heb gevonden is om een DEBUG-sessie te openen, die zorgt voor het programmeren van zowel het PROGRAMMAGEHEUGEN als het DATAGEHEUGEN (eeprom)

Ik had wat kleine problemen met toegang tot bestanden en mappen van zowel Cosmic als STVD, dit komt omdat ik Windows als gewone gebruiker gebruik en niet als beheerder. Ik weet dat het niet de juiste manier is om het op te lossen, maar ik heb alle gewone gebruikers op de pc gewoon de rechten gegeven om in de mappen te wijzigen:

C:\Program Files (x86)\STMicroelectronics\st_toolset

C:\Program Files (x86)\COSMIC\FSE_Compilers

Als Debuggen niet begint met het bericht om een doel te selecteren, heeft het programma de ST-Link niet ingesteld als het Debug Instrument. Selecteer die optie op de hoofdtaakbalk en stel de Debug Instrument Selection in op Swim ST-Link

Stap 11: Stlink V2 en STM8S103F3p-module

Stlink V2 en STM8S103F3p-module
Stlink V2 en STM8S103F3p-module
Stlink V2 en STM8S103F3p-module
Stlink V2 en STM8S103F3p-module
Stlink V2 en STM8S103F3p-module
Stlink V2 en STM8S103F3p-module

Niet veel te zeggen, alleen om de STlink-V2 en STM8S103F3P te laten zien die ik gebruik. Ik heb zowel de originele STLink gemaakt door ST Microelectronics als de goedkope kloon die ik via Ebay heb gekocht, beide werken prima. De STM8S103-modules komen allemaal van Ebay, Aliepress of andere, ik denk niet dat de officiële dealers als Farnell of Mouse de STM8S103 als modules zullen hebben, maar je kunt ze als kale onderdelen krijgen.

Aanbevolen: