Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   502 / 1319
(#) MPi-c válasza tomi134 hozzászólására (») Jún 11, 2009 /
 
Idézet:
„Vagy talan ehez valami kulon progi kell?”


Azt kellene tudnod, hogy melyik basic fordítóra készült a programod és azzal kellene lefordítani, majd a PIC-be írni.
(#) tomi134 válasza MPi-c hozzászólására (») Jún 11, 2009 /
 
Sajnos azt nem tudom hogy milyen progival keszult es az oldalon sem emliti.Ilyenkor van valami mas lehetoseg?
(#) potyo válasza tomi134 hozzászólására (») Jún 11, 2009 /
 
Magában a fájlban nincs benne megjegyzésként? Ha nincs, akkor sorbapróbálod a basic fordítókat, szinte biztos, hogy nem fogják egymásét megenni, úgyhogy előbb-utóbb rátalálsz a megfelelőre... De biztos megéri vele szenvedni?
(#) MPi-c válasza tomi134 hozzászólására (») Jún 11, 2009 /
 
Hát sajnos, ha itt esetleg nem ismer rá senki, akkor a keresgetés marad. Ez valami török oldalról van. Ott valahol, esetleg másik projektnél, nem utalnak rá, hogy milyen fordítót használtak?
(#) tomi134 válasza MPi-c hozzászólására (») Jún 11, 2009 /
 
Hat talan Pic Basic Pro. Legalabis a linkekbol itelve.
http://home.no/fsan/projects/index.htm
(#) tomi134 válasza tomi134 hozzászólására (») Jún 11, 2009 /
 
Viszont a Pic Basic Pro-nak a proba verzioja csak 72 sort engedelyez es nem talalok hoza semi fele okosagot.
(#) pepe33 hozzászólása Jún 11, 2009 /
 
Készitettem egy programozó adapter 18F97J60-hoz, mivel az eredeti helyén nem sikerült felprogramoznom.
Még szerencse hogy a PIC-et eleve egy kis panelra forrasztottam fel és egy tüskesorra csatalakozott a főpanelon , igy könyebb bánni vele.
A meglepetés akkor ért , amikor a kis adapterrel , amin csak a VDD,VSS,MCR,PGC,PGD lábak vannak bekötve, nem ismerte meg a PICKiT2 PIC-et. Az áramkörben legalább felismerte csak a programozás nem ment.
A VCAP lábakra több féle kondi értéket próbáltam 470nF től 10µF -ig, de semelyikkel nem mükdött a dolog.Az MCLR lábat is próbáltam 10k val felhuzva és felhúzás nélkül is.

Most akkor valamit még rosszul csinálok , vagy mondhatni hogy ez a PIC már meghalt ?
(#) szilva válasza pepe33 hozzászólására (») Jún 12, 2009 /
 
Egy csipogós multiméterrel mérd ki a vezetékeket a PIC lábától az ICSP csati lábáig! Érdemes még a beforrasztott PIC egymás melletti lábait is kicsipogtatni, hogy nincs-e zárlat valamelyik két láb között. Lehet, hogy valamelyik láb nincs rendesen megforrasztva, vagy pl. egy szomszédos lábbal zárlatos.

Ezeknél az SMD chipeknél sokkal nagyobb az esélye az ilyen jellegű hibáknak, mint a DIP tokozásúaknál, és még az is lehet, hogy szemmel/nagyítóval nem látsz semmit. A csipogós szakadásvizsgálat nem okozhat kárt a PIC-ben, azzal nyugodtan lehet méricskélni.

Apropó: a Vdd és GND lábak mind be vannak kötve? 100nF körüli hidegítőkondi(k) vannak a Vdd/GND lábak között, minél közelebb a PIC-hez?
(#) pepe33 válasza szilva hozzászólására (») Jún 12, 2009 /
 
Mindegyik táp be van kötve, és 100nF kondik is vannak betéve mindegyik láb közelébe, a képen látható módon van megoldva.

A lábakat mértem a csipptől a tüskéig ,mindegyik láb rendben volt és az ICSP is, de akkor délután véigmérem az egymás melletieket is egymáshoz képest.

(#) trudnai válasza pepe33 hozzászólására (») Jún 12, 2009 /
 
Idézet:
„100nF kondik is vannak betéve mindegyik láb közelébe, a képen látható módon van megoldva.”


A paneleden en csak a programozo headeren latok kondikat. Utana meg viszonylag hosszuak a vezetekek + a csatlakozo sor a PIC labaig, ott meg nyugodtan ossze szedhet zajokat.
(#) steev hozzászólása Jún 12, 2009 /
 
Egy amatőr kérdés:

A PIC24F A/D konvertere mekkora feszültségtartományban dolgozik? Ugyanakkora mint a PIC?

Mert az adatlapon nem találtam meg...
(#) potyo válasza steev hozzászólására (») Jún 12, 2009 / 1
 
Pedig benne van az, Voltage on any combined analog and digital pin and MCLR, with respect to VSS, illetve az AD01 és azt követő paramétereket nézd az electrical specifications részben.
(#) Tomi111 hozzászólása Jún 12, 2009 /
 
Üdv Mindenkinek!

Lenne egy kérdésem. Elég kezdő vagyok még programozásban. Ha írok egy programot asm-ben 16F84-re, azt 16F628-ba vagy 818-ba írva működik? MpLabban írnám asm-ben, egyszerű progi, csak figyel pár bemenetet és ennek hatására kapcsol néhány kimenetet időzítve. Semmi megszakítás, timer, stb. 16F84-re írtam már. Elég ha átírom a prg elején a pic azonosítóját? Az adott prg még nincs meg.
Természetesen azért szeretném, mert az adott pic-ek olcsóbbak.

Köszi Tomi
(#) steev válasza potyo hozzászólására (») Jún 12, 2009 /
 
Köszi Megtaláltam.

AD11 VIN Absolute Input Voltage Min:AVSS- 0.3, Max: AVDD + 0.3 V
(#) trudnai válasza Tomi111 hozzászólására (») Jún 12, 2009 / 1
 
Idézet:
„Lenne egy kérdésem. Elég kezdő vagyok még programozásban. Ha írok egy programot asm-ben 16F84-re, azt 16F628-ba vagy 818-ba írva működik?”


Valasz egy szoban: Nem.

Ket szoban: Nem valoszinu.

Harom szoban: Valtoztatas nelkul nem.

Hosszabban: Az MCU (Micro Controller Unit) az nem szamitogep, hanem egy elektronikai alkatresz. A benne levo programot kozvetlen a hardveren fut igy ha a hardver mas akkor a firmware-t is modositani kell ennek megfeleloen.

A jo hir viszont, hogy a forrasod megvan, van a regi es az uj adatlap, es igy ezek alapjan at tudod irni a programot.
(#) Hp41C válasza Tomi111 hozzászólására (») Jún 12, 2009 / 1
 
Szia!

Közvetlenül nem, a forrás írásánál oda kell figyelni a különbségekre.

Az okok:
- A 16F84 -ben a ram 0x0C -től kezdődik, a többiben 0x20 -tól.
- A 16F628(A) analóg komparátorai miatt a PORTA reset után analóg. Programból át kell átállítani.
- A 16F818 -ban az A/D miatt a PORTA reset után analóg. Programból át kell átállítani.
- Az adat EEProm kezelése a 16F818-ban más lapon (Bank 2,3) van.
- A16F628-ban az adat EEProm ugyan azon a lapon van, mint a 16F84-ben, de más címen - a fordító tudni fogja.

A processzor leírásának megadását feltételesen kell elvégezni. Az MPlab a beállított kontroller típusát a egy szimbólumban elérhetővé teszi (pl. 16F84 esetén a __16F84 definiált, 16F818-nál pedig a __16F818).

Feltételes fordítási direktívák alkalmazásával a fenti problémák megoldhatók.
(#) Tomi111 válasza Hp41C hozzászólására (») Jún 12, 2009 /
 
Üdv!

Köszi a válaszokat! Az adatlapok már megvannak, csak még nem tanulmányoztam. Csak azért gondoltam, mert egy meglévő programot írtam át, és F10-el lefordítva nem ír hibát.
Ez az eleje:
LIST P=16F818
#INCLUDE "P16F818.INC"
__CONFIG _XT_OSC &_CP_OFF &_WDT_OFF &_PWRTE_OFF
ERRORLEVEL-302

;Port definiciók
#DEFINE be_nya PORTB,0
#DEFINE be_z PORTB,1
#DEFINE be_ny PORTB,2
#DEFINE be_nycs PORTB,3
#DEFINE ki_nya PORTA,1
#DEFINE ki_za PORTA,2
#DEFINE ki_la PORTA,0
#DEFINE ki_nycs PORTB,5
#DEFINE ki_lcs PORTB,6

;változók definicioja
_I1 EQU 0x30 ;idő változói
_I2 EQU 0x31
_I3 EQU 0x32


;Ports Iniciálás

konf:
clrf PORTA
clrf PORTB
banksel TRISA
movlw 0x00 ;mind kimenet
movwf TRISA
movlw B'00001111' ;rb0,1,2,3,-bemenet a többi ki
movwf TRISB
banksel PORTB
movlw 0x00
movwf INTCON
bcf ki_nya ;a kimenetek indulásból 0-ra
bcf ki_za
bcf ki_la
bcf ki_nycs
bcf li_lcs
goto indul

utána jön a progi.
Igaz nem szimuláltam le, arra nem volt még időm.
Nem lenne benne semmi eeprom, A/D, megszakítás. Csak be, ill kimenetek és időzítés egyszerű számolással, nem timerrel. A prg elején írtam át az első két sorban a pic típusát. Szóval akkor nem ilyen egyszerű a dolog.

(nem egyészen így néz ki a progi, csak beszúrás után nincsenek szóközök!)
(#) trudnai válasza Tomi111 hozzászólására (») Jún 12, 2009 /
 
Idézet:
„Köszi a válaszokat! Az adatlapok már megvannak, csak még nem tanulmányoztam. Csak azért gondoltam, mert egy meglévő programot írtam át, és F10-el lefordítva nem ír hibát.”


Tehat syntaktikailag helyes a programod Most mar csak szemantikailag kell helyesnek lennie...
(#) Tomi111 válasza trudnai hozzászólására (») Jún 12, 2009 /
 
Még nincs meg a progi, egy másikkal próbáltam, ami működött 16F84-en. Azt hittem, ha hibátlanul lefordítja, akkor jó is. Értem, nem ilyen egyszerű a dolog.
Akkor elő kell vennem az adatlapokat. Csak annyira nem értek még hozzá. Meg lenne több időm.

Köszi a válaszokat!

Sziasztok Tomi
(#) pepe33 válasza trudnai hozzászólására (») Jún 12, 2009 /
 
A lábakat kimértem ujra , mindegyik vezet és nem zárlatolnak egymással, a 100nf kondikat feltettem a 18F97J60-as panelra, kb 2cm távolságra vanna a procitól.
A VDDCORE/VCAP lábon 10µF kondi pozitív sarka a PIC fele, a másik oldala a GNDre rakva.

Sajnos így sem ismeri meg. Ha rossz a PIC , akkor az áramkörben mért ismeri fel a PICKIT2 ?( igaz felproramozni ott sem tudtam )
(#) mate_x hozzászólása Jún 12, 2009 /
 
Hello!

Most, hogy végre jó az égetőm, lehetne vele valamit építeni is.
Én egy egyszerű órát szeretnék építeni 7szegmenses kijelzővel, olyat, ami ha lehet mutatja a másodpercet is, de azt nem muszáj.
Pic16f84 -gyel kéne megoldani, valaki esetleg nem tud egy kapcsolást és egy forráskódot hozzá? A választ előre is kösz.

üdv:
mate_x
(#) MPi-c válasza mate_x hozzászólására (») Jún 12, 2009 /
 
Miért nem keresel a neten? :google:
Bepötyögöd hogy pl: "clock with pic16f84" és szemezgetsz...
(#) Hp41C válasza Tomi111 hozzászólására (») Jún 12, 2009 / 2
 
Szia!

Hiányzik még az analóg funkciók kikapcsolása a PORTA-n.
Ha a "Kód" gombot használod, megmarad a formázás...
(#) olala hozzászólása Jún 12, 2009 /
 
Sziasztok!

Adott egy PIC18F szériás MCU, aminek a Timer1 moduljához szeretnék egy 32768kHz-es órajeloszcillátort bekötni. Az adatlapból kinéztem, hogy ezt két db 27 vagy 33pF-os kondival tehetem meg. A gond ott van, hogy nem tudtam ilyet beszerezni. Itthon csak 22pF meg 15pF-os van.
Ha két 22pF-os kondit használok, akkor megfelelően fog működni a számláló? Vagy próbálkozzak párhuzamos kötéssel, és akkor négy 15pF-osból csinálok két 30pF-osat?

Köszi a segítséget!

Üdv!
(#) Prince86 válasza Prince86 hozzászólására (») Jún 12, 2009 /
 
Elkezdtem megírni a táblázatot a hőfokmérőhöz de gondok vannak.

A PCL mérete ugye 8bit ami 256 érték tárolására alkalmas.
Az excell táblából amin számoltam kiderül hogy az AD sokkkal többet változik ennél. A 256 értékkel nem tudom átfogni az egész mérési tartományt. Toldjak a szenzorhoz meg az áramgenerátorhoz egy feszosztót hogy ne legyen ekkora mértékű a változás?
Vagy valaki említett itt egy végig rohanós módszert.
Az gondolom úgy működne hogy az AD értéke összehasonlítódna a táblába foglalt értékkel és ha nincs benne akkor marad az előző érték a kijelzőn, ha benne van akkor a táblában talált új érték íródik ki. Ez jó lenne akkor ha el lehetne tárolni egy AD értékhez tartozóhőfok értéket és mindezt egymás után így csak 150 érték lenne.
Talán fel kéne cserélnem a dolgokat és a hőfokértékek lennének a címek és a retlw utáni rész az AD érték? De akkor is csak 8bites érték lehet a retlw után.
Jól bele bonyolodtam pedig azt hittem a hőfokmérés lesz a legegyszerűbb része ennek a műszernek.

hőfok.xlsx
    
(#) trudnai válasza olala hozzászólására (») Jún 12, 2009 /
 
Idézet:
„Itthon csak 22pF meg 15pF-os van.
Ha két 22pF-os kondit használok, akkor megfelelően fog működni a számláló? Vagy próbálkozzak párhuzamos kötéssel, és akkor négy 15pF-osból csinálok két 30pF-osat?”


Szerintem mennie kell 22pF-essel is -- Igazandibol a kristaly adatlapjarol lehetne ezeket kiolvasni. Ha nem megy meg mindig kiprobalhatod a 2x15pF elkepzelesedet...
(#) trudnai válasza Prince86 hozzászólására (») Jún 12, 2009 /
 
Idézet:
„A PCL mérete ugye 8bit ami 256 érték tárolására alkalmas.
Az excell táblából amin számoltam kiderül hogy az AD sokkkal többet változik ennél. A 256 értékkel nem tudom átfogni az egész mérési tartományt.”


Nezd meg a PCLATH es PCLATU (ha van ilyen a PIC-edben) regisztereket! Keress vissza itt a forumon, hogy hogyan kell laphatar fuggetlen szamitott goto-t csinalni -- en is irtam ilyen peldat szoval biztos, hogy van, csak hasznalni kellene a keresot
(#) Prince86 válasza trudnai hozzászólására (») Jún 12, 2009 /
 
Kerestem de nincs eredmény. Keresőbe írtam a PCLATH kifejezést és a hozzászólásokat állítottam be keresési helynek de egyik hozzászólásban sem találam.

Megpróbálom mégegyzser.

Jah és mégegy ötlet: Mi lenne ha 4el osztanám az AD értékeit? Akkor a 0 és 150 közti AD érték különbség is a negyedére csökkenne. Aztán kivonnék annyit mindegyikból hogy a 0fok a nulladik címre essen (PCL szerint nulla) Aztán feltölteném a táblázatot a negyedelt értékeknek megfelelően. Amikor megkapom az AD értékét akkor elosztom 4el ( 2 db jobbra shift ha minden igaz) és kivonom belőle azt a bizonyos értéket aztán megnézem hogy a táblázatban benne van e az érték úgy hogy a tábla legnagyobb címének megfelelő értékből kivonom az AD értéket és ha nincs CARRY akkor nem lépte túl ha van akkor mát a táblán kívülre esik. Szerintetek?
(#) Tomi111 válasza Hp41C hozzászólására (») Jún 12, 2009 /
 
Szia!

Azt nem is tudom hogyan kell. Mármint az analóg funkciókat kikapcsolni. Olyan a 16F84-ben nem volt.
Ezt gondolom elég a program elején egyszer kikapcsolni, ugye?

A kód gombot még nem használtam, na ezt is tudom!
(#) trudnai válasza Prince86 hozzászólására (») Jún 12, 2009 /
 
Idézet:
„Kerestem de nincs eredmény. Keresőbe írtam a PCLATH kifejezést és a hozzászólásokat állítottam be keresési helynek de egyik hozzászólásban sem találam.”


Itt van: #245473

Ja es nem csak az a baj, hogy hosszu a table, hanem ugy altalanossagban, hogy lap hatart atlep. Tehat hiaba van 150-es tablad, ha a 100. elemtol kezdodoen a tabla tobbi resze masik lapra esik...
Következő: »»   502 / 1319
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem