• LinkedIn
  • KONTAKT
  • ANNONCERING
  • PARTNERLOGIN

ElektronikFOKUS

Fokus på elektronik

  • Branchenyt
  • Design & udvikling
  • Events
  • IoT & embedded
  • Komponenter & konnektorer
  • Power
  • Produktion
  • Test & mål
  • Wireless & data
  • Artikler fra Aktuel Elektronik

Artikler fra Aktuel Elektronik20. 05. 2025 | Pia Nielsen

Ultra low-power mikrocontroller-modul med brug af Eclipse

Artikler fra Aktuel Elektronik20. 05. 2025 By Pia Nielsen

DEL 1:
I to artikler skal vi se på et ultra low-power, funktionsrigt mikrocontroller-modul, og hvordan det bliver programmeret og debugget med populære, gratis værktøjer. Modsat mange andre high-end mikrocontroller-moduler er det beskrevne tilgængeligt i et DIP-format, hvilket letter prototyping for både professionelle og hobbyfolk. Artiklens del 1 beskriver projektets start med brug af Eclipse, mens del 2 fortæller om konfiguration af Eclipse sammen med mikrocontroller-modulet

Artiklen har været bragt i Aktuel Elektronik nr. 6 – 2025 og kan læses herunder uden illustrationer
(læs originaludgaven her)

Af Simon Bramble, staff engineer, Analog Devices

Det konstante krav om stadigt mindre elektronik kan gøre det svært for både designere og hobbyfolk at udføre prototyper med de stadigt mindre komponenter. Mikrocontrollere (MCU’er) giver utvivlsomt en lang række funktioner, som bibringer et design nye muligheder, men mange designere hænger fortsat i en fortid, hvor de fleste komponenter kom i DIP-huse. Mere avancerede MCU’er har flere funktioner, men kommer kun i kapslinger, der er svære at udføre prototyper med – ligesom de tilhørende evaluerings-kits er meget store og med en række unødvendige komponenter.
Her er så det prototypevenlige MAX32625PICO-mikrocontrollermodul, der er bittelille, men alligevel med et DIP-footprint så det let kan integreres på både eksperimentelle- og produktionsprint. I denne artikel ser vi på programmering og debugging med brug af Eclipse, et ekstremt populært og gratis IDE (Integrated Development Environment). Så kan man droppe alle tidligere 8-bit processorer og fortsat have tæerne i DIP-svømmepølen. Se de følgende instruktioner for en komplet guide til, hvordan man kommer i gang.

Her er MAX32625PICO
MAX32625PICO (figur 1) er også kendt som PICO, som indeholder MAX32625 MCU’en – en ultra low-power, 32-bit Arm Cortex-M4-processor med 512kB flash og 160kB SRAM og en arbejdsfrekvens op til 96MHz. Den mest anvendelige periferi i mikrocontrollere er ført ud som pins på PICO inklusive en SPI-main, en SPI-sub, en I2C-port, to inputs til en 10-bit ADC, et 1-wire interface, og to UARTs. PICO indeholder også en MAX1 4750 powermanagement-IC, en RGB-LED, en trykkontakt, en USB Micro B-konnektor samt en 10-pin Cortex debug-header, og PICO kan forsynes direkte fra en USB-port eller en ekstern 5V-forsyning. Desuden er der 0.1” (tomme) header-konnektorer på hver side af printet, så pins loddes på PICO’en, der så kan monteres på et prototype-breadboard. Hvis man behøver en SMD-løsning, har header-konnektorerne kobber helt ud til boardets kant, så PICO også kan bruges som en SMD-komponent. PICO er lille nok til at kunne slottes ind i ethvert design, men alligevel stor nok til at tillade nem prototyping.
Det har man brug for til programmering og debugging af PICO:
• To PICO’er.
• To Micro B USB-kabler (som typisk leveres med PICO).
• Et programmeringskabel, serienummer TC2050-IDC-NL-050.
TC2050-kablet har en 10-pin konnektor i den ene ende og fjedrende pogo-pins i den anden ende. Kablet bruges kun under debugging eller reprogrammering af PICO, hvis bootloaderen bliver overskrevet. Normal programmering er helt enkel drag-and-drop.

Projektdesign med Eclipse IDE
PICO blev oprindeligt designet til at blive anvendt sammen med online Mbed-compilerplatformen, der ikke længere er aktiv. Open-source Eclipse IDE’et er en meget populær udviklingsplatform hos både professionelle og hobbyfolk, og det er et gratis alternativ til Mbed. Vi skal se, hvordan man konfigurerer Eclipse for at generere en binær fil, som kan trækkes over til target-hardware med Windows Explorer. Konfigurationsfilerne kan downloades i det zip-fil-link, som er nederst i artiklen.
Eclipse IDE kan downloades fra MAX32625-mikrocontrollerens landing-page. Navigér til ”Tools and Simulations”-sektionen og klik på ”Low Power Arm Micro SDK (Win)”-download-linket. Herfra kan Arm Cortex Toolchain IDE’et downloades og installeres. Brug default installationskonfigurationen.
• Efter installation, vælg: File -> New -> Maxim Microcontrollers (figur 2).
• Når ”Create Project”-boksen dukker op, så se til, at projektnavnet er uden spaces.
• Udfyld “Select Project Configuration”-vinduet (figur 3).

Hvordan kommunikerer IDE’et med target-hardwaren?
Det er værd at beskrive, hvad der sker inden i Eclipse for at forklare eventuelle fejlmeddelelser, som kan blive flaget i debugging-processen. IDE’et kommunikerer med target-mikrocontrolleren (her: PICO) gennem to programmer: GNU- debuggeren (GDB) og en Open on-chip debugger (OCD). GDB er et højniveau debugging-værktøj, som gør brugeren i stand til at steppe sig gennem koden, at eksekvere breakpoints og undersøge registerværdier. GDB kommunikerer med OpenOCD, et værktøj som oversætter højniveaukommandoer til noget, der er nærmere dét, som target-mikrocontrolleren forstår. Både GDB og OpenOCD kører på pc’en, og inden i Eclipse. Mellem pc’en og den endelige hardware er der en debug-adapter, som oversætter kommandoer til elektriske signaler, som MCU’ens debug-port forstår. Denne debug-port kan have én af to former: En JTAG debug-port eller en lavere version af JTAG med et mindre antal pins, også kaldet single-wire debug (SWD) porten. Alt det ovenstående gør programmøren i stand til at eksekvere koden, linje for linje, på den faktiske target-hardware for at se, hvordan registrenes værdier ændrer sig i stedet for at bruge en simulator.
Eclipse IDE taler med GDB, GDB taler med OpenOCD, og OpenOCD kommunikerer – via debug-adapteren – til debug-porten på target-PICO’en. GDB og OpenOCD befinder sig inden i software development-kittet (SDK) og installerer automatisk med SDK’et – og bliver kaldt af Eclipse. Når en debug-adapter er forbundet mellem pc og target-hardware, så er der end-to-end kommunikation sømløst mellem Eclipse og PICO.
Projektkonfigurationen (figur 3) tager udgangspunkt i, at Eclipse IDE’et er forbundet til en MAX32625EVKIT, der bruger en JTAG-port. PICO har dog SWD-porten med det lavere antal pins i stedet for JTAG-debuggeren. For at interface Eclipse IDE med PICO kan endnu en PICO forbindes mellem værts-pc’en og target-PICO i stedet for en JTAG-debugger. Denne sekundære PICO vil blive kaldt ”programmer-PICO” for at adskille den fra target-PICO, hvorpå den endelige kode vil blive kørt. Programmer-PICO’en skal uploades med et program, DAPLink, der oversætter USB-signaler fra pc’en til signaler, som PICO forstår. Det er en ret enkel procedure, som er beskrevet under loading af Binary File-sektionen i den kommende del 2 af denne artikel.
Da en programmer-PICO bliver brugt i stedet for en JTAG-debugger, vælg så MAX32625_PICO under punktet, ”Select adapter type” (figur 4).

Modificering af Eclipse til funktion sammen med PICO
Download zip-filen i linket sidst i artiklen og udtræk indholdet til en egnet plads. Find den fil, der hedder ”MAX32625PICO.cfg” og kopiér den til det følgende index: C:\Maxim\Toolchain\share\openocd\scripts\target. Det er en modifikation af den originale fil (MAX32625.cfg), og den gør den anden PICO mulig at bruge i stedet for en JTAG-debugger. Denne fil overstyrer den reset-kommando, som typisk bliver udstedt af JTAG-debuggeren og resetter visse af registrene i target-processoren foruden program-counteren og stack-pointeren.
Når et nyt projekt er blevet skabt ud fra Eclipses Project Explorer tab (øverste venstre hjørne), så højreklik over projektnavnet og vælg: ”Debug As -> Debug Configurations …”. Navigér derefter til ”GDB OpenOCD Debugging” i den venstre menu og vælg det aktuelle projekt.
I Debugger-tab’en, foretag så en ændring af CFG-filen fra MAX32625.cfg til MAX32625pico.cfg (figur 5). Klik ”Apply” og så ”Close”.
I Project Explorer-vinduet højreklik igen over projektnavnet og vælg ”Properties”. Venstreklik på ”C/C++ Build heading” og under ”Builder Settings”-tab’en og vær sikker på, at Build-kommandoen skriver: ”make ECLIPSE=1 release” (figur 6). Det instruerer Eclipse om at generere den binære fil (det eksekvérbare program), som kan uploades til PICO’en. Klik så ”Apply” og ”OK”.

Konfiguration af Eclipse til at inkludere andre filer
For at gøre Arm-processorer lettere at programmere leverer mange producenter af MCU’er lavniveau-drivere for at gøre programmørens kode i stand til at kommunikere med de mange registre og den omfattende periferi, som mikrocontrollere indeholder. Som programmør skal man derfor ikke bekymre sig om kontrol over registerniveauer, så man kan koncentrere sig om funktionerne på højere niveau i slutapplikationen. Disse drivere kaldes Common Microcontroller Software Interface Standard (CMSIS) og er helt enkelt et hierarki af filer, der er nødvendige for at programmere MAX32625. I hjertet af disse mikrocontrollere er Arm-kernen, der er den samme for hver specifik familie af Arm-baserede mikrocontrollere. Det er et sæt af filer, der er nødvendige for konfigurering af Arm-kernen.
Rundt om Arm-kernen er et periferisæt (ADC’er, GPIO-porte, timere, countere, SPI-porte og lignende), som adskiller netop den ene Arm-kerne fra andre Arm-baserede komponenter. Denne periferi har brug for et sæt filer til konfigurering. Arm-kernen og periferien udgør den specifikke mikrocontroller. Komponenten bliver derefter placeret på et board og forbundet til for eksempel et display, port-headers, switche, LED’er og Bluetooth-transceivere. Der findes et sæt filer, der beskriver, hvordan kernen skal forbindes til de omgivende komponenter på print/board.
Hvis vi starter i hjertet af MAX32625 (Arm-kernen) og arbejder os udefter, så er der et sæt filer, der konfigurerer selve Arm-kernen, og siden et sæt filer, der konfigurerer den periferi, der omgiver Arm-kernen – og endelig et sæt til konfigurering af de komponenter i evaluerings-kittet rundt om processoren. Eclipse skal konfigureres, så Eclipse kan finde disse filer under compilering af programmet.
I Eclipse – i Project Explorer-vinduet, højreklik over projektnavnet og vælg ”Properties”, og ekspandér så ”C/C++ General menu” og navigér til ”Paths and Symbols”-sektionen. Under ”Includes”-tab’en vælg GNU C. Tilføj de directories, der er vist i figur 7 med brug af ”Add and File” systemtasterne. Klik så ”Apply and OK”, når det ovenstående er blevet tilføjet. Følgende adresser forklarer, hvad hver enkelt inkluderet directory gør:
• C\Maxim\Firmware\MAX32625\Libraries\CMSIS\Include.
Denne directory inkluderer de filer, som Arm-kernen i MAX32625 bruger.
• C:\Maxim\Firmware\MAX32625\Libraries\CMSIS\Device\Maxim\MAX32625\Include.
Denne directory inkluderer periferi-/registerdefinitioner for MAX32625.
• C:\Maxim\Firmware\MAX32625\Libraries\MAX32625PeriphDriver\Include.
Denne directory inkluderer de filer, som gør det muligt at anvende periferien i MAX32625.

Man kan downloade software-filerne fra dette link:
https://www.analog.com/media/en/software/software-configuration/eclipse-configuration.zip.

Del 2 af denne artikel vil være tilgængelig i Aktuel Elektronik 7/2025 (17. juni), og den forklarer, hvordan man kan konfigurere Eclipse til at arbejde sammen med PICO.

Billedtekster:
Figur 1: The MAX32625PICO.
Figur 2: Start det første projekt.
Figur 3: Projektkonfiguration.
Figur 4: Vælg adaptertype.
Figur 5: Peger i retning af ny config-fil.
Figur 6: Generering af den binære fil.
Figur 7: Inkludering af eksterne filer.

Skrevet i: Artikler fra Aktuel Elektronik Tags: Eclipse, komponenter, low-power, mikrocontrollere, moduler

Seneste nyt fra redaktionen

Elegant IP65-tæt 250VAC/10A-kontakt følger standard paneludskæring

Komponenter & konnektorerPower21. 05. 2025

On/off-kontakter er et design- og funktionskrav i et utal af både kommercielle og industrielle elektronikprodukter, men mange hidtidige løsninger har ikke nødvendigvis haft den kombination af enkel montage, elegant udformning, relativt høj tæthedsklasse og robust konstruktion. Dét har Würth

Alsidig lille AC/DC-strømforsyning leverer 20W

Power21. 05. 2025

I den nye energiinfrastruktur skal AC/DC-konvertere i stigende grad kunne fungere ud over de nominelle forsyningsværdier fra 100VAC til 277VAC. Den nyligt lancerede RAC20NE-K/277 fra Recom matcher det godt med 20W og valgfrie 12-, 24- eller 36VDC-udgange. Der er indkapslede versioner med konstant

Jakob Ellemann-Jensen bliver ny formand i Security Tech Space

Branchenyt21. 05. 2025

Tidligere forsvars- og vicestatsminister, Jakob Ellemann-Jensen, bliver ny formand i Security Tech Space, der er et nationalt initiativ, der arbejder for at styrke Danmarks position inden for cybersikkerhed. Jakob Ellemann-Jensen arbejder i dag som vicedirektør i Dansk Erhverv og kommer med en

IFS ruller nyt AI-skyts ud

Wireless & data21. 05. 2025

Det skal være nemmere og mindre risikobetonet for virksomheder at teste musklerne i Industrial AI. Det er kongstanken bag IFS’ seneste initiativ, lanceringen af IFS Nexus Black, der sætter fart under udviklingen og implementeringen af Industrial AI-applikationer med høj værdiskabelse. I modsætning

CEA-Leti viser vejen til næste generations displayteknologi

AktueltDesign & udvikling21. 05. 2025

Det franske forskningsinstituts præsentation på Display Week konferencen i San José, Californien den 19. maj, 2025 sigtede på en ny generation af displayteknologi. Instituttets fremskridt inden for heterogen co-integration af GaN microLED teknologien og organiske fotodetektorer er et væsentligt

Blød dansk robot kravler ind, hvor ingen andre kan

AktueltDesign & udvikling21. 05. 2025

Forestil dig en robot, der kan sno og presse sig vej ind i de mest utilgængelige hjørner af industrielle anlæg - uden at sætte liv på spil og med evnen til at levere præcise data om selv de mindste fejl. Det er præcis, hvad startup-virksomheden XiniX AI har udviklet med deres bløde robot.  −

Dansk batteri-startup går fra garageprojekt til automatiseret batteriproduktion

Design & udviklingProduktionTop21. 05. 2025

MILA Nordic vil gøre Danmark til foregangsland inden for batteriproduktion. Med hjælp fra Teknologisk Institut har virksomheden taget de første skridt mod automatiseret produktion af kundetilpassede batteripakker i et MADE Demonstrationsprojekt. Batterier spiller en afgørende rolle i den grønne

Den evige jagt på referencen

Artikler fra Aktuel Elektronik20. 05. 2025

Sennheiser har for nylig lanceret deres HD 505, der på papiret lover en rigtig god lytteoplevelse. Det fik os på redaktionen til at overveje, om Sennheiser måske havde fundet en efterfølger til HD 540, som på mange måder fortsat er udgangspunktet for ”reference-lytteoplevelsen”Artiklen har været

Hvor GaN kan – skal GaN også bruges

Artikler fra Aktuel Elektronik20. 05. 2025

GaN (galliumnitrid) optræder i stadigt flere applikationer, og GaN er på mange måder en fremtrædende WBG-teknologi (Wide Band Gap) inden for de nyeste effektdesign som følge af de meget små tab i GaN-komponenterne. Hvornår skal man så vælge GaN frem for SiC (siliciumcarbid), silicium-MOSFETs eller

Ultra low-power mikrocontroller-modul med brug af Eclipse

Artikler fra Aktuel Elektronik20. 05. 2025

DEL 1:I to artikler skal vi se på et ultra low-power, funktionsrigt mikrocontroller-modul, og hvordan det bliver programmeret og debugget med populære, gratis værktøjer. Modsat mange andre high-end mikrocontroller-moduler er det beskrevne tilgængeligt i et DIP-format, hvilket letter prototyping for

Tilmeld Nyhedsbrev

/Nyheder

  • EKTOS A/S

    Next-Gen UAV Showcase in Odense at the International Drone Show 2025

  • Mouser Electronics

    Authorised Distributor Mouser Electronics Stocks Extensive Selection of Molex Products

  • Microchip Technology Inc.

    Kostoptimerede PolarFire® Core FPGA’er og SoC’er fra Microchip Technology leverer høj ydelse 30% billigere

  • Mouser Electronics

    Launching at Mouser: Raspberry Pi RP2350 Microcontroller for Embedded and Industrial IoT Applications

  • Power Technic ApS

    6W strømforsyning med bred indgangsspænding

  • InnoFour

    Sigma Connectivity: From Client Vision to Tailor-Made Product

  • EKTOS A/S

    EKTOS Launches Functional Safety in Modern Electronics Webinar Series – First Session on June 12

  • CN Rood

    EMS company Kitron Standardizes and Scales PCBA Testing with SATS

  • Mouser Electronics

    Mouser Electronics Delivers Expert Perspectives on Motor Control in New eBook from Analog Devices

  • Beckhoff Automation ApS

    Innovative automationskoncepter for medie- og bygningsteknologi

Vis alle nyheder fra vores FOKUSpartnere ›
 
 
 
 

Læs Aktuel Elektronik

Aktuel Elektronik avisforside

Annoncér i Aktuel Elektronik

Medieinformation

KONTAKT

TechMedia A/S
Naverland 35
DK - 2600 Glostrup
www.techmedia.dk
Telefon: +45 43 24 26 28
E-mail: info@techmedia.dk
Privatlivspolitik
Cookiepolitik