Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Áramigény nem igazán van. A PIC a feszültség szintjéből dönti el, hogy égetés vagy normál üzem van, az MCLR lábon nem kap tápot.
Még egy kérdés...Ha a GSM modul 3,3 V os és egy tápról jár a PIC el akkor ugye nem kell a soros illesztő? (MAX232). Ez gondolom csak a PC / GSM modul közé kell.
Köszi
Ezt azért meg kellene nézni a modul adatlapjában, végül is egy MAX232 is tud +/- 12 V-ot generálni 5 V-os tápról, és lehet, hogy (pont egy PC-vel való összeköthetőség érdekében) a modul soros bemenete szabványos, illesztővel kezdődik. Ha mégsem kell hozzá illesztő, akkor viszont invertálni kell a jeleket.
Megnéztem és ezt találtam, ezek szerint nem kell az illesztés. (szerintem... ) Inverternek egy 74LVCG14 et gondoltam, ez smidth triggeres. Az szerinted jó lesz?
Hm, módosítok a korábbi hsz-emen: sem illesztő, sem inverter nem kell neki, mert a logikai szintjei egyeznek azzal, ahogyan a PIC vezérli a vonalat. Egy ellenállásosztót talán nem árt beletenni, hogy kb. 3 V legyen a magas jel 5 V helyett, és ne léphesse túl az írt 8 mA-es áramot.
Ok köszönöm, ez jó hír. Tehát a PIC TX lábát kötöm a modul RX lábára minden illesztés / inverter nélkül. Még annyit hogy az autobauding támogatás elvben azt jelenti hogy 1200 - 115200 bps ig bármit beállíthatok a modulnak és az automatikusan felismeri? Vagy én értek félre valamit? (Autobauding support bit rates from 1200 bps to 115200 bps)
Én úgy értelmezem, hogy a PIC-en állíthatsz be, amit akarsz, és a modul ismeri fel.
Igen, én is így értettem csak rosszul fogalmaztam. Köszönöm a segítséget
Idézet: „Ha a GSM modul 3,3 V os és egy tápról jár a PIC el” Ez azt jelenti, hogy a PIC is 3,3V-ról megy? Akkor nem kell szintillesztő sem, egyébként kell.
És ha mondjuk 5 voltról megy a PIC és 3 voltról a GSM modul akkor milyen szintező megoldást javasolnál ?
Próbáltam már többfélét de valahogy egyikkel sem volt tökéletes dolog.A PIC nem tudja rendesen venni az adatokat.
Igen, mind a két eszköz (PIC és a GSM modul ) 3,3V ról járna ugyanarról a tápról, tehát nem kell. Köszönöm.
Tökéletes csak egy illesztő busz lehet(74VHCT04A), ha mindkét irány szükséges.
Valaki megnézné nekem a pic24fj128ga010-es adatlapját, hogy jól kötöttem e be az ic-t?
13-as MLRC 15 VSS 16 VDD 24 clock 25 data 15,16-os lábak között 3V van. ha igen akkor már csak azt nem értem miért nem ismeri fel az eszközt az icd 2-es.
Jó sok lába van...
A többi tápot (Vdd: 2, 37, 46, 62; Vss: 36, 45, 65, 75) nem kell bekötni? Meg az EMUCx, EMUDx lábakat is említi az ICD2-vel való kommunikációhoz, gondolom, debug módban használja. Mellesleg itt az adatlap.
Mivel kobold csak kérdést tett fel, így én nyomatékosítom, hogy minden táp lábat be kell kötni, valamint szűrni(100n)!
Mért kell bekötni az összes táplábat? Megmértem ott a 3v a 2-esen is, persze bekötöm, csak mi a fenéért kell? Nem akarok megsérteni senkit, de ez nem csak amolyan "urban legend"? Nem hajtani akaor egyenlőre, csak hogy ismerje fel az icd2.
Szerinted miért kell kivezetni ennyi helyre? Ha nem kéne bekötni, akkor minek ennyi láb?
Egyébként a válasz igen röviden annyi, hogy a CMOS digitális áramkörök impulzus áramfelvétele igen magas mikor több kapu szintet vált. (járj utána a részleteknek(Kezdő kérdések...)) Idézet: „ egyenlőre->egyelőre!”
Most nem kötözködésből, de tényleg be kell kötni mindet, ha csak éppen fel akarod éleszteni? Néztem az adatlapot (16F946), nem láttam erre utalást, bár nem bújtam végig betűről betűre. Pl. az Avdd és Avss használatára sem láttam semmit - ez most kevésbé érdekel, de azért jó lenne tudni, hogy kell-e kötnöm valahová.
Józan ésszel azt gondolnám, hogy a több Vdd és Vss kivezetés azért kell, hogy ha a chipből több áramot akarsz I/O-val kivenni, akkor az bele is tudjon jutni valahol. De amíg a kimenetek teljesen terheletlenek, addig nem látom különösebb értelmét. Jó lenne látni erről valami Microchip hivatalos véleményt.
Ha bekötöd mindet, akkor ha netán nem megy valamiért a történet, legalább ez kizárható.
Nem tudhatod egyébként, hogy élesztéskor milyen az áramfelvétel(reset folyamat, égetéshez való felkészülési folyamat). Sokszor a hidegítő kondi hiánya is számit, még akkor is, ha csak egy láb van bekötve egy LED-re. Szóval én ezzel nem kísérletezgetnék.
Az rendben van, hogy nyílván jobb a békesség alapon bekötözgeti az ember. Viszont itt van összesen 5 Vdd és 5 Vss láb, ami a 10x10mm TQFP64 huzalozását eléggé megnehezíti, ha vasalós techikára alkalmas NYÁK-ot próbálok tervezni hozzá.
Mellesleg pl. pont egy telepes táplálású, LCD kijelzős óra lenne az, amit meg akarnék mérni a gyakorlatban. Régen rossz lenne, ha több mA áramogyasztással kellene számolnom, ami mondjuk indokolhatná a sok tápkivezetést.
Épp ezért berzenkedek ellene, próbapanelen van a 3v-os stabil táp, 3V-ot ad, most onnan 10 helyre kell madzagozni, csak azért hogy élesszem a chipet, és az icd felprogramozza. Kicsit morbid. Azon az oldalon kötöttem be ahol a pgc pgd lábak vannak, de akkor vágok majd 5 zöld meg 5 sárga madzagot, és remélem, hogy mindet jó helyre dugom.
Sziasztok!
Elkészült az égetőm, elég érdekesen produkál. PIC16F877, IC-Prog, JDM Először is azt szeretném megkérdezni, PIC-ről olvasáshoz kell ugyanúgy 15V táp, vagy elég bedugni a gépbe? Érdekesség: Mikor a PIC-hez volt kötve az égető, csupa nullásokat kaptam IC-Prog-ba, viszontha simán az égetőt néztem, jól jelezte: "3FFF" Mindkét esetbe ugyan az volt, akár kapott tápot, akár nem. A PIC ment tönkre a hónapok során, vagy az égető is rossz?
JDM szó leírása után ne csodálkozz, ha soha az életben nem érkezik majd válasz a kérdésedre...
És akkor milyen égető van, ami működik is?
Mit használtak, mikor nem volt PICKit2?
MPLAB- ban programozok, de sehogy sem sikerül egy másik .asm ből meghívni egy eljárást…
Tudna valaki tanácsot adni? //átírtam a csúnya, gusztustalan sok nagybetűt kisbetűre //moderátor
Egy-két sor, vagy kódrészlet jót tenne, hogy hatékonyabban tudjunk segíteni.
Egyébként egyrészt extern-nel kell a külső eljárást a tudtára adni a fordítónak:
másrészt valahol global-nak kell definiálni a meghívni kívánt függvényt:
Egy rövid kódrészlet:
A kérdés, hogy mit tartalmazzon az LCD_RUTIN.TXT a hívandó részleten kívül.
szSzilard,
1. Az LCD_rutin ne TXT legyen hanem INC - ez ugyan csak konvenci, megis erdemes betartani, igy fogod tudni, hogy az egy include file... 2. Az LCD_RUTIN.ASM -edben kellene lennie a "global Kiir" -nek... 3. Az LCD_RUTIN.INC -ben az "extern Kiir" -nek... 4. programodbol ahol beincludalod az LCD_RUITIN.INC-et ott mar siman hivhatod a Kiir-t minden tovabbi buveszkedes nelkul. Nagyjabol ugyanaz amit Szilva leirt, kiveve, hogy o nem INC-be tette az "extern" hivatkozasokat, ha jol ertem?
A probléma nagy! Ime, csatolva a pontos helyzetkép!
|
Bejelentkezés
Hirdetés |