Programátor dsPIC

A ještě dotaz, POTYO1 a 2 je co?
TMC je co?

TMC jsem se uklepl, promiň, mělo být TME.
tme.cz/
Potyo1 a Potyo2 jsou ICD2 klony.

Jaké jsou ty klony? Jsou stejně rychlé jako originál? Jedině u nic je tišták přímo pro Eagle, a v něm si dělám tišťáky i já, to bych je zvládl vyrobit doma, mám na to Aritmu. :smiley:
TME je v současné době nemá. :blush:

Když je klon nativně USB, tak je stejně rychlý jak originál.
Ale musím se opravit v případě toho PICKIT2. V prostředí MPLAB zatím dsPIC nedovede, ale se svým, specifickým programovacím softwarem dovede tyto PIC:
dsPIC30 Devices

dsPIC30F1010
dsPIC30F2010, 2011, 2012
dsPIC30F2020, 2023
dsPIC30F 3010, 3011, 3012
dsPIC30F3013, 3014
dsPIC30F4011, 4012, 4013
dsPIC30F5011, 5013, 5015, 5016
dsPIC30F6010A, 6011A, 6012A
dsPIC39F6013A, 6014A, 6015

dsPIC33 Devices

dsPIC33FJ12GP201, 12GP202
dsPIC33FJ64GP206, 64GP306, 64GP310
dsPIC33FJ64GP706, 64GP708, 64GP710
dsPIC33FJ128GP206, 128GP306, 128GP310
dsPIC33FJ128GP706, 128GP708, 128GP710
dsPIC33FJ256GP506, 256GP510, 256GP710

dsPIC33FJ12MC201, 12MC202
dsPIC33FJ64MC506, 64MC508, 64MC510
dsPIC33FJ64MC706, 64MC710
dsPIC33FJ128MC506, 128MC510
dsPIC33FJ128MC706, 128MC708, 128MC710
dsPIC33FJ256MC510, 256MC710

Takže to vyhrál PICKIT2.
:smiley:

U mě to vyhrál ICD2 USB

To si dělají v TME srandu?Přišel mi email po týdnu.
Tak to si to utčitě nekoupím

aktuální cena pro MICROCHIP MPLAB-ICD2 je:
množství: 1+ Cena: 5490.00 CZK | množství: 3+ Cena: 5060.00 CZK
Doprava 80,- CZK
Ceny bez DPH

S pozdravem,
Libor XXXXX
obchodní ředitel

Tak jsem ubastlil potyo1 a nevím si rady s jednou věcí a to, že při debugingu mi breakpoint přeskočí třeba i 5 cyklů dopředu, takže jsem pak v programu někde jinde, než jsem potřeboval. A občas mi to píše MPLAB ICD 2 is busy, ale nikde jsem nenašel, čím se dá korigovat rychlost komunikace, nebo jsem špatně hledal :open_mouth: :unamused:
Díky za rady

Je běžné, že breakpoint trochu uskočí. Ovšem to co popisuješ, souvisí nejspíš s problémem komunikace. Můžeš tam mít HW problém v místě budičů HC126, 126. Ale já jsem na totéž narazil dík kabelu k aplikaci. Ten pro použití krystalu 20MHz nesmí být delší než 15cm. Dlouho jsem bádal, proč debugging zastavuje jinde než chci a ICD2 neustále při krokování píše busy. Občas se to i seklo a LED ERROR se rozsvítila. Kvůli zkrácení kabelu jsem dokonce upravoval i krabičku, ale stálo to za to. Stejný problém jsem řešil na dvou klonech a v obou případech krátký kabel pomohl. Když je to pomalé, špatně to reaguje třeba na zastavení programu, je to celkově nestabilní, vybíhají chyby a svítí busy nebo nedej bože blikne červená ERROR, tak zkrať ICD kabel na minimum. Tedy maximálně na 15cm. To byl jediný vážný problém, který jsem řešil. Na to je ICD2 velmi citlivé. Nejde debugging 16F88 / ICD2 při 20MHz
Podle doporučení Microchip jsem kabel udělal z jednotlivých vodičů.

Pro potyo doporučuji tyto úpravy, pokud jsi je ještě neudělal:

  1. Na pin 1RA4 obvodu 16F877A připojit pullup rezistor cca 4k7 do Ucc
  2. Na piny 11,12 obvodu IC1 připojit společný pullup rezistor cca 4k7
    do Ucc
  3. Na napájení konektoru USB zapojit bipolární transil 5V6
  4. Do napájecího pinu 14 IC3 74HC126 vložit přiměřenou diodu třeba 1N5817
  5. Všechny omezovací rezistry pro LED zvětšit 3x
  6. LED1 neumísťovat na panel, možná pouze na plošný spoj pro
    diagnostiku, ještě jsem ji neviděl svítit.
  7. Použít obvod 16F877A
    kabel.JPG

Díky za radu, ale já úpravy udělané mám, ale mám PC pod stolem a ICD2 na stole, kabel mám 0.5 m. Když ho zkrátím ještě víc, tak nemusím nic programovat :smiley: :smiley: .
ICSP můžu prodloužit na cca 0.5 m? Kdybych dal ICD2 přímo do USB přes redukci.

když dám jeden krok vpřed, ICD odpoví :
Stepping Target
MPLAB ICD 2 Ready
ICD0116: MPLAB ICD 2 is busy
ICD0116: MPLAB ICD 2 is busy
ale skočí o jeden krok

Při breakpointu
Running Target
ICD0116: MPLAB ICD 2 is busy
ICD0116: MPLAB ICD 2 is busy
MPLAB ICD 2 Ready
a skočí 1 až 5 kroků, jak kdy

Nemluvím o USB kabelu, ten může být jakýkoliv. Jde o ICSP kabel. Ten jsem měl původně 40cm(16") a musel jsem ho zkrátit na 15cm(6")
To co popisuješ, je typické chování při dlouhém kabelu. Udělej si nový ICSP kabel !

ICSP mám 10cm

A je to tak ,jak jsem kdysi psal tady někde, když mi breakpoint zastaví na první segmetovce, tak to ta 7segmentovka vyžere. ICD2 a jiné debuggery jsou absolutně k ničemu, co se týká debuggingu!!!Odpálil jsem 7segmentovku za 140,-kč.Teď jsem totálně nasranej a nejradši bych to rozmalátil na sračku!! Na programování je to dobrý ale na debugg absolutně nepoužitelné. Mrzí mě že jsem ten tišťák vůbec vyrobil.Asi se vrátím k TTL

Omlouvám se, ale jsem naštvanej a včera jsem byl totálně nas…

Pamatuji si, jak jsem vysmažil maticové LCD 4x 40 (tehdy za 1200 Kč), protože jsem si spletl zdířku a místo na +5V jsem jej připojil na +12V. Dej si pár dní klid, přejde tě to.

(každý má možnost upravovat své příspěvky, není proto nutné psát dva za sebou)

Na jedné straně chápu, že jsi naštvaný. Na druhé straně, v případě sebemenší chyby v software dosáhneš stejného efektu. Chci říci, že konstrukce by měla být proti takovým běžným chybám odolná. Nějak se nemůžu smířit s tím, že jeden break programu zničí kus displeje! To snad není chyba debuggeru, ale tvoje. Věř, že ICD2 ti hodně pomůže, časem na to určitě přijdeš.
Chtěl bych se ale vrátit k původnímu problému.

  1. Jaký PIC jsi debuggoval?
  2. Jaký byl zdroj hodin pro PIC?
  3. Napájení bylo z ICD2 nebo z aplikace?
  4. Jaké budiče máš na místě 74125/126 - HC, HCT?
  5. Jak jsou zapojeny piny MCLR, ICSPDAT a ICSPCLK v aplikaci?

PIC16F877A

20MHz

Z aplikace

74HC126N a 74HCT125B1

Mám to na nepájivém poli, 11cm kabliky, zasunuty hned vedle PIC.

MCLR na reset, ICSPDAT na RB7/PGD, ICSPCLK na RB6/PGC. Na resetu je odpor 10k. Na RB6 a RB7 není zapojeno nic.

A k tomu LED displeji. Při multiplexování zůstala svítit jen jedna v pořadí a segmenty A,B,C se spálili. Už jsem si udělal ochranný obvod, který při odběru cca 300mA sníží napětí pro LED displej na polovinu, tak teď při zastavení programu se sice multiplex zastaví, ale svítí jen na 1/2 svitu. Ale to mě mělo napadnout dřív, tak je to fakt moje vina. :blush:

16:45
Ted jsem kábliky zkrátil na 7cm, už to zkrátit nejde. Pořád stejná reakce ICD2
Stepping Target
MPLAB ICD 2 Ready
ICD0116: MPLAB ICD 2 is busy
ICD0116: MPLAB ICD 2 is busy

Předpokládám, že jsi nezapomněl odpojit v MPLABu napájení aplikace? A nejspíš používáš Vdd 5V?
Asi bych doporučil nahradit HCT125 obvodem HC125, ale netvrdím, že to je hlavní příčina. Nejlepší by byla řada AC, ale ta je nesehnatelná. Další příčinou teoreticky může být problém oscilátoru aplikace.
Pro ověření funkce bych na kontaktním poli zapojil sólo nějaký procesor a napájel ho z ICD2. Nejlépe s interním oscilátorem. Třeba 16F819. Nebo si zapoj tu 16F877A s krystalem třeba 10MHz bez displejů apod.

Přečetl jsem si tvůj dodatek, prima…

Tak jsem vyměnil kablíky za jiné, 0.75 CYC a už to chodí, nepíše
ICD0116: MPLAB ICD 2 is busy
a breakpoint se zastavuje, tam kde má.

Moc díky za rady.

Já tam měl taky kdysi frajerskej tenounkej stíněnej kablíček. Nakonec jsem ho musel nahradit slušnými jednotlivými vodiči. Ostatně proto jsem výše lepil tu fotografii.

Přesně tak
Taky jsem měl takový tenký a asi kdybych tam ty pořádný hned, tak jsem možná problém vyřešil už dřív.

Už to chodí jak má a jsem s tím docela spokojenej, až na ten úraz :blush: :open_mouth: