Strony

środa, 25 listopada 2020

MkSTMprog - oprogramowanie narzędziowe dla ARM / STM32


Witam,

Tym razem "z całkiem innej beczki" jak to się mówi ! Czyli chciałbym Wam przedstawić pierwszą oficjalną wersję oprogramowania narzędziowego o nazwie MkSTMprog.exe na potrzeby programowania mikrokontrolerów STM32 za pomocą programatorów typu ST-Link v.2 oraz przy pomocy sprzętowego Bootloadera. Ale żeby było ciekawiej oprogramowanie może działać nie tylko w trybie "STANDALONE" - pozwala także na pełną INTEGRACJĘ ze wspaniałym środowiskiem STMCubeIDE od wersji 1.4 i wyższej czyli z Eclipse ! ;) .... Gdy piszę ten post, to oprogramowanie jest już po alpha i beta testach. Ale miałbym mało pokory, gdybym twierdził, że jest po testach tylko u mnie (bo jak dobrze wiecie, na dzień dzisiejszy to ja jestem nawet nie początkujący w ARM ale ledwo raczkujący albo nawet jeszcze na etapie życia płodowego ARM!) ;) .... Tyle że ja zawsze gdy coś zaczynam i zauważam pewne (przynajmniej wg mnie niedociągnięcia oryginalnego oprogramowania) to staram się zrobić swoje własne i tak też TERAZ się stało. Was za to proszę o szczerą do bólu ocenę - nawet jeśli macie napisać, że to oprogramowanie jest do Bani ! ... ale jeśli tak napiszecie to czekam na poważną argumentację, bo jeśli to ma być tylko hejt to usunę kocie komentarze i już ;) a kto mi zabroni? Jeśli zaś podejdziecie uczciwie i napiszecie fajną argumentację na NIE albo jakieś uwagi to obiecuję, że z miłą chęcią posłucham i podziękuję jeszcze Wam za to! Krótko mówiąc jest to mały choć duży programik. Dlaczego mały i duży? Bo teoretycznie niewiele robi (choć dużo) ale za to bardzo dużo WAŻY bo plik EXE zajmuje grubo ponad 22 MB ! Ale jak to się mówi coś za coś. Dzięki swojej wadze ciężkiej - nie potrzebujemy nic dosysać z internetu, program zawiera w swoim brzuchu wszystkie niezbędne narzędzia do pracy ;) Pozwala na pełną integrację z Eclipse jak pisałem ale też w trybie STANDALONE ma sporo ciekawych opcji. Aż mi ciężko wszystkie opisać a myślę, że gdy tylko spróbujecie go chociaż kilka dni intensywnie poużywać w obu trybach to być może dostrzeżecie te zalety które ja widzę - albo mnie sprowadzicie do parteru i wyjaśnicie że to nie miało najmniejszego sensu. A i tak będę Wam za to wdzięczny - a zatem ?



Proszę obejrzeć dwie części poradnika. Miało być krótko 15 min a wyszło jak to u mnie zwykle, czyli dwie części - jedna ok 22 min a druga ok 15 min ;) obejrzyjcie proszę zanim się wypowiecie a najlepiej przetestujcie zanim się wypowiecie ok? To moja gorąca prośba. Oto filmiki



;)

14 komentarzy:

  1. Będzie się działo. Czekamy na dalszy ciąg. Pozdrawiam

    OdpowiedzUsuń
  2. Ciekawa aplikacja. Wiem jak wartościowa, bo programuje w STMCubeIDE i wiem, że nie ma tak fajnie jak przy wgrywaniu wsadu dla AVR. :( Tutaj początki z programatorem to była mordęga.

    Ostatecznie u mnie wyglada to tak, że mam swój własny skrypt .bat odpalany również przez wiersz polecenia, gdzie wskazuje ścieżke do pliku wsadowego w projekcie. A tutaj Mirku widzę apka i do tego w kolorze. Już ściągłem i będe testował. Mam pytanie, czy oprócz pliku wsadowego będzie opcja by wrzucić tez Option File?, chyba że już jest tylko jej nie widę.

    OdpowiedzUsuń
    Odpowiedzi
    1. Musiałbyś mi podpowiedzieć dokładniej co to jest to "Option file" i dzie, jak i skąd się to normalnie wgrywa czy coś ok?

      Usuń
  3. Option file to taki plik konfiguracyjny. W skrócie takie fusy jak w avr. Tylko podczas seryjnego programowania płytek ustawia się ścieżkę na wsad Hex oraz na plik Option File podesłany przez klienta. Lub jak mamy elfa to wtedy wrzucamy tylko elf. Mam nadzieję że nie zamieszalem za bardzo.

    OdpowiedzUsuń
    Odpowiedzi
    1. No ale przecież jak odpalasz program w trybie "Standalone" czyli wprost z EXE to wskazujesz dowolny plik jaki chcesz: *.BIN, *.HEX albo *.ELF ;)

      Usuń
  4. Ok, ale czy można jednocześnie dwa wskazać. Czyli .hex z firmwarem i potem jeszcze option file? Szkoda, że nie mozna tu screenów z pulpitu wrzucać to bym pokazał o co mi konkretnie chodzi. Może wkleje linijke scryptu, która wgrywa wsad i potem jeszcze option file:

    STMicroelectronics\Software\Flash Loader Demo\STMFlashLoader.exe -c --pn 1 --br 115200 -i STM32F1_Med-density_128K -e --all -d --fn C:/firmware.hex --v -o --set --fn C:/option_file.bin


    OdpowiedzUsuń
    Odpowiedzi
    1. No właśnie po to jest forum, gdzie można wstawiać screenshoty:

      https://forum.atnel.pl/topic23455.html

      więc tu to zrób ok ? I opisz tam od razu do czego jest ten option file bo ja nie mogę na razie skojarzyć, dajesz i HEX i BIN ? i co dwa są wgrywane ? ;) czy jak ?

      Usuń
  5. Tak firmware .Hex to wsad flash. Option byte to plik .bin ze zdefiniowanymi ustawieniami procesora. Fusami w skrócie. W STM właśnie jest ta opcja że możemy zdefiniować je w postaci pliku. Przykładowo w AVR był wsad .Hex a fusy zaznaczyliśmy w AVR studio. Jak nie chcieliśmy zaznaczać i mieć gotowca tworzyło się plik .elf

    Postaram się Mirku poruszyć ten temat bardziej szczegółowo na linku do forum który podałeś.

    Jeszcze raz chce zaznaczyć że nie czepiam się. Apka naprawdę super!!!, poprostu od razu szukałem tej opcji gdyż u nas w firmie programujemy sporo STM. I klienci zazwyczaj przysyłają kombinację wsad+option byte. Jak jest .elf to jest wtedy miodzio.

    OdpowiedzUsuń
    Odpowiedzi
    1. Ale ja broń Boże nie traktuję twoich pytań czy sugestii jako czepialstwo ! ;) wręcz odwrotnie - teraz zrozumiałem i myślę że dam radę dorobić taką opcję ;) ... tyle tylko, że program dla firm jest odpłatny, tak tylko na marginesie przypomnę i jest to napisane na stronie gdy się go pobiera ok?

      Usuń
  6. Wiem Mirku, nie ośmieliłbym się :)

    Mam nadzieję na to że powstanie książka dla STM jak już się wkręciłes. Taki Whitebook może?, oczywiście w twardej okładce :)

    OdpowiedzUsuń
  7. A czy opcja veryfikacji flash mogła by być dostępna w formie opcji?, tak jak auto close.

    Wtedy zadowoliłoby nawet malkontentów :) Żeby aplikacja była w pełni uniwersalna.

    Miałem kiedyś sytuację, że na długo męczonym AVR coś się popsuło wewnątrz flash i musiałem go wymienić. Gdyby nie veryfikacja wtedy pewnie walczyłbym z codem, który okzał sie być dobry. Ale wiadomo to sytuacja 1/1000000. Oby sie nie trafiła nikomu :)

    OdpowiedzUsuń
    Odpowiedzi
    1. Nie nie - to się nie zgadza ZUPEŁNIE z moją koncepcją. Mi nigdy się nie zdarza zapomnieć zrobić weryfikacji, gdy wgrywam ostateczną wersję wsadu i dlatego w tym wypadku warto wtedy ten JEDEN RAZ zrobić to normalnie opcją z Eclipsa z GDB - co za problem ? ;)

      Tym bardziej, że dodatkowy ptak w wersji programu wywoływanej z Eclipsa na potrzeby weryfikacji to z punktu widzenia UI programu - jest zupełnym nieporozumieniem. A przecież można też wgrać taki wsad w wersji ostatecznej wprost z wersji STANDALONE tego programu w czym kłopot ?

      Sam widzisz, że GŁÓWNA IDEA i że tak powiem "fajność" tego rozwiązania polega na tym, że MEGA SZYBKO wgrywa wsady z poziomu Eclipsa ... a jak rozbuduję to zaraz o setki ptaków to za chwilę będzie to to samo co przez GDB - i jaki jest sens ?

      Usuń