logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Zestaw startowy dla dsPIC

mi_ma 20 Kwi 2008 20:26 5090 23
  • Zestaw startowy dla dsPIC

    Dla wszystkich osób, które myślą o przerzuceniu się na mikroprocesory DSP dobrym rozwiązaniem na początek są mikrokontrolery dsPIC. Mają one wbudowany engine DSP pozwalający szybko wykonywać operacje mnożenia i dzielenia w szyku. Na mikrokotnrolerze dsPIC30F2012 można rozpocząć naukę z aplikacjami DSP zanim zacznie się pracę z bardziej rozbudowanymi programami.

    Poniższy projekt pozwala na zbudowanie prostej płytki startowej. Zawiera ona tylko kilka elementów takich jak LM7805 i MAX232 do inteface'u RS232. Mikrokontrolery dsPIC nie są zbyt popularne, ale możliwość tworzenia na nich aplikacji DSP może to zmieni.

    Zestaw startowy dla dsPIC
    Zestaw startowy dla dsPICZestaw startowy dla dsPIC

    Źródło http://www.uchobby.com/index.php/2008/03/16/dspic-breadboard/

    Fajne? Ranking DIY
    O autorze
    mi_ma
    Tłumacz Redaktor
    Offline 
    Specjalizuje się w: elektronika wojskowa
    mi_ma napisał 831 postów o ocenie 809. Mieszka w mieście Wrocław. Jest z nami od 2006 roku.
  • #2 5059582
    Paprykarz
    Poziom 12  
    A jak z asemblerem/kompilatorem oraz programowaniem ?

    Parę osób polecało mi zabawę z PIC, ale zawsze trzymałem się Atmela (najpierw '51, teraz trochę AVR). Ostatnio porzuciłem dla nowej zabawki - FPGA :)

    Rzuciłem okiem na stronę producenta: ADC 200ksps - to już jakieś proste efekty audio można robić, chociaż z 1k RAM to się nie poszaleje.
  • #3 5059783
    sunok
    Poziom 14  
    mi_ma napisał:
    Mają one wbudowany engine DSP pozwalający szybko wykonywać operacje mnożenia i dzielenia w szyku.


    No może trochę przesadziłeś.... mnożenie to jest szybkie (1 cykl) ale dzielenie zajmuje mu aż 18 cykli...

    Co do pamięci - są modele, które mają więcej RAM-u 8kB 16kB 32kB i więcej... Ważne jest że dostępne jest darmowe środowisko programistyczne MPLAB oraz programowania/debugowania go poprzez ICD2.
  • #4 5064264
    Freddie Chopin
    Specjalista - Mikrokontrolery
    sunok napisał:
    mnożenie to jest szybkie (1 cykl) ale dzielenie zajmuje mu aż 18 cykli...

    biorac pod uwage to, ze ARMowi pracujacemu 3x szybciej zajmuje to 110 to nie wiem, czy to takie straszne.

    0x41 0x56 0x45!!
  • #5 5066164
    sunok
    Poziom 14  
    Freddie Chopin napisał:
    biorac pod uwage to, ze ARMowi pracujacemu 3x szybciej zajmuje to 110 to nie wiem, czy to takie straszne.
    0x41 0x56 0x45!!


    ARM ma niewiele wspólnego z DSP... więc co tu się dziwić. Jak już mowa o DSP to taki SHARC ADSP-21262 wykonuje dzielenie/pierwiastkowanie w 1 cyklu... i to na zmiennym przecinku. :D
  • #7 5067143
    Paprykarz
    Poziom 12  
    Cytat:
    oraz programowania/debugowania go poprzez ICD2.

    Rzuciłem okiem na forum, trochę rozbudowane te programatory.

    Jest coś bardziej "odchudzonego" , np tylko do programowania w/poza układem ?
  • #8 5067295
    Freddie Chopin
    Specjalista - Mikrokontrolery
    tomeeh napisał:
    Panowie, dlaczego dyskutujemy o dzieleniu? Przecież w algorytmach filtrów itp. najczęściej wykorzystuje się operację mnożenia i dodawania.

    bo tak zaawansowane procesory maja zawsze jednocyklowe dodawanie i mnozenie, wiec o czym innym dyskutowac jak nie o dzieleniu <; pozatym dzielenie jest pr0 <:

    Paprykarz napisał:

    Jest coś bardziej "odchudzonego" , np tylko do programowania w/poza układem ?

    siur, w dziale DIY sa chyba ze dwa tematy o takowych programatorach. niemniej jednak dsPICe sa na tyle malo popularne, ze za duzo o nie ma programatorow, ktore by je obslugiwaly. jakbys szukal, to jak programator obsluguje PIC24 to obsluguje i dsPIC33 na 99% poszukaj w necie info o programatorze 'brenner' (czy jakos tak)

    0x41 0x56 0x45!!
  • #9 5627233
    jacynka84
    Poziom 26  
    Też mam pytanie ważne, czy ten cały pin MCLR TRZEBA podłączyć do 9-13V aby włączyć go w tryb programowania hexa "do środka" czy wystarczy zwyczajnie 5V ? Różniste wersje widziałem i w końcu nie mam pojęcia jak to jest z tym.
    Ponadto na tej stronie i na początku tematu jest ten schemat , czy to jest takie coś jak ISP w AVR ? Że można tę wtyczkę podłączyć do układu docelowego i zaprogramować uK ?? Czy to może być programowanie bezpośrednio z mikroBasic dla dsPIC czy raczej hex'a ładujemy za pomocą np winpic??
    Jest tyle tych rzeczy (i to różnych) w necie że nie można po prostu wywnioskować jednego normalnego wniosku...
    Bardzo Proszę o wyprostowanie tego wszystkiego.
    W avr jest prosto - 5 przewodów przez oporniki do avr + zasilanie i już widzi klocek bezpośrednio pod np. Bascom - teraz mam zamiar się rzucić na dsPIC + mikroBasic (lub ew Pascal), ale nie widzi mi się że wydam kilkadziesiąt złotych na klocek i będzie lipa...
    Więc poproszę coś sprawdzonego co działa na COM - i pakiet mikroBasic lub winpic.
    Pozdrawiam i proszę o rozjaśnienie - ten co mi to ładnie wytłumaczy dostanie 50pkt :))
  • #10 5627754
    Freddie Chopin
    Specjalista - Mikrokontrolery
    wszystkie programatory ktore sa na COMa lub LPT zwykle nie obsluguja dsPICow.

    IMHO najciekawsza obecnie opcja jest ICD2 (klon), albo PICKIT2 (nowka za ok 150zl w TME) - obydwa na USB.

    wszystkie PICe mozna programowac w ukladzie - podlaczasz reset, zaslianie, mase, linie danych i linie zegarowa i tyle.

    5V procki wymagaja do programowania obecnosci napiecia 13V na liniii resetu (czyli m.in. dsPIC30). te zasilane z 3.3V (PIC24 i dsPIC33) - juz takiego wymogu nie maja.

    tak BTW to microBASIC - 150$, microPASCAL - 250$. C od microchipa - 0$ <: nie wiem po co w ogole sobie glowe zawracac takimi rzeczami, ktore powinny umrzec juz 10 lat temu.

    4\/3!!
  • #11 5627997
    jacynka84
    Poziom 26  
    Dzięki za odpowiedź.
    A czy nie da się podłączyć w dsPIC30 pinów PGC i PGD oraz MCLR jak np w PIC16? Gdzieś w necie widziałem coś takiego - klocek będzie widoczny pod np. WinPIC lub mikroBasic ??

    I PLL z datasheet - jaki kwarc podłączyć i czy trzeba coś w sofcie/gdziekolwiek "ustawiać" aby uzyskać maximum MIPS ? (w datasheet wynika że do 30MIPS - tylko nie wiem na jakim kwarcu właśnie)

    I jeszcze takie pytanie - gdzieś przeczytałem że cały port odpowiedzialny za ADC jest nieczynny w ogóle gdy używamy choć jednej końcówki do pomiarów z ADC - ile w tym prawdy, jak to jest?
  • #12 5628034
    Freddie Chopin
    Specjalista - Mikrokontrolery
    nie wiem, nigdy nie zawracalem sobie glowy jakimis winpicami i mikroBASICami, wiec ... nie wiem. lepiej jednak zapomniec o jakimkolwiek powaznym projekcie bez debuggowania, a to mozliwe jest TYLKO poprzez ICD2 i pickit2 (nie licze kosmicznych urzadzen za czterocyfrowe sumy). a tak BTW to zauwaz jeszcze, ze dsPIC33 i PIC24 nie bedzie wspolpracowal z takimi programatorami, bo procki zasilane sa z nizszego napiecia i wymagaja innego zachowania na linii MCLR. o ile linie danych i zegara zwykle wytrzymuja te 5V, to juz reset nie przezyje 13V.

    do PLLa mozna dolaczyc dowolny kwarc w zasadzie. skoro nie pisze w datasheecie nic o specyficznych wymaganiach co do kwarcu, to znaczy, ze moze byc dowolny. aby uzyskac 30MIPSow musisz przemnozyc i podzielic czestotliwosc kwarcu przy uzyciu mozliwych ustawien do wartosci 120MHz. dla PIC24 i dsPIC33 wystarczy 80MHz dla wydajnosci 40MIPS.

    bzdura - domyslnie jednak po resecie wszystkie przetworniki sa wlaczone, wiec w istocie caly port jest 'tymczasowo' nieczynny. w kodzie mozna sobie powlaczac wszystko jak komu potrzeba.

    4\/3!!
  • #13 5628716
    jacynka84
    Poziom 26  
    No więc piszę właśnie że chodzi mi o dsPIC30 - 5V + "odpowiednie" napięcie na MCLR - dla dspic30 chyba 8-9V.

    Dzięki za odpowiedzi :) Bardzo mi to rozjaśniło sprawę, jednak ciągle właściwie nie wiem jak z tym kwarcem - no załóżmy że podłącze 27Mhz do dsPIC30 - ile wyjdzie MIPS bez żadnych ustawień w sofcie?
    I dlaczego akurat 120Mhz ?
  • #14 5628780
    Freddie Chopin
    Specjalista - Mikrokontrolery
    jakbys przeczytal datasheeta to bys wiedzial..

    dsPIC30 ma 1 cykl maszynowy na 4 cykle zegarowe. 30MIPS = 4*30MHz.

    dsPIC33 i PIC24 ma 1 cykl maszynowy na 2 cykle zegarowe. 40MIPS = 2*40MHz.

    dla kwarcu 27MHz uzyskasz wiec 27/4 MIPSa. sciagnij sobie manuala - rozdzial o oscylatorze i przeczytaj, to ci sie sprawa PLLa i MIPSow rozjasni.

    tak w ogole to dsPIC33 sa lepsze od dsPIC30 <:

    no i moze to cie zainteresuje ICD2 klon w SMD

    4\/3!!
  • #15 5629916
    jacynka84
    Poziom 26  
    No to może się bardziej zainteresuję tym dsPIC33 - no ale czy jak zasilę MAX232 tym samym napięciem co dsPIC33 to będzie to można podłączyć do COM'a (chodzi mi o prosty programator) ? nie zjara się nic w kompie albo w PIC'u?
  • #16 5629952
    Freddie Chopin
    Specjalista - Mikrokontrolery
    niektore max232 dzialaja tez na 3.3V, ale trzeba selekcjonowac. mozna tez po prostu zasilic go z 5V upewniajac sie, ze dany port RXD to wytrzyma, ale rowniez trzeba selekcjonowac, bo nie wiadomo czy max zlapie 3.3V jako 1. prosciej jednak zastosowac (drozszy niestety) max3232, ktory przeznaczony jest do pracy z napieciem 3.3V.

    4\/3!!
  • #17 5630137
    jacynka84
    Poziom 26  
    No ok.
    W takim razie spróbuję dsPIC30 zamienić na dsPIC33 (czy jak w tme.pl mają na stanie wg. strony 5szt to go wyślą czy nie mają go w ogóle?)
    tak jak na schemacie z pierwszego postu, tyle że zamienię zasilanie dspic'a na 3.3V, max232 i MCLR podam 5V - wg. ciebie freddie zadziała takie coś pod winpic ??
    Czy lepiej zamienić może max232 na max3232, i zasilić go również 3.3V ?
  • #19 5630157
    jacynka84
    Poziom 26  
    No to co go obsługuje w takim schemacie jak w pierwszym schemacie??
  • #21 5630380
    jacynka84
    Poziom 26  
    No właśnie widzę, jednak chyba spróbuję na początek ten dsPIC30 + schemat z początku tematu. Widzę że jest po prostu łatwiejszy do zaprogramowania, a MIPS'y to przecież nie najważniejsza rzecz, i obejdzie się bez sprzętu za 150zł, a sam raczej nie chcę budować klona ICD bo i tak wymaga również zaprogramowania jakiegoś klocka - masło maślane.
  • #22 5630423
    Freddie Chopin
    Specjalista - Mikrokontrolery
    as u wish - jesli uwazasz ze mozna zrobic powzny projekt na tak zaawansowanym procesorze bez mozliwosci debuggowania to good luck & have fun <: jak dla mnie to nierealne, ewentualnie mozliwe w czasie conajmniej 10x dluzszym.

    4\/3!!
  • #23 5630452
    jacynka84
    Poziom 26  
    Ale ja zupełnie rozumiem że debuger to ważna rzecz jednak na razie nie mam możliwości kupienia takiego czegoś - a budować samemu też się na razie boję - dzięki za cierpliwe odpowiedzi :)
  • #24 5781423
    grant2
    Poziom 11  
    Czy ktos z was moze wie czy jest gdzies dostepna plytka uruchomieniowa do dsPIC30F2010 na usb? albo w ostatecznosci czy ta co jest na poczatku tematu da sie przerobic latwo na usb? zamierzam kupic pckit albo icd2 i bede potrzebowal plytki na usb. Z gory dzieki za pomoc.
REKLAMA