Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   702 / 1320
(#) tony994 hozzászólása Márc 15, 2010 /
 
Sziasztok!

Nem nagyon értek a PIC-hez (még ) ezért a segítségeteket kérném. Azt kéne megvalósítanom hogy 5 led-et (valójában 5 betű) kapcsolgassak. A PIC 16F84A, és magas jel kéne. A ledek bekapcsolása között 0,5 másodpercnek kell eltelnie , utánna ha az összes felgyulladt 10 másodpercig kéne világítania. Aki megtudná nekem írni a programot és felis töltené, nagyon hálás lennék.

Előre is köszönet!

Üdv:tony994
(#) lalca válasza tony994 hozzászólására (») Márc 15, 2010 /
 
Ajánlom a Flowcode-ot.Nézz be a topikjába.Lehet,hogy nem a legtömörebb programot készíti,de 2 perc megírni.

Flowcode2.fcf
    
(#) kissi válasza peti13 hozzászólására (») Márc 15, 2010 /
 
Ezt írtad korábban:
1. CLRF CCP1CON
2. BSF CCP1CON,CCP1M1
3. BSF CCP1CON,CCP1M2

Erre azt írtam, hogy nem jó!

A mostanira azt írom, hogy jó !

Steve
(#) nyemi válasza sucuka hozzászólására (») Márc 15, 2010 /
 
Szerinted akkor így jó lesz ?Mert amit linkeltél ott Hp41C hozzá szólása elég zavaros.Csatolom az adatlapban levőt ott nem a CLRF utasítást használja. Miért?Üdv nyemi.

ORG 0x0004
MOVWF W_MENT
SWAPF STATUS , W
CLRF STATUS
MOVWF S_MENT
CALL megszakítás kezelés
SWAPF S_MENT , W
MOVWF STATUS
SWAPF W_MENT , F
SWAPF W_MENT , W
RETFIE

;Regiszterek
;W_MENT=0x70
;S_MENT=0x71
(#) tony994 válasza lalca hozzászólására (») Márc 15, 2010 /
 
Helló!

ÉS mivel tudom megnyitni??

üdv:tony994
(#) lalca válasza tony994 hozzászólására (») Márc 15, 2010 /
 
Hát a Flowcode nevű progival. Feltölthetem a hex-et is,csak gondoltam megnézed.B0-tól B4-ig vannak a ledek,5K-100pF RC oszcival.Kb. 1 Mhz.
(#) tony994 válasza lalca hozzászólására (») Márc 15, 2010 /
 
Úgy nem tudod megcsinálni h belső oszival mennyen?? Üdv!
(#) kacsandiz hozzászólása Márc 15, 2010 /
 
Sziasztok!

Az eddigi válaszok alapján a következőkre jutottam:

Egy ilyen égetőt fogok építeni szerintem, már ha senkinek nincs ellenjavaslata: Link
Programot hozzá pedig ICprogot gondoltam, remélem így jó lesz.

A PIC-el kapcsolatban még mindig nem jutottam döntésre. Nem tudtok ajánlani valamit a hestore.hu-ról, ami olcsó, és kezdésnek megfelel, valamint kompatibilis a fenti égetővel? Így olcsón kijönne minden, ha ezt is innen meg tudnám rendelni.
(#) vicsys válasza tony994 hozzászólására (») Márc 15, 2010 /
 
Belső oszcival F84-nél? Esetleg F628-nál... (Ugye megnézted az adatlapját a 84-nek?)
(#) tony994 válasza lalca hozzászólására (») Márc 15, 2010 /
 
Igen Akkor 16F84A ra 4 MHZ-s osszival megtudod csinálni? Nagyon megköszönném!

üdv:tony994
(#) vicsys válasza tony994 hozzászólására (») Márc 15, 2010 /
 
De most komolyan! Miért nem jó neked egy darab ellenállás+ 1darab kondenzátor? Helyette beraksz egy kvarcot + 2db kondit? (Te tudod...)
(#) lalca válasza tony994 hozzászólására (») Márc 15, 2010 /
 
Az oszci nem lényeg,nem kell halálpontosnak lennie.Nem egyszerűbb egy R-C tag?Sőt,ha egy 10K-s potit raksz,még a sebességet is tudod állítani,igaz,szűk határok közt.Inkább 22K-s poti 47pF-el.
(#) tony994 hozzászólása Márc 15, 2010 /
 
Kipróbáltam próbapanelon 4 Mhz-n és nem ment :S 16F628A is van , arra esetleg megtudod csinálni belső osszival? üdv!
(#) lalca válasza tony994 hozzászólására (») Márc 15, 2010 /
 
Elvileg ez 628A-ra.Jaj,bocs, el volt állítva a fordító,és elfelejtettem.Szóval ez 628A-ra.

Flowcode2.hex
    
(#) dudzsi válasza lalca hozzászólására (») Márc 15, 2010 /
 
Hali.
Lalca megtudod nekem mondani, hogy miért nem akar az INT megszakitás müködni? Elméletileg bekellene lépnie a manualis_kapcsolo makroba.
(#) szilva válasza nyemi hozzászólására (») Márc 15, 2010 /
 
Az adatlapban is szó van a regisztermentésekről "context saving during interrupt" vagy valami hasonló címen. Nézd meg azt, mert a mentés mikéntje sem teljesen mindegy (a flagek miatt)!
(#) Hp41C válasza nyemi hozzászólására (») Márc 15, 2010 /
 
Szia!

Jó lesz, amit írtál (a megszakítási rutinban a 0. lap azaz a 0x20..0x7F közöti terület lesz kijelölve)! A "call megszakítás kezelés" helyére jobb beleírni a rutint, mert a 16F - en általában 8 mélységű a stack (visszatérési címeket tárokó zsák memória).

A megszakítási rutinba belépve az RP1 és az RP0 bitek értéke tetszőleges lehet (mind a 4 lapot használhatja az alap program). Ha a megszakítási rutin még indirekt memória elérést is végez, az IRP értékét is be kell állítani. A három bit törlése a bcf utasításokkal 3 részletben, a clrf utasítással egyszerre történik meg... (A clrf STATUS ugyan a többi 4 bitet is törli, a Z-t pedig 1 -re állítja, de ezek értéke amúgy sem ismertek a megszakítási rutin indulásakor, a kilépés előtt meg visszaállítjuk az eredeti értéküket...)

Szia
(#) nyemi válasza Hp41C hozzászólására (») Márc 15, 2010 /
 
Köszönöm a választ most már értem a kódot leszimuláltam szóval minden tiszta. Persze nem hívok semmit a megszakításból csak nem akartalak titeket terhelni a program többi részével meg persze így áttekinthetőbb, ha más is olvassa. Üdv. nyemi
(#) lalca válasza dudzsi hozzászólására (») Márc 15, 2010 /
 
Először is,megszakításhoz ne konfiguráld A2-t bemenetként.Töröld.Még így sem megy,mert valszeg bugos a flowcode.De talán a flowcode topicba kellene ezt.
(#) sucuka válasza nyemi hozzászólására (») Márc 15, 2010 /
 
CLRF csak törli a regiszter értékét.
A SWAPF meg azért kell, mert ez nem szól bele a Z bit értékébe.
Remélem jól írtam, ha mégse javítsatok ki (és kövezzetek meg )

Persze jól elkéstem a válasszal, mert délután óta ugrott egy oldalt a topik, én meg a böngésző elmentett folyamatával jöttem az oldalra
(#) Attila86 hozzászólása Márc 16, 2010 /
 
A CLKO kimenet elé be lehet kapcsolni előosztót? (PIC18F2520)
(#) icserny válasza Attila86 hozzászólására (») Márc 16, 2010 / 1
 
Eleve be van kapcsolva egy 1:4-es előosztó (azaz nem Fosc, hanem Fosc/4 megy ki). További leosztásra nem látok lehetőséget az adatlapban.
(#) Amarton válasza Attila86 hozzászólására (») Márc 16, 2010 /
 
Szerintem az arra való, hogy a belső órajelet (el)kalibráld (gyárilag kalibrált). Fosc/4.
Ha más freki kell, akkor valamelyik timer és megszakítás.
Az is elég pontos.
(#) icserny válasza Amarton hozzászólására (») Márc 16, 2010 /
 
A megszakításra semmiképp sem bíznám, de az Ouput Compare vagy a PWM kimenet hardveresen is elő tudja állítani a kívánt frekvenciájú négyszögjelet.
(#) Attila86 válasza icserny hozzászólására (») Márc 16, 2010 /
 
Igen, csak az áramkör már kész és ezek a kimenetek már fel lettek használva másra. Egyetlen szabad I/O-m van amire eredetileg LED-et kötöttem de most jó lenne ha egy kis piezo hangszóró lenne a helyén.
(#) watt válasza Attila86 hozzászólására (») Márc 16, 2010 /
 
A piezónak bármi jó, akár megszakításból való jelkeltés, vagy egyéb megoldás erőből, ha kifér a prociidőből. Ha van valami gyors megszakításod(2KHz körüli) akkor egy flag-el meg lehet oldani a csipogást...
(#) Hp41C válasza Attila86 hozzászólására (») Márc 16, 2010 /
 
Szia!

Van olyan csipogó, amiben belső (2 -2.5 kHz -es) oszcillátor is van, annak csak a táp kell...

Szia
(#) Attila86 válasza watt hozzászólására (») Márc 16, 2010 /
 
100ms-os és 5ms-os megszakításaim vannak, de akkor csinálok egy 2kHz-eset is.

Hp41C!
Ilyen piezot nem is láttam még. Hol lehet ilyet kapni?
(#) Hp41C válasza Attila86 hozzászólására (») Márc 16, 2010 /
 
Szia!

Pl. a Lomex keresőjébe írd be "Buzzer self"....

Szia
(#) icserny válasza Attila86 hozzászólására (») Márc 16, 2010 /
 
Idézet:
„Ilyen piezot nem is láttam még. Hol lehet ilyet kapni?”

Például itt!
Következő: »»   702 / 1320
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