Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   269 / 1320
(#) Báddzsó hozzászólása Aug 25, 2008 /
 
Sziasztok!
16F690-es picemet szeretném leváltani 18F-es szériából valamire, de egyszerűen nem találok megfelelőt.
Ami kell:
- eusart
- 8 i/o pin egy porton úgy, hogy ne azon legyen az usart,
- 4kszó flash
- még 2 i/o lábacska
semmi más nem kell, tehát elég lenne egy 14-15 lábú chip is (csak az ilyen formában nem létezik)
ti sem találtok ilyesmit? persze 28 meg 40 lábú szörnyet nem szeretnék használni...
köszönöm!
(#) trudnai válasza Báddzsó hozzászólására (») Aug 25, 2008 /
 
18F1230 / 1330 nem jo? Igaz 18 labu, de nekem ugy tunik alkalmas lehet a megadott parameterek szerint.
(#) watt válasza Báddzsó hozzászólására (») Aug 25, 2008 /
 
Töltsd le a MAPS-t és használd. Pont erre van kitalálva!- MAPS -
(#) Báddzsó válasza trudnai hozzászólására (») Aug 25, 2008 /
 
énis pont ezeket néztem ki magamnak, csak egy a gond, hogy pont úgy van az egyetlen 8 bites port, hogy benne van az rx, tx láb.
watt: köszi, töltöm -> nézem, (amúgy a héten állok neki a pickit2 klónod építésének...)
(#) watt válasza Báddzsó hozzászólására (») Aug 25, 2008 /
 
Első égetőd lesz,vagy van már egy egyszerűbb?
(#) Báddzsó válasza trudnai hozzászólására (») Aug 25, 2008 /
 
trudnai: hülye vagyok, 1320al kevertem a 1230-at, stbstb, a 1330 úgy néz ki jóó! köszi!

watt: van 2 jdm, meg egy 3byte féle. (nagyon jóóók )
(#) googa válasza trudnai hozzászólására (») Aug 25, 2008 /
 
Hát, mostmár ezt is tudom, hogy hol keressem, de egyébként már feltűnt korábban, hogy egyes programokban szépen ki vannak írva a dolgok. Azért nagyon örültem ám, mikor rájöttem, hogy miként áll össze ez a konfig szó, főleg, hogy hexában voltak megadva, azt sem tudtam mi van....de már tudom.
(#) googa hozzászólása Aug 25, 2008 /
 
Melyik PIC most a PIC-ek királya szerintetek?
(#) watt válasza googa hozzászólására (») Aug 25, 2008 /
 
Én sokszor ma is bitekkel írom ki a konfigot, nem kell hozzá más, mint a nyitott adatlap!
Persze van, hogy használom a neveket is. Mindegy, mert ahhoz is kell adatlap. Adatlap a varázsszó és figyelem.
(#) watt válasza googa hozzászólására (») Aug 25, 2008 /
 
Hiábavaló kérdés. Az SOT5-ös foglalatú is király, maga nemében, és a 32bites százlábúak is azok.
Az a király, ha ki tudod választani a feladatnak legmegfelelőbbet.
(#) melcher hozzászólása Aug 25, 2008 /
 
Sziasztok!
Egy kis segítségre szorulnék.Építettem egy JDM-et (azt amelyik a nulláról a robotokig leírásban az első). Rá is égettem a teszt.hex filet,minden tökéletesen működött.Továbbis akartam lépni Ezért letöltöttem egy MPLAB-ot fel is telepítettem. A cikk szerint létre kell hozni egy új projectet. A harmadik lépésnél meg kell adni az asm_elso.mcp filet, amit én nem tudok megszerezni. Sekítene valaki?
(#) watt válasza melcher hozzászólására (») Aug 25, 2008 /
 
Te is írod, hogy nem megszerezni kell, hanem meg kell adni, azaz létre kell hozni. Új project létrehozása stb. A cikket el kell olvasni, mert az is lehet, hogy le lehet tölteni ezt az állományt az ott megadott linkről. Mindenesetre nem fogsz találni a neten olyan asm_elso_mcp-t ami neked kell. Már eleve a kérdés is komikus!
(#) elektroby hozzászólása Aug 26, 2008 /
 
Sziasztok!
Két probléma megoldásábam kérem a segítségeteket.
1. Nem tudom rábeszélni a PIC18F4550 MSSP modulját, hogy kommunikáljon I2C módban. Ha "kézzel" leprogramozom, akkor működik az I2C (perifériák működnek) Hiába bújon az adatlapot, nem jövök rá hogy miért nem megy. Azt se mondja fapapucs.
Tudna-e valaki dobni egy ASM kódot ami Pl. kiküld a 0x76 (01110110) címre 0xAA-t (10101010) (MSSP modult használva).

2. Nem értem miért nem tudok szubrutint vagy macrót hívni megszakításkezelő rutinból. Ha az alábbi kódot besütöm a PIC-be akkor az első megszakításnal olyan mintha lefagyna a (a megsakításkezelőből valahogy kikeveredik, mert az RE2 villog ezerrel) s után nem hívná meg a megszakitási rutint. Ha "kipontossvesszőzöm" a CALL-t, akkor fut rendesen.
Természetesen a "főprogramban" lévő call megy rendesen.

HighInt
BCF INTCON,7 ;Disables Global int
MOVFF PORTD,I2C_Dat01 ;PortD to

CALL LED_VILL

RLNCF I2C_Dat01
RLNCF I2C_Dat01
RLNCF I2C_Dat01
RLNCF I2C_Dat01
MOVFF I2C_Dat01,PORTD

BTFSS PORTB,RB4
BCF PORTE,RE1
BTFSC PORTB,RB4
BSF PORTE,RE1

BCF INTCON,RBIF ;RB port change int flag cleared
BSF INTCON,GIEH ;Enables all HIGH priority int.
RETFIE

LowInt:
NOP
; Low Interrupt rutin comes here

Main:
BCF INTCON,RBIF ;RB port change int flag cleared
BSF INTCON,GIEH ;Enables all HIGH priority int.

CALL LED_VILL

LOOP:
CALL Delay
BTG PORTE,RE2
GOTO LOOP

Delay
DECFSZ Delay1,1
GOTO Delay
DECFSZ Delay2,1
GOTO Delay
RETURN

LED_VILL
BTG PORTE,RE0
RETURN
(#) potyo válasza elektroby hozzászólására (») Aug 26, 2008 /
 
Elvileg semmi akadálya annak, hogy a megszakítási rutinból szubrutint hívj. Viszont egy direkt a lábra (áramkorlátozó ellenállás nélkül) kötött led már simán okozhatja, hogy a leded nem villog. Mindezt azért, mert amikor a portra írunk, akkor a LATx regiszterekbe kell írni, és nem a PORTx regiszterekbe.

Arról szokj le, hogy ezt írod: DECFSZ Delay1, 1
Helyette DECFSZ Delay1, F formát használd (illetve DECFSZ Delay1, W, ha oda kell tenni az eredményt).

A megszakításkezelőből sosem szabad macerálni a GIEL és GIEH biteket. Azokat maga a hardver kapcsolja be illetve ki, kézzel nem állítgatjuk a megszakításkezelőből.

A fentiek mind ellettek már mondva itt a témában, így egyértelmű, hogy nem olvastad el. Pedig azzal kellett volna kezdened, mielőtt bárminek nekiállsz!
(#) trudnai válasza elektroby hozzászólására (») Aug 26, 2008 /
 
Szia elektroby,

Most hi/low interruptokat is hasznalsz? Vagy a prioritasok ki vannak kapcsolva (sem configot sem pedig inicializalast nem latom, azt sem, hogy hogy ugrasz az ISR rutinokra, a vektor jo cimen van-e stb?)

Ami feltuno nekem, hogy a LOOP...GOTO LOOP kozott nem hivogatod a LED_VILL rutint, tehat vagy az RE2-n is van egy LED es arrol beszelsz, vagy valami mas miatt villodzik a LED-ed (pl a chip allandoan resetalodik)

Nehany tovabbi eszrevetel:

1. GIE / GIEH / GIEL -t soha (ertsd soha) nem piszkaljuk interrupt kezelobol! Azt automatikusan megteszi nekunk a PIC mikor az interruptot meghivja ill ujra engedelyezi mikor RETFIE-t vegrehajtja... Csak problema van belole.

2. A LowInt ha nem hasznalod, akkor vagy ne is tedd ki (marmint ha nincs interrupt prioritas bekapcsolva), vagy NOP helyett egy RETFIE a biztonsag kedveert...

3. Soha ne irkalj szamokat ha vannak szimbolikus megfeleloik (pl INTCON,7, vagy DECFSZ Delay,1)

4. CALL es GOTO helyett lehet szerencsesebb lenne BRA es RCALL mivel azok egy programszon helyezkednek el szemben a GOTO es CALL 2 program szoeval.

5. Remelem ez csak egy teszt, es egyetlen utasitas kedveert nem csinalsz kulon interruptot

6. A macro-t nem lehet "hivni", az nem szubrutin hanem egy behelyettesites...

7. 18F-nel mar nem szokas kozvetlen a PORTx regiszterre firkalni, helyette a LATx regisztereket illik hasznalni - ld. meg RMW hiba

Tamas
(#) elektroby válasza trudnai hozzászólására (») Aug 26, 2008 /
 
Tisztelt Tamás és Potyo!
Először is köszi a gyors válaszokat!
A későbbiekbken használni akarom a hi/low interruptokat is, ezért szerepel a low int helye. Ez csak egy lecsontozott példa a probléma bemutatásához.
Természetesen RCON-ban IPEN be van kapcsolva.
A LOOP...GOTO LOOP között BTG PORTE,RE2 villogtat egy másik ledet ami természetesen ellenálláson keresztül van a PIC-re kötve.
Köszi hogy felhívtátok a figyelmemet a GIE/GIEH kapcsolgatására (illetve nem kapcsolgatására)
Számokat azért irkáltam, mert az adatlap ezt mondta.
BRA-t és RCALL-t azért nem használom mert csak 1k-t tudnak ugrani ha jól értem, így a későbbiekben még gondot jelenthet. Azért köszi a tanácsot!
Mint irtam ez egy lecsupaszított példa. Nem írok megszakítást egy utasítás miatt.
Tudom, hogy a macrot nem hívjuk de a hibajelenség ua volt akkor is ha macrot használtam
A LATx-re azt mondja az adatlap, hogy "Alternate method to...", de ha igy illik akkor így illik.

Az "I2C MSSP modullal" problémára van ötletetek?

elektroby
(#) elektroby hozzászólása Aug 26, 2008 /
 
LowInt uáni kettőspont
A hiba mechanizmusár nem éretem, de a törlésével a hiba megszűnt!
(#) watt válasza elektroby hozzászólására (») Aug 26, 2008 /
 
Idézet:
„BRA-t és RCALL-t azért nem használom mert csak 1k-t tudnak ugrani ha jól értem, így a későbbiekben még gondot jelenthet.”

Felesleges aggódnod, mert ha nem tud ugrani, a fordító kiabál. Addig meg tök felesleges kétszer annyi memóriaterületet elhasználni, mint szükséges. Megasztán ha lehet valamit jól csinálni, és nem kerül semmibe, akkor miért ne!
(#) Mikrosilver hozzászólása Aug 26, 2008 /
 
helló az lenne a kérdésem hogy ez az égető áramkör müködik e? A segitséget előre is köszönöm!

3bmi_pps.gif
    
(#) MPi-c válasza Mikrosilver hozzászólására (») Aug 26, 2008 /
 
Szerintem az utóbbi napokban ez már szándékos hangulatkeltés Szerintem kezd itt!
(#) potyo válasza MPi-c hozzászólására (») Aug 26, 2008 /
 
(#) MPi-c válasza potyo hozzászólására (») Aug 26, 2008 /
 
Aki "régi motoros", ne kattintson rá!
(#) potyo válasza MPi-c hozzászólására (») Aug 26, 2008 /
 
Tegnap kipróbáltam, amikor Topi bejelentette. Most csak láttam, hogy belinkelted
(#) googa válasza MPi-c hozzászólására (») Aug 26, 2008 /
 
Te jó ÉG! Tranyóka alig akart eltűnni. Pedig MPi-c felhívta a figyelmemet, hogy ne kattintsak rá.
(#) Báddzsó válasza Mikrosilver hozzászólására (») Aug 26, 2008 /
 
a kapcsolás működik, nekem is van egy, áramkörön belül ne akard vele progizni a picet. Túl nagy programot már nem viszi át mert lemerül a kondi...
Amúgy meg használd a keresőt, mert párszor már biztos meg van válaszolva a kérdésed!
(#) Csaplar hozzászólása Aug 26, 2008 /
 
Sziasztok!

MCC18-hoz lenne némi kérdésem.

Van egy adott kapcsolásom, rajta egy 4x20-as kijelző és Pic18F4520-as. Szeretném használni a fordítóhoz csatolt XLCD modult.
Mit kell átírnom ahhoz, hogy használni tudjam? Az XLCD-h-ban a lábakat már átírtam, de nem működik.

Hol kell beállítani, hogy az órajelem 20Mhz, hogy a delayXLCD-knél a késleltetés megfelelő legyen?

Hogyan tudom csak a p18f4520.lib-et újrafordítani?

Valamint kellene még a modulból az sw_uart is, de az asm fájloknál ott sem találtam, hogy a késleltetésekhez szükséges órajelet hol kellene beállítanom.

Tudnátok segíteni?

Köszi és üdv.
Zoli
(#) trudnai válasza MPi-c hozzászólására (») Aug 26, 2008 /
 
Idézet:
„Aki "régi motoros", ne kattintson rá!”


Aki regi motoros es rakattint az kattintson csak ra
(#) watt válasza Báddzsó hozzászólására (») Aug 26, 2008 /
 
Ha megépíti és itt segítséget kér, akkor csak és kizárólag hozzád fogjuk irányítani a temérdek kérdésével, ha nem működne neki, aminek esélye kb. 80%.
(#) watt válasza MPi-c hozzászólására (») Aug 26, 2008 /
 
Ez zaklatásnak minősül egy idő után!
(#) Mikrosilver válasza Báddzsó hozzászólására (») Aug 26, 2008 /
 
Köszi szépen a választ máskor majd nem terhellek beneteket a kérdéseimel.Bocs hogy zavartam.
Következő: »»   269 / 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