• 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

Dioder og LED-displays fra Lumex; enkelt-komponenter og optoelektroniske moduler

Design & udviklingKomponenter & konnektorerProduktion03. 07. 2025

Optoelektroniske komponenter, især LED-dioder, er integrerede elementer i forbruger- og professionelle enheder til brug for bl.a. baggrundsbelysning, signalering og belysning. Lumex er en af ​​de førende amerikanske leverandører. Lumex har været på markedet i over 100 år og specialiserer sig i

Continentals eksperimentalbil genkender brugeren og kan forudse brugsmønstre

AktueltDesign & udvikling30. 06. 2025

Øget sikkerhed, komfort og intuitiv adgang er fokus i Continentals ”Intelligent Vehicle Experience Car”, der ved hjælp fra biometri og kunstig intelligens ændrer samspillet mellem maskine og menneske. Flere bilproducenter tester lige nu en række løsninger fra konceptbilen til brug i almindelige

God digital aftale, men regeringen holder foden på bremsen

AktueltBranchenytWireless & data30. 06. 2025

Regeringen har sammen med næsten alle Folketingets partier indgået en ny politisk aftale for digital infrastruktur, som Fiberalliancen betegner som bestået – men ikke uden mangler. Til trods for at ambitionerne i den nye politiske aftale er blevet forhandlet op af en række af partierne bag

Så blev det sommer igen…

BranchenytTop30. 06. 2025

Nu har vi både de lyse nætter - og måske også lyse udsigter for verden i al almindeling. Forhåbentlig også for vores hjemlige elektronikindustri. Dagens nyhedsbrev er det sidste før sommerferien. Hvor vi får nogle måneder side kiggede ind i en fremtid med meget kritiske niveauer af ufred flere

Toshiba lancerer nyt produkt i serien af dobbelte DC-børstemotorapplikationer til automotiv brug

Komponenter & konnektorer30. 06. 2025

Toshiba Electronics Europe GmbH sampler nu sin TB9M001FTG, det andet produkt i virksomhedens innovative Smart Motor Control Driver (SmartMCD) serie. Den dybt integrerede komponent er specifikt designet til at give effektiv og præcis styring af DC-børstemotorer i automotive applikationer inklusive

Automotivt kvalificerede 1.200V SiC MOSFETs i D2PAK-7 kapsling fra Nexperia

Komponenter & konnektorerPower30. 06. 2025

Nexperia lancerer en serie af højeffektive og robuste automotivt kvalificerede siliciumkarbid (SiC) MOSFETs med RDS(on) værdier på 30mΩ, 40mΩ og 60mΩ. Disse komponenter (NSF030120D7A0-Q, NSF040120D7A1-Q, NSF060120D7A0-Q), har branchens førende figures-of-merit (FoM) og blev tidligere udbudt i

Danske Scurid vandt titlen som Europas bedste robot-startup under Automatica 2025

Events30. 06. 2025

Scurid, med adresse i Odense, løb med titlen "Europe's Best Robotics Startup" ved årets automatica-messe i München. Det skete efter en veloplagt pitch foran en erfaren jury og i skarp konkurrence med fem andre europæiske startups. Seks lovende startups fra hele Europa indtog scenen for at

IDA advarer: Gratis internet på ferien kan blive dyrt

Wireless & data30. 06. 2025

Ud over solcreme og badetøj er computere, tablets og smartphones med øverst på pakkelisten, når mange danskere skal på sommerferie, og internetadgang rangerer efterhånden på linje med havudsigt og swimmingpool, når der skal vælges destination. - Der er ikke umiddelbart noget i vejen med, at man

Interaktiv eBook fra Mouser og TDK udforsker udfordringerne i industriel automation

Design & udvikling27. 06. 2025

Mouser Electronics, Inc. annoncerer en ny interaktiv eBook i samarbejde med TDK, én af verdens største producenter af elektroniske komponenter. Bogen udforsker de udfordringer, der i den effektivitet, sikkerhed og bæredygtighed, som avancerede automations applikationer kræver. Modern Industrial

2-kanals automotive high-speed digitale isolatorer fra Toshiba

Komponenter & konnektorer27. 06. 2025

Toshiba Electronics Europe GmbH (“Toshiba”) udvider sit program af isolationskomponenter med fire AEC-Q100 kvalificerede, 2-kanals, high-speed digitale isolatorer. De nye DCM32xx00-serier supporterer stabil drift med en høj common-mode transientimmunitet (CMTI) på 100kV/µs (typ.) ved

Tilmeld Nyhedsbrev

/Nyheder

  • Power Technic ApS

    NPP1200 kompakt 1200W oplader og strømforsyning i ét

  • Mouser Electronics

    Mouser Electronics Empowers the Future of Smart Homes with Online Resource Hub

  • Mouser Electronics

    Mouser Electronics and Ampleon Enter Global Distribution Agreement to Deliver RF Power Solutions

  • Power Technic ApS

    3200W strømforsyning der yder op til 37W/inch3

  • Mouser Electronics

    Mouser Electronics Honoured for Distribution Excellence by Leading Manufacturers of Electronic Components

  • ODU Denmark

    ODU præsenterer nyt push-lock medicostik

  • ODU Denmark

    Medicoteknik med maksimal sikkerhed og signalintegritet

  • ODU Denmark

    Berøringssikre LAMTAC® FLEX højstrømsmoduler

  • Beckhoff Automation ApS

    Energibesparende produktion

  • Power Technic ApS

    Robust 150W konverter med indgangsspænding på 250-1500VDC

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