Inhoudsopgave:
- Stap 1: Download de Cosmic Compiler en ST Microelectronics IDE (STVD)
- Stap 2: De Cosmic Compiler(s) installeren
- Stap 3: Download en installeer ST Visual Develop
- Stap 4: Enkele opties in STVD
- Stap 5: Eerste programma (knipperend)
- Stap 6: Overschrijven en bestanden toevoegen
- Stap 7: Start ST Visual Develop opnieuw en voltooi de projectconfiguratie
- Stap 8: De projectinstellingen
- Stap 9: De microcontroller programmeren
- Stap 10: Problemen oplossen
- Stap 11: Stlink V2 en STM8S103F3p-module
Video: Setup ST Visual Develop met de Cosmic STM8 Compiler - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
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)
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
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 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
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)
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
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
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
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
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
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
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:
Digitale klok met netwerktijd met behulp van de ESP8266: 4 stappen (met afbeeldingen)
Digitale netwerkklok met de ESP8266: we leren hoe we een schattige kleine digitale klok kunnen bouwen die communiceert met NTP-servers en de netwerk- of internettijd weergeeft. We gebruiken de WeMos D1 mini om verbinding te maken met een wifi-netwerk, de NTP-tijd te verkrijgen en deze weer te geven op een OLED-module. De video hierboven
Compiler Bro's (Indie Games): 3 stappen
Compiler Bro's (Indie Games): Compiler Bro's: Gamen is zo leuk……..maar het maken ??? Is een vraag die gesteld moet worden op Quora :) Bouwspel is een perfecte oefening om je codeervaardigheden en kennis in te brengen en niet iedereen bouwt een spel… Ik heb zelf unity f
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Hoe maak je een 2D-personage met Character Controller in Unreal Engine 4 met Visual Script voor pc: 11 stappen
Hoe maak je een 2D-personage met Character Controller in Unreal Engine 4 Visual Script voor pc gebruiken: Hoe maak je een 2D-personage met character controller in Unreal Engine 4 met visueel script voor pc Hallo, ik ben Jordan Steltz. Ik ontwikkel videogames sinds ik 15 was. In deze tutorial leer je hoe je een basispersonage maakt met in
Een eenvoudig chatprogramma maken in Visual Basic met behulp van Microsoft Winsock Control: 7 stappen
Hoe maak je een eenvoudig chatprogramma in Visual Basic met behulp van de Microsoft Winsock-besturing: In deze instructie laat ik je zien hoe je een eenvoudig chatprogramma maakt in Visual Basic. ik zal bespreken wat alle code doet, zodat je leert terwijl je het maakt, en aan het einde zal ik je laten zien hoe je het kunt gebruiken