Po sieci krąży wiele tutoriali jak skonfigurować Eclipse Helios i OpenOCD. Niestety mi zajęło sporo czasu aby przebić się i dość o co chodzi, gdyż większość opisów dotyczy Eclipse Galileo (czyli starej wersji).
Na dzień pisania tej „dokumentacji dla potomności” aktualne wersje to:
-
- Eclipse (Helios) 3.6.0 + CDT 7.0.0 (kliknij by pobrać)
- Łatka na CDT 7.0 posiadająca plugin GDB Hardware Debugging
- Sourcery G++ Lite 2011.03-42 (kliknij by pobrać)
- GNU ARM Eclipse Plugin
- OpenOCD 0.4.0
Do tego wszystkiego potrzebujemy jakiś interface JTAG. OpenOCD wspiera m.in.:
- Najtańszy JTAG jaki można sobie wyobrazić to Wiggler. Niestety wymaga portu równoległego, co w obecnych komputerach jest już rzadkością (o ile w ogóle jeszcze występuje). Jeżeli ktoś posiada port równoległy, Wigglera można kupić już nawet za 30 PLN lub złożyć samemu – google dostarczają wielu schematów.
- Inteface\’y z interface\’em USB bazowane na układzie FT2232. Osobiście mam pewne „ALE” dotyczące tych interface\’ów i ich sterowników. Ze względu na ograniczenia licencyjne binarki OpenOCD nie mogą być dystrybuowane ze skompilowaną biblioteką D2XX. Aby użyć sterowników D2XX należy OpenOCD skompilować własnoręcznie, co nie jest takie oczywiste i proste dla osób, które nie mają doświadczenia. Nie jest to jednak duży problem. OpenOCD domyślnie skompilowany jest z użyciem biblioteki libftdi, która działa nieco wolniej niż sterowniki producenta (ale też bardzo dobrze) – pod warunkiem że producent dostarcza sterowniki dla libftdi. Na aukcjach i polskich sklepach internetowych można nabyć wiele różnych rozwiązań sprzętowych, w tym: Olimex (kilka wersji), JTAG-lock-pick (Freddie Chopin, dobre wsparcie klienta/użytkownika), KT-Link (Kristech)
- Interface\’y bazowane na mikrokontrolerach, takie jak: J-Link. Teoretycznie J-Link jest wspierany przez OpenOCD, ale chyba od niedawna.
- Inne… Wystarczy przejrzeć katalog „interface” w katalogu OpenOCD, gdzie są wyszczególnione pliki konfiguracyjne do różnych typów intarface\’ów.
Po instalacji wszystkich narzędzi trzeba skonfigurować komendę uruchamiającą daemona OpenOCD

I na znalezieniu informacji, że trzeba przestawić Debug Luncher\’a spędziłem pół dnia. Musi być ustawiony „Standard GDB Hardware Debugging Luncher” domyślnie ustawiany jest inny.



Inne opisy konfiguracji: