Zalety PIC vs AVR

Pytania dotyczące problemów ze zrozumieniem kart katalogowych, not aplikacyjnych dla mkrokontrolerów PIC firmy Microchip Technology, prezentacja mikrokontrolerów PIC i rozwiązania układowe.
Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Zalety PIC vs AVR

Postautor: Marcin » wtorek 26 gru 2017, 13:16

Witam

AVR poznałem, STM32 też bawiłem się, teraz naszła mnie ochota na poznanie PIC. I tak czytając staram się znaleźć zalety PIC w stosunku do znanych mi AVR.

I tak szukając:

- Brak w pełni w pełni darmowego środowiska programistycznego do PICów, to microchip oferuje nie ma pełnej funkcjonalności. A do AVR mamy od producenta, defacto teraz już michrochipa Atmel Studio. Po za tym są inne alternatywne rozwiązania oparte o eclipse.
- PICe każdą instrukcję wykonują w 4 taktach zegarowych, podczas gdy AVR potrzebują 1 lub 2 taktów. W sumie PIC może tą niedogodność nadrabiać szybszym zegarem.
- Brak sprzętowego mnożenia i dzielenia dla mniejszych PICów.
- Cenowo podobnie do AVR, a nawet więcej.

W zasadzie same minusy. A jakie są zalety mikrokontrolerów PIC ?

Awatar użytkownika
Antystatyczny
Geek
Geek
Posty: 1132
Rejestracja: czwartek 03 wrz 2015, 22:02

Re: Zalety PIC vs AVR

Postautor: Antystatyczny » wtorek 26 gru 2017, 13:32

- łatwość oprogramowania (nawet w asm). Małe PIC'e mają 36 rozkazów, większe nieco ponad 70.
- obecność CLC oraz innych peryferiów niezależnych od rdzenia.
- buforowany dostęp do (E)CCP, co usuwa ryzyko pojawiania się zakłóceń.
- uart z autobaudem (bardzo pomocne przy budowie urządzenia pracującego w LIN)
- znakomicie sprawujący się ADC, który daje większe możliwości konfiguracji (np. regulacja czasu akwizycji).
- rozbudowany i elastyczny moduł zarządzania i dystrybucją sygnału zegarowego.
- znacznie lżejsze oprogramowanie do deweloperki (w porównaniu do Atmel Studio).

To tak na szybko... A co do zużywania 4 cykli zegarowych na 1 cykl maszynowy: Nie dotyczy to wszystkich układów PIC
"The true sign of intelligence is not knowledge but imagination" Albert Einstein.

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » wtorek 26 gru 2017, 16:41

Configurable logic cell czyli w skrócie CLC, tak na szybko przejrzałem co to takiego, wydaje się być ciekawą dodatkową opcją wzbogacającego logikę uC, z tego co widzę pracuje niezależnie od ALU. Szkoda że tak uboga jest polskojęzyczna literatura w tym temacie.

Awatar użytkownika
ZbeeGin
User
User
Posty: 423
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: Śląsko-Zagłębiowska Metropolia
Kontaktowanie:

Re: Zalety PIC vs AVR

Postautor: ZbeeGin » wtorek 26 gru 2017, 17:54

Nie jest to wada samego PIC-a ale być może podejścia firmy Microchip. Programator PICKIT (Posiadam PICKIT3) musi zostać zaktualizowany przed zmianą obiektu programowania. Na daną chwilę programuje jedną rodzinę procesora i przejście na inną wymaga wgrania nowego kawałka firmware. Programatory przeznaczone dla AVR i firmowane przez ATMEL-a z marszu obsługują zawsze pełen zestaw układów. Jedyne aktualizacje są robione gdy wychodzi nowe środowisko i dodano nowe jednostki do listy obsługiwanych układów.
PICKIT za to ma jedną z ciekawych funkcji jaką jest Programmer To-Go, która pozwala na wgranie do jego pamięci wewnętrznej wsadu docelowego mikrokontrolera i późniejsze jego ładowanie do innych egzemplarzy wybranego procesora poprzez przycisk na programatorze, już bez udziału komputera.

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » wtorek 26 gru 2017, 18:47

ZbeeGin pisze:Nie jest to wada samego PIC-a ale być może podejścia firmy Microchip. Programator PICKIT (Posiadam PICKIT3) musi zostać zaktualizowany przed zmianą obiektu programowania. Na daną chwilę programuje jedną rodzinę procesora i przejście na inną wymaga wgrania nowego kawałka firmware.

To znaczy że bawiąc się serią mikrokontroleów pic16fxxx nie mogę przeskoczyć na pic18fxxx bez zmiany firmware w programatorze ?
To jakieś nieporozumienie ze strony microchipa.

Awatar użytkownika
Antystatyczny
Geek
Geek
Posty: 1132
Rejestracja: czwartek 03 wrz 2015, 22:02

Re: Zalety PIC vs AVR

Postautor: Antystatyczny » wtorek 26 gru 2017, 18:52

Marcin pisze:To znaczy że bawiąc się serią mikrokontroleów pic16fxxx nie mogę przeskoczyć na pic18fxxx bez zmiany firmware w programatorze ?


Oczywiście, że możesz. Podmiana systemu operacyjnego (tak to nazywa microchip) odbywa się w pełni automatycznie i nie widzę tu powodu, by kogoś tym straszyć.
"The true sign of intelligence is not knowledge but imagination" Albert Einstein.

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » wtorek 26 gru 2017, 19:00

A ok, rozumiem, z poprzedniej wypowiedzi zrozumiałem że muszę samodzielnie zmienić firmware w programatorze przed próbą programowania innej serii niż ostatnio.

Awatar użytkownika
Antystatyczny
Geek
Geek
Posty: 1132
Rejestracja: czwartek 03 wrz 2015, 22:02

Re: Zalety PIC vs AVR

Postautor: Antystatyczny » wtorek 26 gru 2017, 19:03

Nie, nie. Podłączasz PICKIT, uruchamiasz programowanie układu docelowego. Oprogramowanie w komputerze łączy się z PICKIT'em i jeśli stwierdzi, że wgrany jest inny system, samodzielnie dokona jego podmiany na pasujący do aktualnie programowanego układu.
"The true sign of intelligence is not knowledge but imagination" Albert Einstein.

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » wtorek 26 gru 2017, 19:17

Hmm, chyba trzeba sobie zamówić ze trzy rodzaje PICów na ali i spróbować pobawić się nimi. Bo bez tego nie przekonam się o ich zaletach.
Na ali również jest PICKIT3 do dobrej cenie. Ciekawe czy zadziała, po ostatnim zakupie jtaga na ali mam mieszane uczucia, niby środowisko programistyczne łączy się, wykrywa poprawnie, ale po kilku sekundach zgłasza że programator może być uszkodzony.

Awatar użytkownika
Antystatyczny
Geek
Geek
Posty: 1132
Rejestracja: czwartek 03 wrz 2015, 22:02

Re: Zalety PIC vs AVR

Postautor: Antystatyczny » wtorek 26 gru 2017, 19:22

Ja kupiłem oryginalny PICKIT 3. W czasach, gdy go kupowałem, nie było jeszcze klonów, więc nawet nie miałem wyboru ;) Uważaj, by Ci nikt nie wcisnął PICKIT2... One obsługują jedynie stare układy.
"The true sign of intelligence is not knowledge but imagination" Albert Einstein.

Awatar użytkownika
ZbeeGin
User
User
Posty: 423
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: Śląsko-Zagłębiowska Metropolia
Kontaktowanie:

Re: Zalety PIC vs AVR

Postautor: ZbeeGin » wtorek 26 gru 2017, 20:54

Kto wie czy w tych klonach rzeczywiście siedzi PICKIT3. Widziałem na Ali zarówno PICKIT-a 2 w czerwonej obudowie jak i PICKIT-a 3. Ponadto na dobrze zrobionych zdjęciach płytki wyglądają podejrzanie podobnie.
Jeśli ma to być tylko zabawa to można ryzykować. Jeśli jednak ma to być "narzędzie", które ewentualnie będzie używane w większym stopniu to inwestycja w oryginał (ok. 250zł) może być bardziej opłacalna i pewniejsza.

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » środa 27 gru 2017, 09:28

Z tym CLC fajna sprawa, ale niewiele procków microchipa taką funkcjonalność posiada.

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » czwartek 02 sty 2020, 18:10

Niewątpliwą zaletą AVR jest darmowe kompletne środowisko programistyczne Atmel Studio (przynajmniej na obecną chwilę jeszcze wspierane przez microchipa)
Z PICami tak kolorowo nie ma, darmowy kompilator nie zapewnia optymalizacji, wersja pro jest bardzo kosztowna.

Z darmowych rozwiązań dla PICów współpracującym z MPLAB znalazłem https://sites.google.com/site/rmaalmeid ... -toolchain

Testował ktoś to rozwiązanie ?

Awatar użytkownika
ZbeeGin
User
User
Posty: 423
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: Śląsko-Zagłębiowska Metropolia
Kontaktowanie:

Re: Zalety PIC vs AVR

Postautor: ZbeeGin » czwartek 02 sty 2020, 18:40

To tylko "obudowany" SDCC, który obsługuję okrojoną listę procesorów serii PIC o słowie 14bit/16bit.
http://sdcc.sourceforge.net/doc/sdccman.pdf (strona 69)

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » czwartek 02 sty 2020, 18:57

To jakaś inna darmowa alternatywa dla PICów przynajmniej z serii PIC16F oraz PIC18F ?

Awatar użytkownika
piotrek
User
User
Posty: 119
Rejestracja: niedziela 05 lis 2017, 02:46

Re: Zalety PIC vs AVR

Postautor: piotrek » czwartek 02 sty 2020, 19:36

Z tą optymalizacją w XC8 nie jest tak źle -> https://www.microchip.com/forums/m1091018.aspx
Można mieć cichą nadzieję, że w końcu udostępnią za free.
Sam mam na koncie kilka projektów i specjalnie brak optymalizacji mi nie przeszkadzał. Używałem nawet XC8 do programowania AVR.
Zaletą tego kompilatora jest to, że są regularne update'y oraz dobra, zwięzła dokumentacja.

A jeśli chodzi o IDE to lepszą opcją od AS jest MPlabX.

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » czwartek 02 sty 2020, 20:00

piotrek pisze:Z tą optymalizacją w XC8 nie jest tak źle -> https://www.microchip.com/forums/m1091018.aspx
Można mieć cichą nadzieję, że w końcu udostępnią za free.
Sam mam na koncie kilka projektów i specjalnie brak optymalizacji mi nie przeszkadzał. Używałem nawet XC8 do programowania AVR.

W zasadzie do moich małych projektów optymalizacja nie jest wymagana, to bardziej kwestia mojej podświadomości. Chyba że zrobię coś co będzie w wybranym procku sięgało granic rozmiaru flash. Ale ja raczej o PICach myślę przy projektach typu włacz / wyłacz z opóźnieniem czasowym. Do "grubszych" zastosowań to sięgam po STMy.

piotrek pisze:A jeśli chodzi o IDE to lepszą opcją od AS jest MPlabX.

Do starszych atmeg MPlabX odpada, chyba że najnowsze wydania potrafią obsłużyć stare atmegi i programator ISP.

Awatar użytkownika
piotrek
User
User
Posty: 119
Rejestracja: niedziela 05 lis 2017, 02:46

Re: Zalety PIC vs AVR

Postautor: piotrek » czwartek 02 sty 2020, 22:31

Marcin pisze:
piotrek pisze:chyba że najnowsze wydania potrafią obsłużyć stare atmegi i programator ISP.


Niestety, z ISP nie pójdzie. Już nawet AS nie wspiera USB ISP (a przynajmniej tego co mam AVT-451).
Aby zrobić to "prawilnie" trzeba mieć PICkita IV albo ICE, który kosztuje niemało. Jest jednak co najmniej jedno obejście tego problemu.
Ostatnio robiłem coś na Tiny13, soft pisałem na MplabX, używałem kompilatora XC8 a do programowania programu avrdude.
Kompilacja z poziomu IDE a ładowanie wsadu i konfiguracja fuses z konsoli, nawet AVT-451 daje radę.

Poza tym, można napotkać pogłoski o stosowaniu PICKIT2 z AVR, np tutaj -> http://dangerousprototypes.com/blog/201 ... h-pickit2/

Awatar użytkownika
Marcin
User
User
Posty: 245
Rejestracja: środa 09 wrz 2015, 19:30
Lokalizacja: Królewskie miasto Sandomierz

Re: Zalety PIC vs AVR

Postautor: Marcin » czwartek 02 sty 2020, 23:38

A ICE jest w pełni obsługiwany przez MplabX ?

Awatar użytkownika
piotrek
User
User
Posty: 119
Rejestracja: niedziela 05 lis 2017, 02:46

Re: Zalety PIC vs AVR

Postautor: piotrek » piątek 03 sty 2020, 00:23

Czy w pełni to nie wiem, nie posiadam i nie mam jak sprawdzić. W wersji 5.25 Mplabx Atmel-ICE widnieje na liście narzedzi do programowania więc powinien go wspierać, zarówno do programowania jak i debugowania.

Awatar użytkownika
wojtek
Uber Geek
Uber Geek
Posty: 2198
Rejestracja: piątek 04 wrz 2015, 09:03

Re: Zalety PIC vs AVR

Postautor: wojtek » piątek 03 sty 2020, 08:03

ZbeeGin pisze:Kto wie czy w tych klonach rzeczywiście siedzi PICKIT3. Widziałem na Ali zarówno PICKIT-a 2 w czerwonej obudowie jak i PICKIT-a 3. Ponadto na dobrze zrobionych zdjęciach płytki wyglądają podejrzanie podobnie.
Jeśli ma to być tylko zabawa to można ryzykować. Jeśli jednak ma to być "narzędzie", które ewentualnie będzie używane w większym stopniu to inwestycja w oryginał (ok. 250zł) może być bardziej opłacalna i pewniejsza.

Jakby co, to nadal w szufladach gdzieś mi chyba zalega oryginalny PICKIT3 viewtopic.php?f=26&t=2103&p=12946&hilit=picki3#p13046 - różnicy na pierwszy rzut oka nie widać ale napis Microchip i logo odróżniają klony od oryginału

Wojtek


Wróć do „PIC - problemy układowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 0 gości