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

[MPLAB X beta] Czy ktoś już testował?

don diego 15 Kwi 2011 13:16 3440 24
  • CControls
  • Pomocny post
    #2 18 Kwi 2011 09:08
    Nagus
    Poziom 25  

    Fajnie, że zrobili wreszcie IDE pod Linuksa (czego nie da się powiedzieć o Atmelu). Szkoda tylko, że nie zauważyli (ale nie tylko oni), że od niemal 10 lat są procesory 64-bitowe... Ale to może poprawią wkrótce (update: wersja finalna prawdopodobnie będzie miała również edycję 64bit). Z drugiej strony, i tak mam zapaprany system po instalacji CodeRed-a od LPCXpresso, więc MPLABX na Mandrivie 64bit odpalił z kopnięcia.
    Wygląda obiecująco. Do tej pory niewiele bawiłem się PIC-ami, ale w związku z powyższym może czas to zmienić...

    0
  • CControls
  • Pomocny post
    #3 18 Kwi 2011 14:31
    xarusx
    Poziom 13  

    Testowałem pod Windows i powiem, że jest gigantyczny postęp w stosunku do MPLAB. Auto uzupełnianie, pomoc kontekstowa do funkcji i makr, widok kodu po preprocesingu. Jednym słowem edytor jest super.
    Ale u mnie są problemy z debugowaniem zarówno z PICKIT2 i ICD2 (bo takie mam) wsparcie dla tych dwóch programatorów/debugerów jest dopiero "Beta".

    0
  • #4 18 Kwi 2011 14:40
    don diego
    Poziom 32  

    No właśnie wyczytałem, że ICD2, którego używam, jest wspierany na razie w ograniczonym zakresie. Nie obsługuje na przykład PIC12, z którymi aktualnie pracuję. Odkładam więc testowanie do czasu przesiadki na projekt z PIC18 :) Ale nadal chętnie poczytam o doświadczeniach innych użytkowników z tym środowiskiem.

    0
  • Pomocny post
    #5 07 Cze 2011 18:49
    dexterslab
    Poziom 12  

    Witam wszystkich.
    Nowego środowiska używam od blisko pół roku, udało mi się nawet przekonać do niego kolegę w pracy (miał pewne obawy związane z literką Beta w nazwie).
    Powiem krótko - gdybym przyszło mi pracować w starym MPLAB 8 to nie wyobrażam sobie postępu w projekcie takiego jak jest, a jest oszałamiające. Dziw że wcześniej nie słyszałem o tym darmowym środowisku (zachwycałem się Code::Blocks) ale muszę przyznać że fachmani z Microchipa dokonali świetnego wyboru. Ja skupiam się na kodzie wyższego poziomu, więc udogodnienia wnoszone przez ten edytor (przede wszystkim niesamowicie dopracowana analiza składni kodu, nie ma możliwości żeby nie zlokalizował miejsca deklaracji zmiennej/funkcji/typu, włącznie z niemal nieczytelnymi systemowymi plikami nagłówkowymi. Do tego dynamiczne wyszukiwanie i podświetlanie typów zdeklarowanych w kodzie, wsparcie dla Doxygena, rejestrowanie makr, dodatki (póki co można instalować tylko ręcznie, wskazując na dysku (nie wiem czemu, w normalnej wersji instaluje się cokolwiek skądkolwiek)), wyszukiwacz TODO's, niemal bezbłędnie :!: działąjąca refaktoryzacja (nie podoba ci się nazwa funkcji? Ctrl+R i w całym projekcie nazwa zostanie podmieniona).

    Może dość słodzenia. Są i wady. Pewnie związane z bądź-co-bądź młodym stadium środowiska, a może z tym że to adaptowany projekt opensourceowy przez który trzeba się przegryźć. Najbardziej irytujące jest niedopracowanie komunikacji z debuggerem. Loteria - czasem zmienną da się podglądnąć, innym razem nie. Czasem breakpoint działa bez oporów, czasem próba step-by-step po takim zatrzymaniu powoduje zwis środowiska na kilka minut. Nie działa lista call-stack (pokazuje bzdury). Ogólnie środowisko nie ma wielu opcji w które było wyposażone w starej wersji (konfiguracja, identyfikowanie układu, odczyt i podgląd flash). Najbardziej irytujący jest ten brak dostępu do zmiennych lokalnych funkcji. Ale to też loteria. W jednej funkcji widać wszystkie zmienne i ich wartości, a są funkcje niedebugowalne.
    Mimo tych drobnych niedogodności jakoś przemy do przodu, kod dobrze zaprojektowany i testowany na bieżąco bardzo rzadko wymaga użycia debuggera :D
    No i jeszcze jedno - jak nie masz dobrego procka w komputerze, 2 rdzenie to minimum, to praca w MPLAB-X może być niemożliwa. To cudo jest napisane w Javie, więc z definicji wymaga więcej mocy niż klasyczna aplikacja, a dodatkowo działające w tle procesy analizujące składnię potrafią przyciąć pracę (otwarcie pliku dużego projektu może zająć więcej niż kilka sekund). Na współczesnym sprzęcie działa płynnie i stabilnie, więc uwaga raczej skierowana do posiadaczy blaszaków 5lat+ ;) single core

    0
  • Pomocny post
    #6 08 Cze 2011 11:41
    nsvinc
    Poziom 35  

    MPLAB X nie działa prawidłowo ani z ICD3 ani z PK3. Programator można oczywiście wybrać, ale nie ma komunikacji z nim. PK3 nie trzeba przełączać, bo jest HIDem, a mimo to nie działa. ICD3 to samo, niezależnie od tego czy jest 'przełączony' czy nie.
    Ile ja czasu zmarnowałem na restarty kompa zeby zmusić to te debuggery do pracy pod MPLAB X - bezskutecznie.
    Pewne jest, że dopóki nie wydadzą release, ja tego badziewia nie dotykam, bo juz pozarło mi nerwy i sporo cennego czasu, zupełnie po nic...

    0
  • #7 08 Cze 2011 11:49
    94075
    Użytkownik usunął konto  
  • #8 08 Cze 2011 12:01
    nsvinc
    Poziom 35  

    Heh...znając Microchipa, to na release poczekamy jeszcze rok, (tak samo jak pierwsza beta wyszla z ponad półrocznym opóźnieniem), a jak już będzie release, to też nie będzie się nadawał do produkcji, bo ta firma niestety lubi pasjami wypuszczać na rynek niedopracowane narzędzia i procesory. Przykład?
    - dsPIC33FJ256GP710 - errata dłuższa niż datasheet, DMA zle dziala, CAN zle dziala...
    - dsPIC33FJ64GP804 - lepiej, nadal nie dziala prawidlowo CAN i DMA
    - PK3 ma/miał lipny firmware, i na niektórych kompach po prostu nie działa (jest po enumeracji, lecz środowisko wisi w miejscu 'connecting')
    - ICD3 jest mordowalny sprzętowo byle czym - uruchamiając przetwornice niskiego napięcia dwa takie debuggery umarły. powód nie znany. Tu PK3 okazuje się nie do zniszczenia, przeżył najcięzsze katowanie...
    - ICD3 nie potrafi się prawidłowo przeflashować, miedzy 'krokami' update'u trzeba przecyklować zasilanie debuggera i ponownie odpalić środowisko...

    Dla porównania- Segger J-link: kosztuje podobnie co ICD3, ale nie da się go zamordować. Jest znacznie szybszy, w zestawie mamy softy do zarządzania interfejsem i flashowania procków, odporny na przepięcia, zwarcia, zakłócenia EMI, odwrotne wsadzenie wtyczki SW/JTAG, ponowną enumerację (reenumeracja USB wywala oczywiście ICD3 i trzeba restartować środowisko lub ponownie wybrać debugger), no i chodzi on zawsze tak samo, niezależnie na jakim PC z jakim systemem (byle >=XP).
    Kasa za jakość?...

    No i mając takie doświadczenie, ja się cieszę, że zwykly MPLAB 8.6 po prostu działa, więc zgodnie z zasadą: działa to nie ruszaj...

    0
  • #9 08 Cze 2011 12:09
    94075
    Użytkownik usunął konto  
  • #10 08 Cze 2011 12:15
    nsvinc
    Poziom 35  

    Jakie miałbyś powody? O zonkach w LPC11xx już było, imho mniej niesmacznie niż te z dsPICów.
    Ja robiąc głównie na ARMach nie mam co narzekać - mam stabilnie działający toolchain (RVMDK) i stabilnie działający debugger. Biorę praktycznie dowolnego ARMa, i nie mam żadnych problemów z narzędziami, jeśli już to z samym prockiem i często z mojej własnej winy. A pracując z dsPICem nigdy nie wiem czy za 5 minut nie będę robił restartu kompa, bo zwieszony MPLAB 8.6 potrafi zamordować wszystkie 4 rdzenie w pc :(
    A co do TI, coż, z prockami od nich styczności nie miałem (jeszcze), ale elementy drobne chodzą wzorowo (przetwornice, logika itp)...

    0
  • #11 08 Cze 2011 12:49
    michalko12
    Specjalista - Mikrokontrolery

    PICSTART PLUSa obsługuje te środowisko?

    0
  • #12 08 Cze 2011 13:11
    nsvinc
    Poziom 35  

    A po co ci coś takiego jak PICSTART PLUS? Ktoś z tego korzysta?...

    0
  • #13 08 Cze 2011 13:23
    michalko12
    Specjalista - Mikrokontrolery

    Mam to już parę ładnych lat i czasami korzystam. Na moje potrzeby wystarczający, chociaż ostatnio wpadły mi w ręce PIC12F1822 i juz do nich wsparcia w PSP nie ma.

    0
  • #14 08 Cze 2011 13:29
    nsvinc
    Poziom 35  

    A, ciekawostka. ICD3 nie przechodzi testów weryfikacyjnych USB. :] :] :]
    Miałem kiedys taki, ten pierwszy co się zjarał...

    0
  • #15 08 Cze 2011 15:22
    dexterslab
    Poziom 12  

    Chmm, ja używam RealICE i z tym programatorem nie mam problemu.

    0
  • #16 08 Cze 2011 16:02
    nsvinc
    Poziom 35  

    No tak. I kosztuje majątek, więc Microchip musi jakąs jakość zaoferować....

    0
  • #17 08 Cze 2011 20:28
    dexterslab
    Poziom 12  

    No tak, Microchip swoją drogą. Ale w moim przypadku to pracodawca ma obowiązek zapewnić narzędzia z którymi da się pracować ;)

    A tak na marginesie - PICe są popieprzone. Mam tu na myśli 16-bitowce i ich organizację pamięci (24bity zapisywane w 16bitowym adresowalnym słowie, ale te starsze 8 poza przestrzenią adresową), którą jak pierwszy raz ogarnąłem to nie wiedziałem czy śmiać się czy walić głową w mur. Póki soft mały i stałych mało, to wszystko pięknie. Ale w pewnym momencie kompilator oświadcza że nie może zaalokować stałej (mimo że flash'a zostało 40kB), i zaczyna się zabawa z przestrzeniami psv i auto-psv.

    Nie ma to jak ARM. Jakikolwiek. Jednolita przestrzeń adresowa, nieważne kod, ram, czy stos. Czy SFR. Żadnych specjalnych metod dostępu, żadnych durnych utrudnień z odczytem stałych "spoza okienka auto-psv" i kombinowania wskaźnikami. Ilość pamięci niemal bez ograniczeń. Dobry niezawodny dopracowany darmowy kompilator, setki debuggerów do wyboru. Środowisko - do wyboru, byle działało z wybranym debuggerem.
    No ale ktoś zdecydował że PICe. Bo ich producent dba żeby zawsze były dostępne (a cóż jest ważniejszego dla producenta urządzeń od dostępności podzespołów).

    0
  • #19 27 Cze 2011 12:05
    smokeing
    Poziom 12  

    W tym środowisku nie podoba mi się tylko to, że zrobili to na bazie NetBeansa nie pisząc o tym nigdzie.
    Mam też problem z wykrywaniem PicKit3 przez to środowisko. Tylko raz mi się udało zaprogramować i więcej nie chciał go wykryć. Spróbuję wieczorem pod linuksem.

    0
  • #20 27 Cze 2011 12:19
    xarusx
    Poziom 13  

    smokeing napisał:
    W tym środowisku nie podoba mi się tylko to, że zrobili to na bazie NetBeansa nie pisząc o tym nigdzie.

    Ależ napisali o tym otwarcie: Link
    Cytat:
    Based on the NetBeans Platform

    0
  • #21 27 Cze 2011 12:25
    smokeing
    Poziom 12  

    No cóż, fakt. Nie mogłem znaleźć tego w About.

    0
  • #22 27 Cze 2011 12:44
    xarusx
    Poziom 13  

    smokeing napisał:
    No cóż, fakt. Nie mogłem znaleźć tego w About.

    No tak ale nie zapominaj, że jest to produkt firmy Microchip.
    Co prawda kupiony od Sun/ORACLE i pewnie opatrzony kontraktem z klauzulą o znakach firmowych więc nazwy NetBeans możesz wcale nie znaleźć.

    0
  • #25 19 Cze 2012 11:19
    63404
    Użytkownik usunął konto