icd2

Miroslav Draxal evik na volny.cz
Sobota Prosinec 31 23:57:14 CET 2011


Z okna s tim. Od 19 nad tím sedím, zkoušel jsem od 8.3 až po 8.83 verzi
MPLABU. Stále stejné. 
Bod 6 (ano koukám na konfigurační bity)
Stáhnul jsem i 9,80 lite verzi, abych byl stejnej jako ty. 
Shrnutí.
Krok1/ Programuji (PGM=lo), WDT=disable, LVP=disable, zapíše se vše OK
Krok2/ Připojím PGM na HI
Krok3/ Programuji (PGM=hi), WDT=disable, LVP=disable (ověřeno vizuálně v
okně konfig), dojde k verifikaci, tady ohlásí "zkontroluj připojení PIC"

Dále nepomůže nic jiného, než PGM=lo, po vyčtení je WDT i LVP enable.

Moc prosím, kdo má možnost, vyzkoušejte to s ICD2 a 18f1320. Irrata o tomhle
problému mlčí, všechno jsem (podle mě) proměřil a v pohodě.

JINAK PŘEJI VŠEM PĚKNÝ NOVÝ ROK. MÍRA 



-----Original Message-----
From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz] On
Behalf Of j s
Sent: Saturday, December 31, 2011 12:49 PM
To: HW-news
Subject: Re: icd2

No to je zahada. Teraz nemozem skusit ICD2 (ktore mam v praci) ani 18F1320.
To najskor na buduci tyzden.
Este k tomu bodu 6 - to v zatvorke znamenalo, ze si si pozrel, ze tie
konfiguracne bity vyzeraju (po kompilacii) ako maju? Teda ze LVP je
disablovane?

Zobral som tvoj zdrojak a upravil som to takto:
#include <htc.h>
__CONFIG(1, IESODIS & FCMEN & RCIO);
__CONFIG(2, BORDIS & BORV42 & PWRTEN & WDTDIS & WDTPS32K); __CONFIG(3,
MCLREN ); __CONFIG(4, DEBUGEN & LVPDIS & STVREN);

lebo mi kompilator huboval na konstantu v tom konfiguraku (to 0x08 co si tam
mal povodne) aj na #include <18f1320.h> . Ak tebe nehubuje, znamena to, ze
asi mame nezanedbatelne rozdiely v kompilatoroch. Na co vlastne includujes
ten subor 18F1320.h? Vsetko by malo byt urobene includnutim htc.h.
Mam kompilator Hi-Tech 9.80 pre PIC18, ale v Lite verzii - totiz s
Hi-Tech-om nerobim, preto nemam plnu verziu, mam ho len na hranie.
MPLAB je najnovsi, ver. 8.83.

Kazdopadne, v konfigurakoch vidim po kompilacii to, co tam ma byt - s tym
fragmentom ako som ho napisal vyssie. Oscilator interny, LVP disablovane.
Ked budem mat moznost, skusim to aj s realnym HW a ICD2.

Je mozne, ze je v MPLAB-e chyba, ale vidim to ako jednu z poslednych
moznosti. ICD2 aj 18F1320 su natolko stare zalezitosti, ze to musi byt 100x
vychytane. Pre nove PIC by som to aj uveril, ale u tychto veteranov mi to
nejak nesedi.
Kazdopadne, skus novsiu verziu kompilatora a MPLAB-u a rucne preflashovat
firmware v ICD2. Chapem, ze je to nie je dvojminutova zalezitost, ale viac
momentalne nemozem poradit. Samozrejme, este by bolo moznostou mat iny
programator, ale to by si asi skusil, ak by si mohol.

J.S.


2011/12/31 Miroslav Draxal <evik na volny.cz>:
> 1/ vymažu celý pic   .. OK
> 2/ verifi target device is erased .. OK 3/ ručně zakážu v konfiguraci 
> WDT + LVP disable  .. OK 4/ nahodim PGM do HI 5/ zaškrtni checkbox pro 
> auto konfiguraci ze zdrojáku 6/ kompilace .. ok  ( bity v konfiguraci 
> ) OK 7/ vypálit program
>
> A teď: Program vypálen,konfig bity, modul pro spojení s ICD2 a má 
> proběhnout verifikace v tu chvíli vyběhne hláška, že mám zkontrolovat
připojení s pic.
> Totálně vymrtvenej pic. Až po PGM do lo se to rozběhne a jakmile 
> přečtu celej obsah pice, tak je to kompletně vynulovaný včetně konfig 
> bitu a LVP je enabled. Bordel tam dělá ten PGM. Jakmile je v lo, tak vše
jak má být.
>
> Kolem picu nejsem žádný guru, ale lama taky ne. Jsem si zpoměl, že 
> někdy kolem roku 2000 se mi podobné nepochopitelné věci děli při 
> programování s picstarem. Byl tam bug v mplabu.
>
> Jakou máš verzi kompilátoru? Prosím zkus tam místo 0x08 hodit RCIO co 
> to přeloží do konfiguračního slova. Díky Míra
>
> -----Original Message-----
> From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz] 
> On Behalf Of j s
> Sent: Saturday, December 31, 2011 9:57 AM
> To: HW-news
> Subject: Re: icd2
>
> Program som chcel na to, aby som videl ako budu nastavene konfiguracne 
> bity
> - ci nahodou nie je problem v tom. Tie vyzeraju byt OK, hoci nemam 
> rovnaku verzi kompilatora... Ale to, ci ich kompialtor generuje 
> spravne sa da overit v editore konfiguracnych bitov. Je treba mat 
> zaskrtnute checkbox, ze konfiguraky su nastavene v zdrojakoch, teda 
> cele zvysne okno bude sive - neaktivne.
>
> Ale nejak som nepochopil tu zalezitost s LVP bitom. Ak sa PIC 
> naprogramuje s LVP disablovanym, tak po verifikacii tento bit je 
> opacny? Ak sa naprogramuje s LVP disablovanym, robi stav PGM bitu 
> nejaky problem? Ostatne konfiguracne bity su tak ako sa maju zapisat?
>
> J.S.
>
>
> 2011/12/31 Miroslav Draxal <evik na volny.cz>:
>> MPLAB 8.80,
>> HI-TECH C PRO for the PIC18 MCU Family  V9.63PL3
>>
>> Už v __CONFIG(1, IESODIS & FCMEN & 0x08); místo 0x08 Zde jsou 
>> možnosti EXTCLKO RCCLKO RCIO EXTIO HSPLL ECIO ECCLKO HS XT LP
>>
>>
>> Pokud tam dám RCIO , tak to přeloží jako LP oscilátor , proto 
>> 0x08=interní osc + RA6,7 = IO
>>  Je to jenom nástřel programu. Docela jsem zvědav na co přijdeš. Ono 
>> to není o programu. Prostě pokud je PGM v HI, tak se ICD2 nepodaří 
>> iniciovat pic, jako by nebyl připojen.
>>
>>
>> #include <htc.h>
>> #include <18f1320.h>
>> __CONFIG(1, IESODIS & FCMEN & 0x08);
>> __CONFIG(2, BORDIS & BORV42 & PWRTEN & WDTDIS & WDTPS32K); 
>> __CONFIG(3, MCLREN ); __CONFIG(4, DEBUGEN & LVPDIS & STVREN); 
>> __CONFIG(5, 0xFFFF); __CONFIG(6, 0xFFFF); __CONFIG(7, 0xFFFF);
>>
>> struct _SPIout_bity
>>        {       unsigned CanSleep:1;
>>                unsigned Set12V:1;
>>                unsigned Enable12V:1;
>>                unsigned LCDled:1;
>>                unsigned PowerLed:1;
>>                unsigned _4051:3;
>>                unsigned X4:1;
>>                unsigned X3:1;
>>                unsigned X2:1;
>>                unsigned X1:1;
>>                unsigned Mag12:1;
>>                unsigned Mag11:1;
>>                unsigned Mag10:1;
>>                unsigned Mag9:1;
>>                unsigned Mag8:1;
>>                unsigned Mag7:1;
>>                unsigned Mag6:1;
>>                unsigned Mag5:1;
>>                unsigned Mag4:1;
>>                unsigned Mag3:1;
>>                unsigned Mag2:1;
>>                unsigned Mag1:1;
>>        }SPIout_bity;
>>
>> #define SPI_vyslanychBytu 3     // kolik bytů po 8 bitech se vyšle 
>> (počet
>> IO4094 pro příjem SPI v sérii za sebou) #define SPI_errorRepeat 3 // 
>> kolikrát se v případě chyby zápisu na SPI pokusí zapsat znovu 
>> informaci do IO4094
>>
>> #define SPIdata_pin     RA0
>> #define DisplejDB0_pin  RA0
>> #define SPIclock_pin    RA1
>> #define DisplejDB1_pin  RA1
>> #define DisplejDB2_pin  RA2
>> #define DisplejDB3_pin  RA3
>> #define SPIstrobo_pin   RA4
>> //                                              RA5     Reset #define 
>> DisplejRW_pin   RA6 #define ExtP1_pin               RA7
>>
>> #define In4051_pin              RB0
>> #define CanTX_pin               RB1
>> #define ExtP2_pin               RB2
>> #define ExtP3_pin               RB3
>> #define CanRX_pin               RB4
>> #define SPIverifi_pin   RB5
>> //                                              RB6     PGC //
>
>> RB7     PGD
>>
>> unsigned char x;
>>
>>
>> void initPIC(void);
>> unsigned char SPIout(void);
>>
>> void main(void)
>> {
>>        SPIout_bity.Mag2=1;
>>        SPIout_bity.CanSleep=1;
>>        SPIout_bity.Mag1=1;
>>        initPIC();
>>        while(1)
>>        {
>>        x=SPIout();
>>        }
>> }
>> void initPIC(void)
>> {
>>        OSCCON=0b01110000;
>>        PORTA=0;
>>        PORTB=0;
>>        ADCON1=0b00001111;
>>        TRISA=0b11101100;
>>        TRISB=0b11111111;
>> }
>> unsigned char SPIout(void)
>> {       static struct _SPIout_bity SPIout_bity_old;
>>        unsigned char outByt,outBit,kopieBytu,SPIerror,SPIerrorPozice;
>>        unsigned char *bity=&SPIout_bity;
>>        unsigned char *bity_old=&SPIout_bity_old;
>>
>>        outByt=SPI_vyslanychBytu;
>>        SPIerrorPozice=0;
>>        do //zjisti změnu v datech od posledně vyslané informace na 
>> SPI
>>        {       if (*bity^*bity_old)
>>                {       SPIerrorPozice++;
>>                        *bity_old=*bity;
>>                }
>>                bity++;
>>                bity_old++;
>>        }while(--outByt);
>>
>>        if(SPIerrorPozice) // pokud je rozdíl v datech, potom vyšli po 
>> SPI
>>        {       unsigned char SPImode=2;  // SPImode = 2 = save ; 
>> SPImode =
>> 1 = verifi
>>                unsigned char SPIerrorRepeat=SPI_errorRepeat; // 
>> kolikrát se bude v případě chyby pokoušet zapisovat do IO4096
>>                do // SPImode save/verifi
>>                {       SPIerror=0;
>>                        SPIerrorPozice=0;
>>                        unsigned char *p=&SPIout_bity;
>>                        outByt=SPI_vyslanychBytu;
>>                        do // vysílá byty
>>                        {       kopieBytu=*p++;
>>                                outBit=8;
>>                                do // vysílá jednotlivé bity
>>                                {       SPIdata_pin=0;
>>                                        if (kopieBytu & 0b00000001)
>>                                                SPIdata_pin=1;
>>                                        SPIclock_pin=1;
>>                                        SPIerror++;
>>                                        SPIclock_pin=0;
>>                                        if ((SPImode&1)&&(kopieBytu &
>> 0b00000001)!=SPIverifi_pin)     //SPIverifi
>>                                        { SPIerrorPozice=SPIerror; // 
>> chyba zapsaných dat do IO4096
>>                                                SPImode++; // tendo 
>> cyklus verifi je save nové informace
>>                                        }
>>                                        kopieBytu >>=1;
>>
>>                                }while(--outBit); // vysílá jednotlivé 
>> bity
>>                        }while(--outByt); // vysílá byty
>>                        SPIdata_pin=0;
>>                        if (SPImode&2)  //SPIsave
>>                        {       SPIstrobo_pin=1;
>>                                SPIstrobo_pin=0;
>>                                if(!--SPIerrorRepeat)
>>                                        break;//verifi error, opakuj 
>> zápis po SPI, pokud jsi SPIerrorRepeat krát již nezapsal, a stále je 
>> chyba
>>                        }
>>                }while(--SPImode); // SPImode save/verifi
>>        }
>>        return SPIerrorPozice; // SPIerrorPozice > 0 = error zápisu 
>> dat po SPI, v proměnné číslo výstupu, kde chyba nastala }
>>
>>
>>
>>
>>
>> -----Original Message-----
>> From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz]
>> On Behalf Of j s
>> Sent: Friday, December 30, 2011 11:10 PM
>> To: HW-news
>> Subject: Re: icd2
>>
>> Ukazte relevantnu cast zdrojaku alebo ako to nastavujete, napiste mi 
>> aky prekladac a verziu MPLAB-u pouzivate a chybu najdeme.
>>
>>
>> 2011/12/30 Miroslav Draxal <evik na volny.cz>:
>>> Tak teď to vypadá, že je chyba v MPLAB. Jakmile zapíši s PGM LO, 
>>> LOW-Voltage ICSP enable bit na DISABLE, tak se zapíše, nahodím PGM 
>>> do HI a znovu naprogramuji, tak se LOW-Voltage ICSP zase nahodí 
>>> enable, a je
>> to víte kde.
>>> Zkusím stáhnout starší MPLAB a prubnu to tam. Míra
>>>
>>> -----Original Message-----
>>> From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz]
>>> On Behalf Of Miroslav Draxal
>>> Sent: Friday, December 30, 2011 9:22 PM
>>> To: 'HW-news'
>>> Subject: RE: icd2
>>>
>>> No i když v pdf skutečně píší, že HPV je dostupné vždy. Zkusím 
>>> proměřit icd2, jestli dává na reset 12V, ale autodiagnostika říká že 
>>> ano. Míra
>>>
>>> -----Original Message-----
>>> From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz]
>>> On Behalf Of j s
>>> Sent: Friday, December 30, 2011 6:37 PM
>>> To: HW-news
>>> Subject: Re: icd2
>>>
>>> Mozno je to krute, krvave a hnusne, ale ja by som ten blby klopak 
>>> normalne natvrdo skratoval k zemi (ten vystup bude nadavat, hriat 
>>> sa, ale par sekund to vydrzi, zvlast moderne makke vystupy), rychlo 
>>> naprogramoval s LVP disablovanym, potom odpojil skrat a dalej nech 
>>> je na nom co chce, nie je problem.
>>> Inak uz som v zivote par PICiek pouzil a nikdy som nemal pri HVP 
>>> problem s tym, ze by bol PGM na inej ako nizkej urovni. HVP by malo 
>>> byt vzdy dosiahnutelne, bez ohladu na stav PGM.
>>>
>>> J.S.
>>>
>>> 2011/12/29 Miroslav Draxal <evik na volny.cz>:
>>>> Dobrý večer,
>>>>
>>>> Mam v dps osazen pic 18f1320, vyvedený konektor pro ICD2, PGD+PGC 
>>>> vedou pouze do konektoru, nic na nich nevisí. Po připojení ICD2 ani 
>>>> neproběhne inicializace, prý není připojen pic. Po hodně dlouhým 
>>>> hledání a házení z okna jsem přišel na to, že na PGM mam 1 z klopáku.
>>>> Pokud tam je 0, tak je všechno ok. jak to obejít? Po zapnutí či 
>>>> přeflešování je na PGM náhodný stav.
>>>>
>>>>
>>>>
>>>> Vypájet, nastavit LOW-Voltage ICSP enable bit na DISABLE. Zapájet zpět.
>>>> Zkusil bych to, ale teď to nemam po ruce. Takže pouze teorie.
>>>>
>>>>
>>>>
>>>> Díky za náměty. Míra
>>>>
>>>>
>>>>
>>>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6753
>>>> (20111229) __________
>>>>
>>>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>>>
>>>> http://www.eset.cz
>>>>
>>>>
>>>>
>>>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6753
>>>> (20111229) __________
>>>>
>>>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>>>
>>>> http://www.eset.cz
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>>
>>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6753
>>> (20111229) __________
>>>
>>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>>
>>> http://www.eset.cz
>>>
>>>
>>>
>>>
>>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756
>>> (20111230) __________
>>>
>>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>>
>>> http://www.eset.cz
>>>
>>>
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>>
>>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756
>>> (20111230) __________
>>>
>>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>>
>>> http://www.eset.cz
>>>
>>>
>>>
>>>
>>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756
>>> (20111230) __________
>>>
>>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>>
>>> http://www.eset.cz
>>>
>>>
>>>
>>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756
>>> (20111230) __________
>>>
>>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>>
>>> http://www.eset.cz
>>>
>>>
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
>>> http://list.hw.cz/mailman/listinfo/hw-list
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756
>> (20111230) __________
>>
>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>
>> http://www.eset.cz
>>
>>
>>
>>
>> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756
>> (20111230) __________
>>
>> Tuto zpravu proveril ESET NOD32 Antivirus.
>>
>> http://www.eset.cz
>>
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
>> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
> http://list.hw.cz/mailman/listinfo/hw-list
>
>
> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756 
> (20111230) __________
>
> Tuto zpravu proveril ESET NOD32 Antivirus.
>
> http://www.eset.cz
>
>
>
>
> __________ Informace od ESET NOD32 Antivirus, verze databaze 6756 
> (20111230) __________
>
> Tuto zpravu proveril ESET NOD32 Antivirus.
>
> http://www.eset.cz
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz 
> http://list.hw.cz/mailman/listinfo/hw-list
_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list


__________ Informace od ESET NOD32 Antivirus, verze databaze 6757 (20111231)
__________

Tuto zpravu proveril ESET NOD32 Antivirus.

http://www.eset.cz


 

__________ Informace od ESET NOD32 Antivirus, verze databaze 6757 (20111231)
__________

Tuto zpravu proveril ESET NOD32 Antivirus.

http://www.eset.cz
 



Další informace o konferenci Hw-list