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