Fórum témák
» Több friss téma |
Igen, mert nyolc bites kontrollerek. Ha 16 bites aritmetikát akarsz, ott dsPIC, vagy a 24F sorozat.
Azt nem tudom, hogy a Brown-out reset be van e kapcsolva, de itt az asm fájl.
Akkor, szerintem nem marad más, mint a méregetés ahogy Hp41C javasolja. Valami kötés (forrasztás) probléma lehet, erre utal
Idézet: mondatod. „ha megérintem a lábakat egy bekapcsolás történik de leál”
Mi az hogy "távezetés"= átvezetés? Átvezetés nincs. Azt még a maratás után megnéztem, a forrasztások után leellenőriztem.A kondenzátorokat hitelesen mérni nem tudom, de trimmerrekkel próbálkoztam.
Hi
Nem akarok a nagyok dolgába beleszólni, de a konfig biteket, ha Mplab-ot használsz akkor a fejlécben a Configure/Configuration Bits ablakban be tudsz állítani mindent, miután kiveted a pipát belőle. Ha pedig eljutsz odáig a PIC-cel hogy prg-ből kapcsolgasd a config biteket akkora meg már úgyis profi leszel , addig meg jó ez az ablakos módszer is, szerintem. a configure/select device alat meg a pic-et tudod kiválasztani.
A configbiteket watt Watt Pic Burn programjában állítom át az égetés előtt.
Szia!
- Brown-out reset: a tápfeszültség figyelése, ha túl alacsony (<4.00V tipikusan), akkor reset kérése... - Átvezetés: Marratási , forrasztási hiba, a két oszcillátor láb össze van kötve egymással, a táppal, a földdel, vagy más vezetékkel. Egy több kohm nagyságrendű is megakadályozza a berezgést. A gyanta vagy folyasztó szer maradványok is vezethetnek. - Ne trimmerrel próbálkozz, hanem kerámia kondenzátorokkal.> Idézet: Nem nagy ügy. Ha belegondolsz, papíron ceruzálval is így tanultál számolni, hiszen egy-egy leírt számjegy csak 0-9 közötti értéket képvisel. A korábban említett Assembly programozás haladóknak c. fejezetben azt is megmutatom, hogy hogyan lehet ennek elemi lépéseit makrókkal automatizálni.„A lényeg hogy nekem kell megírni azt a rutint ami összevarázsol két 8 bites regisztert.” De ha komolyabb számolást kell végezni, akkor mindenképpen célszerű magasabb szintű nyelvet használni (BASIC, JAL, C, PASCAL), ami több-bájtos változótípusokat is képes kezelni, a programozó számára transzparens módon.
Sziasztok.
Szeretném kérdezni, ha a Timer1-et megállítom egy kis időre,de nem törlöm a TMR1H-t és TMR1L-t, visszakapcsolás után ugyan onnan folytatja a számolást?
A forrasztás után denszesszel leáztattam a panelt és az fényesen tiszta, de hogy most mondod a kijelző panelt nem és mivel az az RA portokhoz is csatlakozik holnap megcsinálom annak a lemosását is. Milyen rendszer szerint próbáljam a kondikat van erre valami kifinomult gyakorlat?
Idézet: Bár nem éppen kifinomult módszer, de nekem ilyen kondenzátorokkal (22 pF) a 32 kHz-es órakvarctól a 20 MHz-es kvarcig eddig minden PIC működött. Néha enélkül is (amikor ott volt a kondenzátor, csak elfelejtettem beforrasztani...) „Milyen rendszer szerint próbáljam a kondikat van erre valami kifinomult gyakorlat?”
Bocsánat, hülyeséget kérdeztem. Tárgytalan.
Szia!
22pF .. 30pF -vel kezd. Az adatlap szerint mindkét módban ennyi kell általában a 4MHz-hez.
A kijelzőpanel mosása megoldotta az oszcillátor berezgését, valószínű a lábak közötti gyantamaradék vitt be valami nem kívánt kapacitás többletet, ami lefogta az oszcit. Úgyhogy most már rezeg gond nélkül.
Viszont két ic-t nem ismer fel az égető, de a bennük lévő program fut. Ha kijelölöm az égetőn a típusát, akkor lefut a törlés, az égetés a program szerint, de a visszaolvasás a configban hibát jelez és minden helyre 1-st ír és úgy veszem észre, hogy az előtte beírt program fut tovább, de ezt még újra meg kell néznem. A kérdés hogy meghalhatott az ic, vagy még menthető? Köszönöm az eddigi segítségeket!
Korábban jól égette?
Én is találkoztam egy olyan sorozattal, amit csak lassabban tudtam beégetni, esetleg próbáld meg csökkenteni a sebességet!
Hi Mesterek
Olyan kérdésem lenne hogy az Mplab-an 18f2550 pic-nél az IF parancsot ha beírom kék lesz, tehát akkor gondlom ismeri. Az lenne a kérdésem hogy hogy lehet ebben használni ezt a parancsot? Mert van egy olyan gondom, vagyis azt szeretném "leprogramozni" hogy ha 2 változó eredménye eléri a pl.: a 10 akkor nullázón egy változót.Ez sikerült is egy XOR utasítással. Csak az a baj vele hogy az egyik változó értéke 6 a másik pedig 5 akkor már nem jó a 10 feltétel, mert ugye az már nem 10 lesz hanem 11. Tehát valami olyasmi kellene hogy ha 10 vagy 10-től nagyobb az eredmény akkor nullázón. Van erre valamilyen bevált módszer vagy másik parancs amit meg is osztanátok velem? Nem tudom már rég volt (10 éve) hogy pascalban próbálkoztam, de ott volt olyan ha jól tudom hogy kisebb nagyobb egyenlő mag hasonló elágazási feltételek.De ez már magas szintű nyelvek, és az Mplab az meg alacsony, igaz? Na itt jönne a kérdés hogy magasabb szintű programozókkal/fordítóprogramok közül mit érdemes használni ami tudja/ismeri a PK2-őt Segítséget, ötletet előre is köszönöm
Szia !
Az IF a fordírónak szóló direktíva, nem PIC utasítás ( a fordítás módját tudod változtatni ! ) ! MPLAB help-ben van a leírás! Steve
A "Kérjetek és adatik néktek" meg a "Zörgessetek és ajtót nyitnak néktek" is működik, de ezt az igehelyet jobban szeretjük: "Keressetek és találtok!"
Bővebben: Link1 Bővebben: Link2 Idézet: A fordítónak/programnyelvnek semmi köze a PK2-höz. Használni pedig elsősorban azokat a fordítókat érdemes, amelyeket a gyártó (Microchip) és az MPLAB fejlesztői környezet támogat. PIC18-hoz főleg a C18 javallott... „Na itt jönne a kérdés hogy magasabb szintű programozókkal/fordítóprogramok közül mit érdemes használni ami tudja/ismeri a PK2-őt”
Te most C18-rol beszelsz, vagy Assembly (asm) programrol?
C-ben van ilyen, es valtozok is vannak. ASM-ben is van "if" csak az ott nem utasitas, hanem felteteles forditasi direktiva. ASM-ben raadasul a "valtozo" megintcsak a forditonak szol csak, azaz ezeket a forditas befolyasolasara lehet hasznalni, es statikusn kiszamolando ertekek kiszamolasara lehet felhasznalni, de az eredmeny vegleges, az a beegetett programban mar nem fog valtozni. Ha azonban igazi dinamikus ertelemben vett valtozok es felteteles utasitasokra gondoltl, akkor ezeket memoria darabokbol es gepi utasitasokbol sajat magadnak kell ossze raknod. Ha nagyon akarod, akkor meg makrokat is csinalhatsz ezekbol, hogy konyelmesebben hasznald. Pl 10-bol kivonod egy file regiszter erteket es ezutan ha a C flag (carry) alacsony akkor a file regiszter erteke magasabb volt, mint 10...
Igen ezeket is a minivel égettem korábban.Időközben vizsgálgatva őket, az egyiknél kiderült, hogy az R6 lábon nem jön ki jel, programfutás közben, így alighanem az azonosítás is amiatt nem megy, mert nem jut be az órajel.
A másiknál viszont a benne lévő program rendesen fut, tehát van minden lábon kijövő jel, de nem lehet felismertetni az ic-t, bármily alacsonyra állítom a csúszkát. Így alighanem az is amortizálódott, amit csak könnyben úszó szemekkel tudok tudomásul venni.
A PIC-en rajta van(volt) mindig, az égetés alatt is a 10k-s ellenállás az MCLR és a Vdd között?
Szia!
Ha a konfigurációs szóban nincs letiltva az LVP, akkor a PGM lábat alacsony szintre kell húzni.
Ok, köszönöm, mindenkinek!
Ez a kivonás ez jó ötletnek tűnik, köszönöm.
Lenne egy kérdésem:
Nagyon brutális dolog picnek órajelet 555-el adni? Úgy tudom az felpörgetető 500Mhzig. Szoktak ilyet csinálni? Idézet: Nincsen semmi problema, ha az 555 is 5 voltrol jar.„picnek órajelet 555-el adni?” Idézet: Az 555 maximum 1 MHz-ig mukodik. A PIC-ek pedig (csaladtol fuggoen) 80 MHz-ig. Az overclocking esetleg elmegy 90MHz-ig. De a 16-os sorozatot nem igen lehet 22 MHz fole hajtani. Ami elmegy 500 MHz-ig az nem PIC. Amugy egy kvarc lassan olcsobb mint az 555 es a hozza tartozo alkatreszek. Foleg kevesebb helyet foglal el. „Úgy tudom az felpörgetető 500Mhzig.” |
Bejelentkezés
Hirdetés |