Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
TIPPMIX #2:
Van ezen a demo boardon külső oszcillátor? Még arra tudok tippelni, hogy a config2 -nél primary oscillatort is beállítasz, plusz internal fast rc -t is. Idézet: „The system clock source can be provided by one of four sources: - Primary Oscillator (POSC) on the OSC1 and OSC2 pins - Secondary Oscillator (SOSC) on the SOSCI and SOSCO pins - Fast Internal RC (FRC) Oscillator - Low-Power Internal RC (LPRC) Oscillator” Aztán lehetséges, hogy hülyeséget mondtam. Idézet: „A kódrészlet: TMR1 = 0; // clear the timer PR1 = 12500-1; // set the period register ” Ha van ezen a boardon 8MHz -es külső oszcillátor, akkor a fenti számolással, plusz a Luca Di Jasio féle demo programmal (ahol a 10. megszakítás után növeli a másodperc számlálót) pont 2 másodperc jön ki. A számolás tehát jó, az oszcillátor beállításokat kéne még átnézned a Reference Manualban. Szerintem.
Az pont 1másodpercenként vált, és nem pedig villog, ahogy te gondolom gondolod!
Igen de a Di Jassio féle kódban pr1=25.000 van, azzal ez már 4 mp amit szerettem volna pll-el 1 re levinni, mert ugyanakkor azt írja a timer ezen részénél, hogy 32Mhz-val megy.
Ha másodpercenként vált az nálam villogás, de ha megnézed én is azt írtam, hogy vált pont azért ne lehessen félreérteni.
Ezek szerint a (#500195) hozzászólásom a fantáziavilág magasságából egyre jobban süllyed a realitás talaja felé.
Sziasztok!
Érdeklődnék, hogy egy PICKit 3 megfelelne-e kezdő (később talán haladó) szintre? Még az is érdekelne, hogy mivel tud többet egy ICD3?
A korábbi hozzászólásban említett kijelző lábaira rámértem (vigyázat, a lábkiosztás elég zavaros, ahogy az adatlapon is látható! Balról jobbra haladva: 14, 13, 12, ... 3, 2, 1, 16, 15).
1 VSS 0 V 2 VDD 4.96 V 3 V0 0.56 V LCM-S01602DTR/M - ez egy háttérvilágítás nélküli kijelző. A fent megadott feszültségek összhangban vannak az adatlap ajánlásaival, s szobahőmérsékleten a kontraszt is megfelelő (a téglalapok halványan látszanak).
Nincs rajta külső oszcillátor. Kiszedtem már az elején, mert egy 20-ast raktam volna rá a belső meg tud 32-őn menni.
Jelen pillanatban a PICkit2 szoftvere fejlettebb, többet tud.
Egy összehasonlító táblázat itt található. Eszerint a PICkit3 előnye az, hogy 2 V-os tápfeszültség is beállítható (a PICkit2-nél talán 2.5 V a minimum), s hogy megnövelték a belső programtár kapacitását. Én a PICki2-őt választanám...
Szia.
Átalakítottam így a progit ahogy a példád van. Nekem nem azt csinálja amit kellene: pontosabban elindítom és az első és a hetedik ledem egyfolytában világít. Idézet: „_CONFIG2(FNOSC_FRCPLL & POSCMOD_HS)” A FNOSC_FRCPLL jó választás, de a POSCMOD_HS helyett szerintem POSCMOD_NONE kellene! (Ez az adatlapból az OSCIOFCN-nál írtakból is kikövetkeztethető)
Értem, viszont, akkor azt még mindig nem, hogy mit szerettél volna a Primary Oscillatorral. (Mert a programod és a számolások alapján 8MHz -es órajellel "dolgozol").
Ebben a sorban PORTA helyett PORTD kellene!
Ász vagy.
Elnéztem a be-kimenetet:S De a hetedik ledem még mindig világít folyamatosan. Idézet: „De a hetedik ledem még mindig világít folyamatosan.” Nem látom, hol törlöd. ![]()
Tiszteletem mindenkinek!
Van egy kis problémám. (Nikon infrás távvezérlő topikban már vázoltam, de ez elég népszerű topic, úgyhogy itt is megkérdezem, ha nem baj.) Szóval: adott egy asm fájl, egy adott kontrollerhez. (PIC12F675). Viszont nekem csak PIC12F629 van otthon. A két kontroller adatlapja egyben van közölve, mivel a két kontroller közel azonos működésű. A 675 annyival tud többet, hogy a lábait az AN(szám) névvel is ellátták. A probléma: A 675-ös PIC-hez írt program tökéletesen lefordítódott hex fájllá, amit be tudok égetni. MPLAB-ban a szükséges adatok (kontroller típusa, és a programban szintén a típus és az include fájlnév) átírása után az MPLAB nem akarja lefordítani. Nézem a sorszámozást, 3 sorral van baja. Ha azt kitörlöm, lefordítja, de kétlem, hogy ezzel nem rontottam volna el a program működését. A honlap, ahonnét a forráskód van, azt írja, hogy a kapcsolás működik 629-es kontrolerrel is. Igen ám, de nem szívesen tennék tönkre egy SMD PIC-ket azzal, hogy olyan hex fájlt írok bele a Pickit2-vel, ami a 675-ös kontrollerhez készült, ámde tökéletesen működik. Valaki tudna nekem segíteni megoldani ezt a gondot? PIC-programozást sajnos csak nagyon alapszinten tanultam... Az említett honlap linkje: http://users.tkk.fi/~jwagner/electr/d70remote/ És a forráskód: http://users.tkk.fi/~jwagner/electr/d70remote/main.asm Köszönöm előre is mindenkinek a válaszokat. Valami nagyon érthető magyarázat kéne, hogy mit, hogyan és hol csináljak. Üdv.: 002
Köszi!
Szerinted a későbbiek folyamán sem lesz jobb a PK 3 szoftvere, mint a 2-é?
A sorok, amiket hibásnak ítél az MPLAB:
Ez a legutolsó sor, amit ide beszúrtam, 6 sorral van lentebb az idézett első két sorhoz képest.
Clrf ansel sorra azért dob hibát mert a 12f675 ben van AD konverter míg a 629-ben nincs ezért a 629 ben nincs is ilyen nevű regiszter.
Másik 2 sorra meg nem hibát dob hanem csak egy üzenetet hogy ügyelj a bankváltásra.
A 16F629-be nyugodtan beégetheted a 675-ös hex-ét, mert a nem létező regiszterekbe történő írás (AD konverter tiltása) nem eredményez semilyen problémát.
Köszönöm szépen. Akkkor nem nyúlok a 675-ös programjába.
![]()
A CLRF ANSEL sort vagy hagyd ki, vagy tegyél a helyébe egy NOP utasítást. A másik két sort ne bántsd, mert azok kellenek!
Miért töröljem mikor a program szerint nem is rakok ki rá semmit.
Lenne egy másik kérdésem is: hogyan tudom nagyságrendileg pontosan meghatározni, hogy hány másodperc késleltetést adtam meg a DELAY rutinna? Erre van konkrét képlet?
Üdv!
Tettem a helyébe egy NOP-ot, és egyszerűen, hiba nélkül lefordította. Mégegyszer köszönöm mindenkinek a segítséget!
POSCMOD_NONE semmi változást nem hozott, többek között azért nem volt zavaró a primary hs merthogy nincs is rajta primary.
Másik gonom beraktam a kondikat, csepptantállal a vcap-ot földre, minden vdd vss láb közé 100pF-eket felismeri a pickit 2 a procit hajtja is de a debuggerrel ha beírom a progit minden bemegy, majd jön egy ilyen: Programming Target (2009.08.25. 21:56:52) PIC24FJ128GA008 found (Rev 0x3002) Erasing Target Programming Program Memory (0x0 - 0x37F) (Using Programming Executive) Verifying Program Memory (0x0 - 0x37F) (Using Programming Executive) Programming Configuration Memory Verifying Configuration Memory PK2Error0027: Failed verify (Address = 0x157FE - Expected Value 0xBF7F - Value Read 0x3F7F) PICkit 2 Ready lehet hogy a konfigurációs terület ment gallyra, és állíthatok amit akarok akkor sem fog bemenni? Idézet: „Erre van konkrét képlet?” DELAY = 4*utasításciklusok száma/Fosc Az adatlapból kiderül, hogy melyik utasítás hány ciklus. Persze, egy többszörösen egymásba ágyazott ciklusnál nem könnyű összeszámolni... Idézet: „PK2Error0027: Failed verify (Address = 0x157FE - Expected Value 0xBF7F - Value Read 0x3F7F) PICkit 2 Ready lehet hogy a konfigurációs terület ment gallyra, és állíthatok amit akarok akkor sem fog bemenni?” Mi a búbánatért akarod 1-be írni a 15. bitet, amikor "reserved", és az adatlap szerint 0-t kell beleírni?! ![]() Idézet: „minden vdd vss láb közé 100pF-eket” Akarod mondani: 100 nF-ot...
Akarja a búbánat a c fordító írja a config szavak alapján.
ha 101 van a kondin az nano vagy piko? |
Bejelentkezés
Hirdetés |