Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[OpenOCD 0.8.0] - Serwer OpenOCD nie działa pod Windows.

23 Paź 2014 10:55 1422 8
  • Poziom 21  
    Witam

    Nie jestem w stanie uruchomić owego serwera gdb. Próbuję go połączyć z boardem Nucleo F401-RE. Paczka pobrana ze strony Freddiego Chopina. Dodam, że na Linuksie nie miałem problemów z jego uruchomieniem. Sterowniki zainstalowałem poprzez program Zadig, z listy wybierałem urządzenie "ST-Link Debug (Interface 0)", i próbowałem wszystkich dostępnych do zainstalowania sterowników. OpenOCD uruchamiam z terminala poleceniem:
    Code:
    "openocd-x64-0.8.0.exe -f board\st_nucleo_f401re.cfg"


    co skutkuje wyjściem w postaci:
    Code:

    Open On-Chip Debugger 0.8.0 (2014-04-28-08:42)
    Licensed under GNU GPL v2
    For bug reports, read
            http://openocd.sourceforge.net/doc/doxygen/bugs.html
    srst_only separate srst_nogate srst_open_drain connect_deassert_srst
    Info : This adapter doesn't support configurable speed
    Error: open failed
    in procedure 'transport'
    in procedure 'init'


    Bardzo proszę o pomoc.

    Pozdrawiam
  • Poziom 28  
    omicronNs napisał:
    Sterowniki zainstalowałem poprzez program Zadig, z listy wybierałem urządzenie "ST-Link Debug (Interface 0)", i próbowałem wszystkich dostępnych do zainstalowania sterowników.

    ST-Link działa z OpenOCD na zwykłych sterownikach od ST (ST-LINK/V2 USB driver for Windows).

    http://www.st.com/web/catalog/tools/FM147/SC1887/PF258167
  • Poziom 21  
    Takowe również próbowałem
  • Specjalista - Mikrokontrolery
    No cóż, muszę niestety dać Ci niezbyt pomocą odpowiedź, że taka kombinacja na 100% działa, bo sam takiej używałem wielokrotnie... Może spróbuj użyć rozwojowej wersji OpenOCD (tej z obsługą SWD w JTAGach opartych o FTx232 - akurat to nie ma znaczenia, jednak ta wersja jest po prostu najnowsza z dostępnych na stronce). Generalnie obstawiam jednak, że problemem są sterowniki - jeśli używasz tych z Zadig'a, to zainstaluj wersję WinUSB i sprawdź w menadżerze urządzeń, że urządzenie które podłączasz na pewno ma taki właśnie sterownik. Być może wybrałeś złe urządzenie, bo Nucleo chyba pojawia się jako dwa (JTAG i pendrive)?

    4\/3!!
  • Poziom 21  
    Nucleo jest wykrywane przez Windows jako 3 urządzenia "Debug", "mass storage" oraz "Virtual COM". Zainstalowałem sterowniki do wszystkich trzech urządzeń "WinUSB (v6.1.7600.16385)", konsola uruchomiona jako administrator. Brak poprawy.

    edit:

    Dodatkowo po odznaczeniu w menu "Options" opcji "Ignore Hubs or Composite Parents" wylistowane zostaje urządzenie o nazwie STM32 STLink (Composite Parent). Po zainstalowaniu temu urządzeniu sterownika pozostałe od ST znikają, lecz OpenOCD wciąż nie łączy sie z Nucleo.

    Wszystkie sterowniki są poprawnie instalowane, ponieważ w menadżerze urządzeń widnieją po instalacji w osobnej kategorii.
  • Specjalista - Mikrokontrolery
    A w ogóle udało Ci się uruchomić OpenOCD z jakimś innym urządzeniem?

    Spróbuj przywrócić oryginalne sterowniki, bo z nimi też musi zadziałać.

    Spróbuj użyć najnowszej wersji OpenOCD.

    4\/3!!
  • Poziom 21  
    Sterowniki przywrócone (ST-Link Utility).

    Nowy OpenOCD komenda:
    Code:
    "openocd-x64-0.9.0-dev-swd-140623233947.exe -f board\st_nucleo_f401re.cfg"


    Output:
    Code:

    Open On-Chip Debugger 0.9.0-dev-00067-g2502d8a (2014-06-26-08:30)
    Licensed under GNU GPL v2
    For bug reports, read
            http://openocd.sourceforge.net/doc/doxygen/bugs.html
    srst_only separate srst_nogate srst_open_drain connect_deassert_srst
    Info : This adapter doesn't support configurable speed
    Error: open failed
    in procedure 'init'
    in procedure 'ocd_bouncer'
    in procedure 'transport'
    in procedure 'init'


    Nie próbowałem uruchomić niczego innego, ponieważ posiadam tylko Nucleo. Jedynie pod Linuksem ta sama płytka, OpenOCD 0.8.0 kompilowane ze źródeł i działa bez problemu.

    Dodano po 8 [minuty]:

    Z racji desperacji zacząłem próbować podłączać Nucleo pod inne porty USB, i serwer wstał po podłączeniu pod port USB 2.0.

    Dziękuję za pomoc. :D
  • Specjalista - Mikrokontrolery
  • Poziom 21  
    Serwer nie widział Nucleo gdy było podpięte do portu USB 3.0. Co dziwne pod Linuksem płytka podpięta do tego samego portu działała.

    Pozdrawiam