Inhoudsopgave:
- Benodigdheden
- Stap 1: Een nieuw project maken
- Stap 2: De processor configureren
- Stap 3: De klokken configureren
- Stap 4: Opslaan en bouwen
- Stap 5: wat code toevoegen
- Stap 6: De hardware aansluiten
- Stap 7: Debuggen
- Stap 8: Meer doen
Video: Blue Pill Board instellen in STM32CubeIDE - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
De Blue Pill is een zeer goedkope kale ARM-ontwikkelbord. Het heeft een STM32F103C8 als processor met 64 kbyte flash en 20 kbyte RAM-geheugen. Het loopt tot 72 MHz en is de goedkoopste manier om in ARM embedded software-ontwikkeling te komen.
De meeste voorbeeldprojecten en beschrijvingen van het programmeren van het Blue Pill-bord met behulp van de Auduino-omgeving. Hoewel dit werkt en een manier is om aan de slag te gaan, heeft het zijn beperkingen. De Arduino-omgeving beschermt je een beetje tegen de onderliggende hardware - dat is het ontwerpdoel. Hierdoor zul je niet alle mogelijkheden van de processor kunnen benutten en wordt integratie van een realtime besturingssysteem niet echt ondersteund. Dit betekent dat de Arduino-omgeving niet veel wordt gebruikt in de industrie. Als je carrière wilt maken in de ontwikkeling van embedded software, is Arduino een goede startplaats, maar je moet verder gaan en een ontwikkelomgeving gebruiken die industrieel wordt gebruikt. ST biedt behulpzaam een volledig gratis ontwikkelomgevingsuite voor hun processors genaamd STM32CubeIDE. Dit wordt veel gebruikt in de industrie, dus het is een goede om verder te gaan.
Echter, en dit is de grote, STM32CubeIDE is angstaanjagend gecompliceerd en is een ontmoedigend stuk software om te gebruiken. Het ondersteunt alle functies van alle ST-processors en stelt ze in staat om ze intiem te configureren, wat je niet tegenkomt in de Arduino IDE omdat het allemaal voor je wordt gedaan.
U moet uw bord instellen als eerste stap in STM32CubeIDE. De IDE is op de hoogte van de eigen ontwikkelborden van ST en stelt ze voor u in, maar de Blue Pill, terwijl het een ST-processor gebruikt, is geen ST-product, dus u staat hier alleen.
Deze instructable neemt je mee door het proces van het opzetten van je Blue Pill-bord, het inschakelen van een seriële poort en het schrijven van wat tekst. Het is niet veel, maar het is een belangrijke eerste stap.
Benodigdheden
STM32CubeIDE - downloaden van de website van ST. U moet zich registreren en het downloaden duurt even.
Een blauw pillenbord. Je kunt ze krijgen van ebay. Je hebt er een nodig met een echte ST-processor, zoals sommige niet. Zoom op ebay in op de afbeelding en zoek naar het ST-logo op de processor.
Een ST-LINK v2 debugger/programmer beschikbaar op ebay voor een paar pond.
Een FTDI TTL naar USB 3.3V seriële kabel voor output en 2 mannelijke naar vrouwelijke header-draden om deze aan te sluiten.
Een serieel terminalprogramma zoals PuTTY.
Stap 1: Een nieuw project maken
- Start STM32CubeIDE en kies vervolgens uit het menu Bestand|Nieuw|STM32 Project.
- Voer in het vak Onderdeelnummer zoeken STM32F103C8 in.
- In de MCU's/MPU's-lijst zou u STM32F103C8 moeten zien. Selecteer deze lijn zoals in de afbeelding hierboven.
- Klik volgende.
- Geef in het dialoogvenster Projectinstellingen uw project een naam.
- Laat al het andere zoals het is en klik op Voltooien. Uw project verschijnt aan de linkerkant in het deelvenster Projectverkenner.
Stap 2: De processor configureren
- Open uw project in het deelvenster Projectverkenner en dubbelklik op het.ioc-bestand.
- Vouw op het tabblad Project & Configuratie Systeemkern uit en selecteer vervolgens SYS.
- Kies onder SYS-modus en configuratie in de vervolgkeuzelijst Foutopsporing de optie Seriële draad.
- Selecteer nu RCC in de lijst Systeemkern net boven SYS die u hierboven hebt geselecteerd.
- Selecteer onder RCC-modus en configuratie in de vervolgkeuzelijst High Speed Clock (HSE) Crystal/Ceramic Resonator.
- Open nu onder Categorieën opnieuw Connectiviteit en selecteer USART2.
- Selecteer onder USART2-modus en configuratie in de vervolgkeuzelijst Modus Asynchroon.
- Selecteer nu het tabblad Klokconfiguratie en ga naar de volgende stap.
Stap 3: De klokken configureren
U kunt nu een nogal ontmoedigend klokdiagram zien, maar het hoeft maar één keer te worden ingesteld. Dit is het moeilijkst om hier te beschrijven, omdat het diagram complex is. Alle dingen die u moet veranderen, zijn gemarkeerd in de bovenstaande afbeelding.
- Het Blue Pill-bord wordt geleverd met een 8 MHz-kristal op het bord en dat is waar het klokconfiguratiediagram standaard op staat, dus dat hoeven we niet te veranderen.
- Selecteer onder PLL Source Mux de lagere keuze, HSE.
- Stel PLLMul naar rechts in op X9.
- Selecteer weer rechts onder System Clock Mux PLLCLK.
- Weer rechts onder APB1 Prescaler selecteer /2.
- Dat is het. Als je delen van het diagram paars ziet gemarkeerd, heb je iets verkeerd gedaan.
Stap 4: Opslaan en bouwen
- Sla de.ioc-configuratie op met Ctrl-S. Wanneer u wordt gevraagd of u code wilt genereren, selecteert u Ja (en vink Onthoud mijn beslissing aan zodat u niet elke keer wordt gevraagd). U kunt het.ioc-bestand sluiten.
- Maak nu een build vanuit het menu Project|Build Project.
Stap 5: wat code toevoegen
Nu voegen we wat code toe om de seriële poort te gebruiken die we hebben geconfigureerd.
- Open in Project Explorer Core\Src en dubbelklik op main.c om het te bewerken.
- Scroll naar beneden tot je de main()-functie vindt en voeg de onderstaande code toe net onder de opmerking /* GEBRUIKERSCODE BEGIN 3 */ en voer dan opnieuw een build uit.
HAL_UART_Transmit(&huart2, (uint8_t *)"Hallo wereld!\r\n", 15U, 100U);
Vervolgens sluit je de up-hardware aan en probeer je het.
Stap 6: De hardware aansluiten
De ST-LINK v2. aansluiten
De ST-LINK v2 had moeten worden geleverd met een 4-aderige vrouwelijke naar vrouwelijke header-lintkabel. U moet de volgende verbindingen maken:
Blauwe pil naar ST-LINK v2
GND naar GND
CLK naar SWCLK
DIO naar SWDIO
3,3 tot 3,3 V
Zie de eerste afbeelding hierboven.
De seriële kabel aansluiten
Als je teruggaat naar het.ioc-bestand en naar het chipdiagram aan de rechterkant kijkt, zie je dat de Tx-lijn van UART2 op pin PA2 zit. Verbind daarvoor de pin met het label PA2 op het Blue Pill board met de aansluiting met de gele draad op de FTDI Seriële kabel. Sluit ook een van de aardingspinnen van de Blue Pill (met het label G) aan op de zwarte draad op de FTDI-seriële kabel.
Zie de tweede afbeelding hierboven.
Stap 7: Debuggen
Sluit je FTDI seriële kabel aan en start een seriële terminal op 115200 baud. Sluit vervolgens uw ST-LINK v2 aan en u bent klaar om te gaan.
- Kies vanuit STM32CubeIDE Uitvoeren|Debuggen. Wanneer een dialoogvenster Debug as verschijnt, kiest u STM32 Cortex-M C/C++ Application en OK.
- Wanneer een dialoogvenster Configuratie bewerken verschijnt, drukt u gewoon op OK.
- De debugger zal breken op de eerste regel van main(). Kies Run|Resume uit het menu en controleer op berichten in de seriële terminal.
Stap 8: Meer doen
Dat is alles, uw eerste STM32CubeIDE-toepassing is geconfigureerd en actief. Dit voorbeeld doet niet veel - verzendt alleen wat gegevens uit de seriële poort.
Om andere randapparatuur te gebruiken en stuurprogramma's voor externe apparaten te schrijven, moet je die ontmoedigende configuratie-editor opnieuw aanpakken! Om te helpen heb ik een reeks STM32CubeIDE-voorbeeldprojecten gemaakt die alle randapparatuur op de Blue Pill-processor configureren en gebruiken in kleine, gemakkelijk te begrijpen projecten. Ze zijn allemaal open source en je bent vrij om ermee te doen wat je wilt. Elk randapparaat is geconfigureerd en heeft dan voorbeeldcode om het afzonderlijk (bijna!)
Er zijn ook stuurprogramma's voor externe apparaten, van eenvoudige EEPROM-chips tot druksensoren, tekst- en grafische LCD's, SIM800-modem voor TCP, HTTP en MQTT, toetsenborden, radiomodules, USB en ook integratie met FatFS, SD-kaarten en FreeRTOS.
Ze zijn allemaal te vinden in Github hier …
github.com/miniwinwm/BluePillDemo
Aanbevolen:
Linux voor Windows instellen!: 12 stappen
Linux instellen voor Windows!: Welkom bij de instructieset voor het instellen van Linux voor Windows! Deze instructieset is bedoeld om beginners te helpen bij het via de opdrachtregel opzetten van een Ubuntu Linux-systeem op hun Windows-machine en het verbinden van hun Windows-bestanden met hun Linux-systeem. De Linux-subsys
MultiBoard instellen/installeren: 5 stappen
MultiBoard Setup/install: MultiBoard is een programma dat kan worden gebruikt om meerdere toetsenborden op een Windows-computer aan te sluiten. En herprogrammeer vervolgens de invoer van deze toetsenborden. Open bijvoorbeeld een applicatie of voer AutoHotkeyscript uit wanneer een bepaalde toets wordt ingedrukt. Github: https://g
Eclipse & JUnit instellen: 11 stappen
Eclipse & JUnit Setup: Dingen die je nodig hebt: Een computer met Eclipse IDE Een Java-bestand met functies/methoden die je wilt testen Een testbestand met JUnit-tests om op je functies uit te voeren
Wijn instellen op Raspberry Pi: 8 stappen
Hoe Wine op Raspberry Pi in te stellen: Wine is een geweldige tool die helpt bij het starten van Windows-apps op Linux, Ubuntu-systemen enz. Ga voor alle details naar www.winehq.org (dit is geen gelieerde link). alle applicaties voor Windows zijn gebouwd voor processors met s
Shinken Network Monitor installeren en instellen op Raspberry Pi 14 stappen:
Installeer en installeer Shinken Network Monitor op Raspberry Pi: OPMERKING: Shinken is voor het laatst bijgewerkt in MAR2016 naar een stabiele release van 2.4.3. Dus ben ik enkele jaren geleden overgestapt op andere manieren om thuisnetwerkmonitoring uit te voeren. Bovendien lijkt php5 niet beschikbaar te zijn. Gebruik deze instructable dus niet! Installeer een