Friday 17 November 2017

Openocd download binary alternativ


Att få OpenOCD. OpenOCD är tillgänglig i många olika former från många olika platser. Den här sidan bör fungera som en guide som riktar dig till det alternativ som är mest lämpligt för usecasen. När du rapporterar ett fel eller ber om hjälp via något medium som e-postlistan, IRC Eller frågeställaren ska du entydigt ange vilken version du använder och var har du fått från. Om du inte är beredd att kompilera från de källor som ofta behövs för att testa utplåster, hänvisar du också till det. Officiella operativsystem Repositories. OpenOCD passar naturligt till det fria programkosekosystemet, så det är tillgängligt i en korrekt förpackad form i populära operativsystem i sina respektive repositorier. Med andra ord är installation av OpenOCD lika lätt som att köra ett apt-get install openocd-kommando i Debian GNU Linux och Derivat, öppna openocd i Gentoo, opkg installera openocd i OpenWrt etc Samma gäller för OS X-användare som kör Homebrew eller MacPorts och Windows-användare som har MSYS2 installed. If yo Ur operativsystemet saknas OpenOCD, snälla gärna bli en pakethanterare, OpenOCD-gruppen kommer att uppskatta ditt engagemang och ge hjälp om du möter några problem. Källkod. Det officiella Git-källkodsförrådet finns dessutom främst för Användare bakom företags brandväggar finns en officiell spegel värd. Ett antal patchar som föreslås för upptagning uppströms men ännu inte begåtts är tillgängliga från Gerrit-översynsservern. Officiella binära paket. Vissa speciella omständigheter kan göras med hjälp av en pakethanterare eller egenföretagare Kompilera OpenOCD opraktiskt, så flera trevliga communitymedlemmar tillhandahåller regelbundet uppdaterade binära byggnader på deras webbsidor är stängda. För en tid sedan har jag lagt till stöd för OpenOCD för att kunna använda Buspirate som JTAG-gränssnitt. Så här visar du hur För att ställa in alla nödvändiga saker. Saker du behöver Buspirate Computer med OpenOCD installerat mål med JTAG luck. The Buspirate kan köpas olika sou Rces, som Seeed studio eller SparkFun Du behöver version v2go eller v3 Det är en liten förändring i pinouten Du måste också uppdatera din BP till v4 bootloader och ladda upp ganska ny firmware v4 2 nattlig byggnad Jag kommer inte att gå igenom bootloader uppdatering Processen kan du hitta handledning HÄR Den fasta programvaran du vill ladda ner är HERE. You kommer också behöva en kabel för att ansluta BP till målet. Återigen beror på vilken version av BP du har För v2go är den jag äger är pinout HÄR Du don T behöver inte ansluta WHITE-kabeln alls. Den andra delen är OpenOCD-programvara Det finns en lapp för version 0 3 0-rc0, och det finns en lapp för utvecklingsgrenen i git Den första patchen fungerar men har några buggar som var Fixat i det senare jag föreslår att du kassar utvecklingsgrenen och tillämpar min patch Ladda ner patchen som bifogas denna post Gå vidare och klon gitförvaret och använd patchen du har laddat ner Uppdatering Det behöver inte patch Plåsten ingår i Git reprosit Ory git-klon Jag antar att du har standardutvecklingspaketet gcc, make, autotools, etc. Om du kör de kommande kommandona bör du skapa användbar version av OpenOCD bootstrap configure - enable-buspirate --enable-maintainer-mode gör sudo make install Du måste Aktivera underhållsmodus eller annars kommer det att misslyckas när du gör dokumentation. Du kan också lägga till fler gränssnitt om du äger mer. Näst steg skapar du rätt konfigurationsfil. Konfigurationsfilen innehåller gränssnittsspecifikation och målspecifikation Gränssnittet är buspirat, naturligtvis Om standard Är Ok, du kan bara använda källsökningen Mer avancerad väg är att kopiera innehållet i filen och ändra det till behov gränssnittet buspirat buspirateport dev ttyUSB0 buspiratespeed normal eller snabb buspiratevreg 0 eller 1 buspiratemode normal eller öppen dränering buspiratepullup 0 eller 1 Dessa kommandon Bör vara självförklarande Snabba hastighetsläget byter UART-hastigheten till 1Mbit vid anslutning till BP, vissa BP-revisioner kanske inte fungerar, om det händer händer, tack Reportera Nästa måste du lägga till din målkonfiguration Jag använder STM32 cpu source find Detta berättar OpenOCD vilka TAPs finns på JTAG-kedjan och OpenOCD-skanningar om ID-matchningen matchar När du är färdig med konfigurationsfilen, spara den och kör openocd i Samma katalog Om det inte finns något dödligt fel lyssnar OpenOCD på 4444-porten Använd telnet för att ansluta till det, du kommer att få enkel konsol för att skicka kommandon till OpenOCD. January 22nd, 2017. Jag är glad att tillkännage tillgängligheten av OpenOCD-versionen 0 10 0 Äntligen För de viktiga punkterna om förpackning, se 1.Det var en lång release-cykel, men det var också en fruktbar. Listan över de viktigaste förändringarna följer. OpenOCD är ett gemenskapsprojekt och jag vill ta tillfället i akt att tacka Alla bidragsgivare, regelbundna och tillfälliga, hobbyister och proffs, företagsledare och de som gör arbetet på fritiden Vänligen behåll flödena av patcharna, både genom att skicka ny kod och genom att granska andra s bidrag. S du som verkligen bestämmer vilka nya funktioner OpenOCD kommer att få. Jag vill också påminna hur viktigt det är att kommunicera med kiselleverantörerna som du vill se deras enheter stödjas uppströms eller att du är glad att de blir stödda. Höjdpunkter Av de ändringar som gjorts i OpenOCD-källarkivet. Ny drivrutin för J-Link-adaptrar baserad på libjaylink inklusive stöd för FPGA-konfiguration, SWO och EMUCOM. FTDI förbättringar för att fungera på 30MHz clock. BCM2835 inbyggd drivrutin SWD och Raspberry Pi2 support. BCM2835 är Inställd på 4ma-enhet, slow slow rate. ixo-usb-jtag-emulering av en Altera Bus Blaster I på Cypress FX2 IC support. JTAG genomlägen för CMSIS-DAP inklusive stöd för FPGA-konfiguration. OpenJTAG-stöd för Cypress CY7C65215.connectassertsrst support För SWD. Xilinx Virtex-II Series7 bitströmsladdningsstöd. Använd JEP106-data för att avkoda IDs. Deprecated ft2232-drivrutin avlägsnades använd ftdi instead. GPL-inkompatibelt FTDI D2XX-biblioteksstöd har tappat Presto, OpenJTAG och USB-B Sistnämnda använder jag bara libftdi. ZY1000-supporten saknades eftersom long. oocdtrace-supporten dropped. ARMv7-A, Cortex-M, Cortex-A R viktiga korrigeringar och förbättringar som möjliggör t. ex. simultant debugging av A8- och M3-kärnor, JTAG WAIT-support etc. ARM Cortex-A, R tillåter avbryt avstängning under single-step maskisr command. Semihosting stöd för ARMv7-A. ARM Cortex-M7 support. Intel Quark mcu D2000 support. Freescale LS102x SAP support. ThreadX RTOS stöd på ARM926E-JS. Cortex - M RTOS stack alignment fixes. FreeRTOS FPU support. uC OS-III RTOS support. bridging semihosting till GDB s File-I O support.-defer-examine-alternativ som läggs till målet skapa command. verifyimagechecksum kommando added. Atmel SAM4S, SAM4N, SAM4C stöd. Atmel SAMV, SAMS, Samma Cortex-M7 support. Atmel AT91SAMD handtag återställ kör stopp i DSU, andra fixes. Atmel AT91SAML21, SAML22, SAMC20 SAMC21, SAMD09 support. ST STM32F4x support. ST STM32F74x 76x 77x, STM32L4 support. ST STM32L0 kategorier 1, 2 och 5 stöd. Kinetis K02, K21, K22, K24, K26, K63, K64, K66 support. Kinetis KE, KVx, K8x familjer stöd. Kinetis FlexNVM hantering. Kinetis flash skydd, säkerhet, massera förbättringar. Infinion XMC4xxx familje support. Infineon XMC1000 flash driver. Energy Micro EFM32 Happy Gecko support. Energy Micro EFM32 felsökningsgränssnittlås support. Analog Devices ADuCM360 support. Unified Nuvoton NuMicro flash driver. NIIET K1921VK01T Cortex-M4 support. Nordic Semiconductor nRF51 förbättringar. Spansion FM4 flash inklusive MB9BFx64 x65, S6E2DH driver. Ambiq Micro Apollo flash driver. PIC32MX nya enhet ID, 17x 27x flash support. readbank och verifybank NOR flash interna API för att tillåta läsning och verifiering av icke-minneskortade enheter. JTAGSPI-drivrutinen får åtkomst till SPI NOR blinkar via en trivial FPGA-proxy. Milandr läser verifiering för Info memory support. Various discrete SPI NOR blinkar Support. CFI 16-bitars Flash reversed endianness support. Board, Target och Interface Configuration Scripts. Digilent JTAG-HS2, JTAG-HS3 gränssnitt konfigs. FTDI UM232H-modul som JT AG gränssnitt config.100ask s OpenJTAG gränssnitt config. MBFTDI gränssnitt config. XDS100v3 gränssnitt config. Freescale Vybrid VF6xx mål config. EmCraft VF6 SOM och baseboard configs. Freescale SabreSD board config. Freescale VF65GS10 tower board config. Pipistrello Xilinx Spartan6 LX45 FPGA board config. MiniSpartan6 board config. Xilinx Kintex7 Utvecklingskort config. Parallella-I board config. Digilent Atlys och Analog Discovery styrelse konfigs. Numato Opsis styrelse config. Xilinx Spartan 6 FPGA-enhet DNA läsning support. Altera 10M50 FPGA MAX10 familj mål config. Altera EPM240 CPLD MAXII Familjeformat config. Marsohod2, Marsohod3 FPGA, Marsohod CPLD-boards konfigs. Novena s integrerad FPGA-styrenhet config. XMOS XS1-XAU8A-10 s ARM-kärna config. XMOS xCORE-XA-kärnmodulskort config. Exynos5250 target config. Arndale board config. FM4 MB9BFxxx familj konfigs. Spansion SK-FM4-U120-9B560 board config. Diolan LPC4357-DB1 board config. ST STM32F469 discovery board config. ST STM32F7-DISCO, STM327 4 5 6G-EVAL vildsvin Ds konfigs. ST STM32L4 upptäckt, NUCLEO L476RG, STM32F429I-DISC1 brädor configs. Atheros AR2313, AR2315 mål konfigurerar WP102 bräde config. La Fonera FON2200 bräda config. Linksys WAG200G bräda config. LPC-Link2 bräda config. NXP LPC4370 mål config. Atmel SAMV SAMS, samma målkonfigurer. Samma SAM E70 Xplained, SAM V71 Xplained Ultrabrädor konfigs. Nordic nRF52 målkonfigurationNordic nRF51-DK, nRF52-DK-brädor configs. Infineon XMC4700 Relax Kit, XMC4800 Relax EtherCAT Kit, XMC4300 Relax EtherCAT Kit boards Konfigs. Renesas S7G2 target config. Renesas DK-S7G2 board config. Altera EP3C10 FPGA Cyclone III familjemål config. TI MSP432P4xx mål config. Cypress PSoC 5LP mål config. Analog Devices ADSP-SC58x målkonfiguration Cortex-A5 core only. tcltrace kommando för Async-målspårning via Tcl RPC. Build och Release. Various fixes thanks. libftdi är nu autodetekterad med pkgconfig. Releases bör nu stödja reproducerbara builds. Conversion till non-recursive make kräver automake 1 14.Udev rulla Es modifierad för att lägga till uaccess-taggen och flyttas till. Stödja sökning efter skript i förhållande till openocd-binären för alla större arkitekturer. Denna release innehåller också ett antal andra viktiga funktionella och kosmetiska buggfixar. För mer information om vad som har ändrats sedan den senaste utgåvan, se Git repository historia. Grattis och lycklig hacking. Posted i News Comments Closed. After nästan 7 månader sedan tidigare 0 6 1 version, är ny 0 7 0 release ut Källpaket kan hämtas från SourceForge Om du använder Windows och Don T vill bygga den exekverbara själv, Freddie Chopin tillhandahåller binärer på sin personliga hemsida. Här är NEWS-filen för den här utgåvan, som belyser de viktigaste ändringarna. Den här filen innehåller höjdpunkter i de ändringar som gjorts i OpenOCD-källarkivsläget Se förvaret Historia för detaljer om vad som har ändrats, inklusive buggfixar och andra problem som inte nämns här. Nytt TI ICDI-adapter support. Support Senaste OSBDM-firmware. Improved MIPS EJTA G Support. New ARMv7R och Cortex-R4 support. Added ChibiOS RT support. New NXP LPC1850 support. New NXP LPC4300 support. New NXP SPIFI support. New Energy Micro EFM32 support. New ST STM32W support. New ST STM32f2 skrivskydd och låsa upplåsning Support. Ability att åsidosätta STM32 flash bank size. Board, Target och Interface Configuration Scripts. Support Freescale serier targets. New MIPS debugging info. Build and Release. For mer information om vad som har ändrats sedan den senaste utgåvan, se git repository historia Med gitweb kan du bläddra i olika detaljnivåer. För äldre NYHETER, se NEWS-filerna i samband med varje utgåva, dvs NEWS-versionen. För mer information om bidragande testrapporter, buggfixar eller nya funktioner och support, läs Den nya utvecklarhandboken eller BUGS och filerna i källarkivet. Inlagt i Nyhetskommentarer Closed. January 28th, 2013. Ett samtal från Peter Stuge om att använda OpenOCD för att felsöka inbyggd systemspil OpenOCD för Windows. Vi kommer att kompilera OpenOCD för att köra under Windows-miljö med hjälp av en kors-kompilator värd Linux Debian eller Cygwin. Please se den här länken om hur man skapar en cross-compiler miljö för ditt operativsystem. För att kompilera OpenOCD för att köras i en Windows-miljö behöver du en kors-kompilator på Cygwin eller Linux. Den här dokumentationen är baserad på en Debian-bygg, men några ändringar gör det möjligt för dig att kompilera på din Linux-smak Cygwin. Det som körs på Windows kommer också att kunna skapa en körbar dator som körs under Windows, utanför Cygwin-miljön. Nedladdning av OpenOCD. Du kan ladda ner OpenOCD från git repository. You kan använda kommandoradsversionen för Git. mkdir openocd cd openocd git init openocd git clone. and uppdatera den med. NOTE Du måste köra bootstrap för att skapa konfigurera innan du kan springa Konfigurera - Enable-maintainer-Mode med motsvarande flagga. Du kan ladda ner den från. Använda till en katalog och Chdir. test kompilera kör i inbyggt läge with. Cross kompilera OpenOCD för Windows. Det mest grundläggande kommandot och par Ameter för att korsa kompilera OpenOCD är parametern efter flaggan - värd är kors-compiler beroende. På vissa kors-kompilatorer måste du ange --host i686-w64-mingw32 om du bygger din från. Kommer att berätta för konfigurationen att titta på katalogen med komprimerade bin där filerna med ligger Denna bin-mapp ska vara den första sökvägen i din PATH-variabel. Annan konfigurera flaggor och parametrar. NOTER Hämtad från readme-filen i OpenOCD. Testing and running on Windows. Kopiera bara EXE-filen och motsvarande bibliotek i en Windows-miljö. Kör på Win7-konsolen. Några knep, Anteckningar och felsökning. Om kompileringen misslyckades, titta alltid på filen Verifiera att du har en fungerande tvärsammanställd miljö, Cross-compiler s-sökvägen måste vara den första i PATH-variabeln och att alla nödvändiga bibliotek heter i den rätta vägen. Det finns många olika byggnader för en cross-compiler. Senaste cygwin, the - mno-cygwin fungerar inte eller ignoreras Använd - host-flaggan istället med rätt parameter, t. ex. i686-w64-mingw32 medan i Linux eller debian, det kan vara i586-mingw32msvc, och det beror på var du fick ditt kors - kompiler build. To felsöka, försök först att kompilera det utan biblioteket ftd2xx eller libftdi för att se om det går igenom kompileringsprocessen och lägg sedan till flaggarna en åt gången. Läs läsmen eller filen som ingår i förvaret Det har mycket av Information som kan leda till en framgångsrik cross-compilation. If du använder FTDI-chips, var noga med att använda biblioteken för windows. References and Resources. This är den tredje och sista delen av handledningen om att skapa en gratis och fullt fungerande GCC Eclipse OpenOCD ST-LINK V 2-miljö för användning med STM32F0Discovery-styrelsen I den här posten visar jag hur du kan felsöka ett förmörkelseprojekt med OpenOCD GDB-servern För att kunna följa denna blogginmatning måste du redan ha gcc - Armverktygkedja och eclipse setup och confi Gured som beskrivs i de föregående två inmatningarna. När vi pratar om felsökning är det viktigt att förstå att den faktiska felsökningsenheten eller emuleringshårdvaran är på chip och kallas chip-debuggen OCD-hårdvara Vanligtvis är en enhet som ST-LINK V 2 eller JLINK är skyldig att tillhandahålla ett gränssnitt mellan on chip debugger och din dator eller IDE debug-programvara Vidare används ett GCC-baserat debug-gränssnitt inom din IDE, din debug-programvara består av en GDB-server och en GDB-klient. Detta kallas Client - Serverarkitekturen. Så STLINK V 2-enheten som finns ombord på STM32F0Discovery-kortet ger ett gränssnitt mellan chip-debug-kretsen på MCU-sidan och GDB-servern på utvecklings-PC. GDB-servern tillhandahåller en kompatibel GDB-klient med tillgång till On-chip-debug-möjligheterna på STM32F0-chipet Typiskt kan IDE-enheten integrera GDB-klienten i det. När det är dags att felsöka, kopplar GDB-klienten till GDB-servern som i sin tur möjliggör ch Ip för att bli debugged. In denna handledning kommer vi att använda GDB-servern från OpenOCD verson 0 6 x Framtida versioner ska också fungera tillräckligt men äldre versioner kommer inte att inkludera stöd för STM32F0Discovery-kortet OpenOCD är en gratis och öppen källkod GDB Server-programvara som är Kompatibel med många hårdvara-debugverktyg inklusive ST-LinkV2, J-Link, R-länk, Olimex-JTAG och c. On OpenOCD-webbplatsen finns länkar till endast källfilerna. Det är möjligt att bygga OpenOCD från källan i en MS Windows-miljö med Cygwin som beskrivs här kommer vi att ta den enkla vägen och helt enkelt använda MS Windows-binärer som byggdes av Freddie Chopin och är lätt tillgängliga på hissite. We kommer också att använda GDB-klienten som levereras med gcc-arm toolchain arm - None-eabi-gdb Medan vi kan använda GDB-klienten från kommandoraden kommer vi att välja att integrera GDB-klienten i den utvecklade Eclipse-inställningen som omfattas av föregående post och utföra felsökningen via eclipse IDE. Så det första steget w Sjukt vara att ladda ner OpenOCD0 6 x binärer Vi behöver också ladda ner zadig-verktyget om du vill installera en anpassad USB-drivrutin. Det kanske inte är nödvändigt om du redan har installerat ST LINK Utility. När du laddar ner filen, extrahera den Innehåll i katalogen C utveckling så att du hamnar i en katalog C Developmentopenocd-0 6 x Inom den här katalogen hittar du en bin och bin-x64-mappar Den tidigare innehåller openOCD-exekverbar för 32-bitars system medan den senare innehåller körbar För 64-bitars system Eftersom jag kör en 64-bitarsversion av MS Windows 7-operativsystemet, kommer jag att använda 64-bitarsversionen av OpenOCD vilket innebär att jag kommer att använda den openocd-x64-0 6 x binära som finns i Bin-x64-katalogen i openocd-mappen Om du har ett 32-bitars MS Windows OS måste du använda openocd-0 6 x binära som finns i bin-katalogen i openocd-mappen. Lägga till OpenOCDs binära mapp till banmiljön Variabel. Det nästa steget kommer att vara att lägga till sökvägen till o PenOCD exekverbar till variabelvägen i MS Windows-operativsystemet Detta gör det möjligt för oss att utföra OpenOCD från vilken katalog som helst i kommandonmiljön och inte bara från mappkatalogen som innehåller openOCD binär För att göra detta klickar du på Start-menyn, högerklickar på datorn Och välj Properties. Figure 1- Lägga OpenOCD i variabeln PATH Environment - del 1.Detta öppnar Systemfönstret som visas i Figur 2 Klicka på Advanced System Settings. Figure 2- Lägga OpenOCD till PATH Environment Variable. This öppnar ett System Egenskaper fönstret som visas i Figur 3 Klicka på knappen Miljövariabler längst ned till höger i fönstret. Figur 3 - Lägger till OpenOCD i PATH-miljövariabeln - Del 3.Detta öppnar ett fönstret Miljövariabler Under Systemvariabler väljer du systemvariabeln Och klicka på den nedre Redigera-knappen. Detta öppnar ett fönster för ändring av systemvariabler I fältet Variabelvärde går du längst till höger och lägger till C Development openocd-0 6 x bin-x64 om du kör ett 64-bitars operativsystem eller C Utveckla openocd-0 6 x bin om du kör ett 32-bitars OS Kontrollera att det finns mellan den katalogväg du just angett och andra som redan ingår i Vägen för variabelväg Klicka på OK i fönstret Ändra systemvariabel, OK i fönstret Miljövariabler och OK i fönstret Egenskaper för system. Figur 4 - Lägg till OpenOCD i PATH Environment Variable. Now öppna ett nytt fönster i kommandoradsfönstret om du har en Gammal en öppen detta vann inte jobbet och skriver in antingen openocd-x64-0 6 x - v om du använder ett 64-bitars OS eller openocd-0 6 x - v om du använder ett 32-bitars OS och du bör se En utgång som ser ut som den som visas i Figur 5.Figur 5 OpenOCD fungerar. Installera ST LINK Drivers Valfritt om du har ST LINK UTILITY drivrutiner redan installerade. Nästa steg kommer att vara att installera nödvändiga drivrutiner för att få ST-LINK V 2 Felsöka maskinvara för att arbeta med OpenOCD Om du har slutfört en del av denna handledning är chansen att du redan har installerat Ed den officiella ST-drivrutinen som kommer med ST-LINK-verktyget Denna drivrutin fungerar bra med ST-LINK-verktyget och ATollic GDB-servern och verkar fungera bra med OpenOCD GDB-servern. Om du vill fortsätta använda den, hoppa över till Nästa avsnitt i denna handledning Starta OpenOCD GDB-servern Om du är intresserad av att installera STLINK-drivrutinerna, fortsätt openOCD-sättet och fortsätt med detta avsnitt. OK tillbaka till företag Vi måste först ansluta STM32F0Discovery-kortet ST Link till datorn via USB . Sedan måste vi extrahera körbarheten från den komprimerade zadigv2 0 1 158 7z som vi borde ha hämtat härifrån Kör den körbara Gå till alternativmenyn och klicka på Lista alla enheter. Bild 6 Används för att installera ST Link-drivrutiner för OpenOCD. Select STM32 STLink från rullgardinsmenyn och se till att WinUSB väljs i det intilliggande fönstret som visas i Figur 6. Tryck sedan på Upgrade Drivers knappen. Efter ca 30sec - 2min ska du få ett meddelande som säger att Installationen är framgångsrik Det kan också vara fråga om att starta om datorn Om det ber dig att göra det, vänligen följ det innan du flyttar framåt. Starta OpenOCD GDB Server. Vid denna punkt är drivrutinen framgångsrikt installerad och redo att köra OpenOCD. In File Explorer Chef gå till katalogen C Development openocd-0 6 x skript och kopiera manuset till din iotgglem0 projektkatalog C Utvecklings Arbetsyta iotogglem0 Öppna nu ett nytt kommandoradsfönster och skriv cd C Development Workspace iotogglem0 för att komma till din projektkatalog i kommandot Följd av openocd-x64-0 6 x - f Observera att om du använder ett 32-bitars Windows OS ska du skriva openocd-0 6 0 - f Det här ska aktivera openOCD GDB-servern och du ska få utdata som visas i I Figur 7.Figur 7 OpenOCD GDB Server Success. You kan ignorera varningen så länge som openOCD blockerar kommandoraden och ger dig meddelandet Info-hårdvaran har 4 brytpunkter, 2 klockpunkter Detta är viktigt eftersom det betyder tha T när du kör kod från blixten har du bara 4 hårdvarupunkter att arbeta med. Nu lämnar du det befintliga kommandoradsfönstret och öppnar ett annat kommandoradsfönster. Radera och blinka din Microcontroller med OpenOCD. Medan du inte behöver oroa dig för att vara i en viss katalogplats , Skriv telnet localhost 4444 i det nya kommandoradsfönstret. Detta låter dig komma åt GDB-servern genom att telneting in i den. Ange 8 Telneting i OpenOCD GDB Server. Nå att radera återställning av chiptyp, sova 100, stm32f1x massera 0 och Sova 100 Se figur 9 Du kan sedan skriva ut exit för att stänga din telnet-session. Figur 9 Radera chipet med OpenOCD GDB Server. För att programmera chiptelnet till OpenOCD GDB Server igen och skriv återställningsstopp, sova 100, vänta 2, blixt Writeimage erase eller flash writeimage radera och sova 100.Figure 10 Programmera Chip med GDB Server. To verifiera typ verifiera eller verifiera och sova kör. Till felsökaren sätta mikroen i körläge typ E reset run. If OpenOCD hänger, försök antingen att trycka på RESET-knappen på STM32F0Discovery-kortet och eller ta bort JP2-jumperen och sätt tillbaka den igen för att strömma till styrelsen. Du kan förmodligen släppa kommandot waithalt 2 som nämns för programmering. Också Verifierande blixt kan inte vara nödvändigt för de flesta fall Om du tittar på Figur 10 ser du att antalet byte som skrivits i programsteget är större än antalet byte verifierade Det här beror kanske på att felsökningsinformationen är inbäddad i filen Det behöver inte verifieras Men jag är verkligen inte säker Hur som helst det nya programmet ska springa på chippet utan problem. Jag har ovanstående kommandon från ett skript som publicerats på github av Mike Szczys jag var tvungen att ändra det lite för att göra Det fungerar. Anteckna slutligen hur vi inte måste ange katalogen att filen som ska programmeras var i Det här beror på att vi startade GDB-servern i projektkatalogen När du använder OpenOCD är det mycket viktigt att STARTA OPENOCD SERVEREN I PROJEKTET DIRECTORY. Debugging in Eclipse Använda OpenOCD. Så nu kommer höjdpunkten i denna handledning där vi kommer att felsöka med OpenOCD-servern från Eclipse Så låt oss öppna Eclipse och ladda vårt projekt iotogglem0 Om du inte har arbetat dig igenom de två första delarna av Handledningen måste du göra innan du kan fortsätta. Se till att du kan bygga projektet iotogglem0 framgångsrikt i Eclipse, att STM32F0Discovery-kortet är anslutet till datorn via USB och att OpenOCD GDB-servern körs. Klicka I alternativet Debug Configurations under körmenyn Detta öppnar ett felsöknings konfigurationsfönster som visas i Figur 11 Dubbelklicka på GDB-hårdvara Debugging till vänster. Figur 11 Skapa en debug-konfiguration. Detta skapar en ny Debug-konfiguration som heter iotogglem0 Standard I Valde att ändra sitt namn via fältet Namn på fliken Huvud till iotogglem0 OpenOCD Debug Se till att det är valt i CC-applikationsfältet. Det kan göras antingen genom att klicka på a Djacent Search Project-knappen och välja filen direkt eller genom att klicka på Browse-knappen och bläddra igenom filsystemet. Det tidigare tillvägagångssättet är snabbare Se även till att iotogglem0 finns i fältet Projekt som visas i Figur 11 Klicka sedan på Debugger-fliken. Figure 12 Debugger Tab. In fliken Debugger anger du namnet på gdb-klientprogrammet arm-none-eabi-gdb i GDB-kommandofältet. Se även till att du anger det portnummer som du vill att GDB-klienten ska ansluta till. Detta är Samma portnummer som GDB-servern lyssnar på, vilket är 3333 Klicka sedan på startfliken Vid den här punkten är det viktigt att notera att till telnet i OpenOCD GDB Server använder vi port 4444 men att ansluta en GDB-klient till OpenOCD-servern , Måste vi använda port 3333 Klicka sedan på Startup-fliken. Flik 13 Start-fliken. I fönstret Starta skriver vi in ​​initialiseringskommandonens fönstermonitor återställs. Vi lämnar allt annat, se figur 13. Notera att både ladda bild och Lo Kryssrutor för annonssymboler är markerade Både bilden och symbolerna är härledda från utdatafilen Det här är bra eftersom det innehåller både och är lämpligt för jobbet. Den här bilden är det körbara programmet som ska laddas ner till flash. Symbolerna är debuggen Symboler som krävs för debugging Om du bara vill ladda ner programmet men inte felsöka det, kan du bara kontrollera fältet Ladda bild. Detta kommer i praktiken att programmera chipet men inte lägga det i ett felsökningsläge så att du kan programmera chipet från Eclipse In Faktum att du kan skapa en annan iotogglem0 OpenOCD Flash-konfiguration som gör att Både bilden och felsökningssymbolerna måste laddas för att korrekt felsöka chipet. Klicka sedan på den gemensamma fliken. På den gemensamma fliken kontrollerar du att kryssrutan Felsökning är markerad Kommer att tillåta oss att välja detta vår iotogglemo Debug-debugkonfiguration via felsökningsikonen i verktygsfältet, så får vi se den korta. Figure 14 Common Tab caption. The OpenOCD Server verkar inte gilla den GDB DSF Hardware Debugging Launcher Mycket mycket så vi måste ändra detta För att göra detta måste vi klicka på välj annan länk i botten av felsöknings konfigurationsfönstret bredvid Använda GDB DSF Hardware Debugging Launcher. Detta öppnar ett Välj Preferred Launcher-fönster Klicka på På länken Ändra arbetsytans inställningar Här öppnas ett tredje fönster med namnet Preferences Filtered - Standard Launchers. Under starttypsläge väljer du Debug Found under GDB Hardware Debugging. Välj Preferred Launcher i rutan bredvid Standard GDB Hardware Debugging Launcher. Figur 16 Använda standarden GDB Hardware Debugging Launcher. Klicka på Apply knappen följt av OK-knappen i Inställningar filtrerade - Standard Launchers Klicka sedan på OK i fönstret Välj Preferred Launcher och sedan på stängningsknappen i Debug Configurations-knappen. Vi är nu redo att felsöka. Figur 17 Starta Debugging. Now du borde vara tillbaka i Eclipse IDE Högerklicka på den lilla felsökningen se Figur 17-ikonen i Eclipse IDE Verktygsfältet, välj iotogglem0 OpenOCD Debug-konfigurationen och klicka på den. Du kommer att få en bekräftelse Perspektivväxlingsfönstret Välj ja och du kommer att finna att Eclipse har bytt från CC-perspektivet till felsökningsperspektivet. Du kommer nu att vara i felsökningsperspektivet Till höger Du hittar flera flikade fönster som visar dig de lokala variablerna, nuvarande brytpunkter, CPU-register och moduler. Du kan också lägga till demontering eller minnesfönster genom att klicka på visningsalternativet i fönstermenyn och sedan välja ett objekt som ska visas. Det finns också en debug Fliken som innehåller användbara ikoner Ikonerna är numrerade i figur 18.Figur 18 Debug Perspective. This är Fortsätt eller Fortsätt-ikonen och kommer att orsaka att koden körs. Den här ikonen stoppar körningen och kan bara väljas medan programmet körs. Den röda rutan Knappen avslutar felsökningsläge. Den här ikonen kopplar bort GDB-klienten från GDB-servern. Det här är steget i ikonen så att du kan gå in i funktioner eller till nästa instruktion. Är steget över ikonen så att du kan gå över funktioner eller till nästa instruktion. Det här är steget ur ikonen så att du kan gå ut ur en funktion eller det aktuella området. För att lägga till en brytpunkt högerklickar du i den grå marginen om Källkodsfönstret längst ned till vänster och välj alternativet för växling av brytpunkt Repetera processen för att ta bort brytpunkter Kom ihåg att du bara har 4 brytpunkter Så låt s lägga till en brytpunkt vid huvudfunktionslinjen 55 och ytterligare två brytpunkter vid fördröjningen 1000000-funktionen ringer På linjerna 84 och 87 Klicka nu på fortsätt. Efter att ha tryckt på fortsättningsikonen en gång, kommer kodkörningen att stoppas i början av huvudfunktionen som trycker på fortsättningsikonet igen upprepade gånger, så att koden slutar rakt innan du utför de två fördröjningsfunktionssamtalen så att du kan se Lysdioderna växlar Grattis du debuggerade ditt första STM32F0Discovery-projekt. När du är klar med felsökning kan du alltid sluta felsöka genom att trycka på ikonen för den röda rutans avslutningsikon 3 eller ikonen 4 Och byta perspektivet tillbaka till C C. Notera att du måste ha OpenOCD GDB Server-programmet igång och lyssna såväl som STLINK V 2 på STM32F0Discovery-kortet som är anslutet till datorn via USB-kabel innan du kan felsöka ett projekt från Eclipse Om GDBServer körs inte, GDB-klienten på Eclipse-sidan har ingen möjlighet att ansluta till chip-debug-hårdvaran självt Du kan aktivera GDB-servern från Eclipse genom att ställa in externa verktyg via körmenyn. Men jag föredrar bara att se till att GDB-servern aktiveras från kommandoraden innan jag börjar felsöka i Eclipse. Förstå STM32F0: s GPIO-del 2.Sätt upp en virtuell Kubuntu-maskin med hjälp av VMware Player.

No comments:

Post a Comment