HomeMade

Pełna wersja: Programowanie ARM, nauka, środowiska programistyczne IDE
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Dziękuję za wyjaśnienia, to rozwiało moje wątpliwości sprzętowe. Miałem jeszcze pytania dodatkowe, ale Adam też je wyjaśnił. Rozgryzam więc obsługę ST-linka, bo wyczytałem w opisach instalacyjnych które podał Adam dla J-linka, że obsługiwane będą jedynie STmy na płytkach fabrycznych, więc chyba zamiana ST-linka na J-linka wydaje się być bezcelowa. W dalszej przyszłości budując coś tam na tym procesorze, lub podobnym wymagany będzie i tak programator zewnętrzny, właśnie J-link, jako najtańszy z dostępnych. Ale to przyszłość.
(11-07-2016 20:12)SP6IFN napisał(a): [ -> ]... że obsługiwane będą jedynie STmy na płytkach fabrycznych, więc chyba zamiana ST-linka na J-linka wydaje się być bezcelowa.

To nie do końca tak. Licencja mówi, że przerobieniu na J-Linka mogą być tylko programatory zintegrowane na płytkach uruchomieniowych (Discovery, Nucleo, NXP) i docelowo mogą obsługiwać tylko ten procesor. Jednak taki programator potrafi obsłużyć całą rodzinę procesorów, a nie tylko ten konkretny model.
Czy użytkownik dostosuje się do zapisów licencji, to już inna sprawa.

I tak ST-Link przerobiony na J-Linka będzie obsługiwał tylko rodzinę STM32.
Programator zintegrowany w zestawach NXP będzie obsługiwał TYLKO procesory od NXP.

A czy takie przerobienie jest bezcelowe ? Moim zdaniem warto. Oprogramowanie od Seggera jest dużo stabilniejsze i występuje w natywnej wersji dla Windowsa, Linuksa, Mac-a. Dostępny jest osobny debugger Ozone, który ma zdecydowanie większe możliwości od tych wbudowanych w środowiska IDE. Wszystko to jest bez limitów, pod warunkiem, że zostanie użyte tylko do celów hobbystycznych lub nauki.

Jeżeli jest się nie zdecydowanym, to należy pamiętać, że nawet najtańsza wersja J-Link EDU obsługuje większość dostępnych mikrokontrolerów z rdzeniem ARM. I to nie tylko z serii Cortex-M (popularne stm32, nxp....), ale również te duże Cortex-A, Cortex-R.
Ryszard na module Discovery jest zlacze SWD oraz dwie zworki (opis Discovery/STlink). Jak zdejmiesz te zworki to wtedy programator jest podlaczony do zlocza SWD i mozesz programowac procesor na innej plytce np. Tulipana. Jak nie spodoba ci sie praca pod J-linkiem to rownie latwa i szybko przeprogramujesz go na STlinka. Pod STlinka mozna kupic bardzo tanie programtory cos kolo 25zl tylko nie wiem czy da sie go przerobicbo to pewniejakis 'klon' a nie STM.
Jeszcze raz Dziękuję za wyjaśnienia odnośnie J-linka, uwagi są bezcenne. A że trzeba słuchać mądrzejszych ode mnie, do rad się dostosowałem. Zmieniłem oprogramowanie na J-linka, bez żadnych problemów, wszystko odbyło się zgodnie z opisem który wskazał Adam. Pogrzebałem potem trochę w Helpie J-linka, sprawdziłem to i owo.....tak z ciekawości, po czym był EmBitz, skonfigurowanie programatora w środowisku, no i wgranie pierwszego zadania Z001, tego z miganiem diodami naprzemiennie. Tu się trochę zaciąłem, bo filozofia troszkę odmienna od tej z Eclipsa i AVRów. Ale doszedłem o co chodzi, no i diody mrugają przyjacielsko, a ja jestem DUMNY z osiągnięć. Zrozumienie samego programu zostawiam już na potem, na dzisiaj mi wrażeń wystarczy.
Rysio!
Literatura uzupełniająca do kursu:
Język C- podstawy programowania
WikiBooks - programowanie w C
Programowanie w języku C
Programowanie strukturalne -język C

Wystarczy czytania na długie zimowe wieczory. W temacie opisu języka C napisano już prawie wszystko, również w języku polskim.
W związku z brakiem pytań dotyczących przykładu od Adama, zajmiemy się teraz obsługą portu szeregowego. Na razie bez użycia przerwań. W załączniku do pobrania materiał.
Należy go rozpakować i otworzyć projekt w EmBitz.

WAŻNE !!!! W firmware J-Link-a dla ST-Linka jest błąd uniemożliwiający odbieranie danych z komputera po VCP ( wirtualnym porcie szeregowym) . Prawidłowo działa tylko wysyłanie z Discovery do komputera.

Aby przykład działał w całej okazałości, należy na czas działania przykładu przywrócić firmware programatora z J-Linka na ST-Linka.

Pytajcie, piszcie.... Cały kod jest solidnie skomentowany.....



[attachment=11206]
(15-07-2016 0:47)SQ8MVY napisał(a): [ -> ]WAŻNE !!!! W firmware J-Link-a dla ST-Linka jest błąd uniemożliwiający odbieranie danych z komputera po VCP ( wirtualnym porcie szeregowym) . Prawidłowo działa tylko wysyłanie z Discovery do komputera.

Aby przykład działał w całej okazałości, należy na czas działania przykładu przywrócić firmware programatora z J-Linka na ST-Linka.

Chciałoby się rzec "król jest nagi!" bowiem po wgraniu J-Linka przestaje też być widoczna partycja służąca do wygodnego instalowania nowych wsadów. Przywrócenie oprogramowania za pomocą JlinkReflash nie wystarcza, trzeba jeszcze uaktualnić oprogramowanie za pomocą STLinka. Niestety, początkowy zachwyt prysł jak mydlana bańka. Póki co odradzam zmianę softu na płytkach. Jedyna zaleta Jlinka to bardzo szybkie wgrywanie wsadu.

Do wykazu Adama dorzucę jeszcze link do Wikipedii, gdzie gdzie jest silnie skondensowana pigułka z językiem C.
(15-07-2016 7:08)SP9FKP napisał(a): [ -> ]Chciałoby się rzec "król jest nagi!" bowiem po wgraniu J-Linka przestaje też być widoczna partycja służąca do wygodnego instalowania nowych wsadów. Przywrócenie oprogramowania za pomocą JlinkReflash nie wystarcza, trzeba jeszcze uaktualnić oprogramowanie za pomocą STLinka. Niestety, początkowy zachwyt prysł jak mydlana bańka. Póki co odradzam zmianę softu na płytkach. Jedyna zaleta Jlinka to bardzo szybkie wgrywanie wsadu.
No to SUPER, ja już mam pozamiatane?
Rysio!
Witaj,

Dlaczego masz mieć pozamiatane ? Wszystko jest odwracalne. Tu nie ma obawy, że coś się nie uda. Napisz coś więcej..... Ja i tak po sprawdzeniu prawidłowego działania przykładu wróciłem do wsadu J-Link-a....
(15-07-2016 11:35)SQ8MVY napisał(a): [ -> ]Dlaczego masz mieć pozamiatane ? Wszystko jest odwracalne.

Spoko!
Ja tak szybko nie wpadam w panikę. Odniosłem się tylko do tego co napisał Piotr.
Rysio!
Stron: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Przekierowanie