Fórum témák
» Több friss téma |
Tápellátási és szűrési problémákra tudok gondolni. Stabilizátor kell(pl. 78(L)05, vagy hasonló, rajta kb. 1..10µF az 5V-os ágon + 100n. PIC-re 100n a táplábakhoz közel, felesleges huzalozásokat kiiktatni stb. Bemenetekre konfigolt lábakon 10k felhúzó, vagy lehúzó, vagy kimenetnek kell konfigolni. (Nagyon sokszor leírtuk ezeket érdemes olvasni a topicokat!)
A tápellátást az LPT programozótól "lopom", szóval ott a kondik megvannak. A Vpp lábon kívül (mert az csak bemenet lehet, de felhúzom 10k-val Vdd-re) mindegyik más láb kimenetnek van konfigurálva. Tettem egy 100nF-os kondit a uC Vdd és GND lába közé, de úgy egyáltalán nem működött. Nélküle viszont néha villogott, amint rákapcsoltam az 5V-ot. De nem mindig. Sőt nagyon sokszor nem, csak elvétve. És arra is rájöttem, hogy az LPT csatlakozótól független a dolog, mert LPT csati nélkül is villogott a LED, szóval annak sok köze nincs hozzá.
A leírásod alapján olyan káosz van, hogy nem látok megoldást jelenleg. Rajzold le pontosan a jelenlegi állapotot(minden kondit, ellenállást hiánytalanul!) és készíts fényképeket, amin látható a kivitel és a bekötések. A 100n-s kondi a Vdd lábra kötelező, ha azzal nem működik, akkor valamit nagyon elrontottál!
Oké, oké, nemsokára megcsinálom és jelentkezem (valószínűleg hétvégén majd). Jelenleg nagyon el vagyok havazva.
Oké, csak gondoltam, hogy jelzem, hogy nem tűntem el.
Sziasztok!
Lenne egy olyan problémám egy Pic12f508-assal, hogy ha c nyelven írok rá vmilyen programot, a Gpio2-es lábát egyszerűen nem bírom rávenni, hogy kimenetként működjön. Ha viszont megírom assembly-ben, akkor ott viszont működik. Mostmár nagyon bosszant, mert ugyan meg tudom írni assembly-ben is, de a C nyelvet jobban szeretem és jobban is tudom. Valaki nem tudna segíteni, hálás lennék érte. Esetleg forráskód részletet is feltehetek. Köszönöm előre is! Idézet: „Esetleg forráskód részletet is feltehetek.” Az nem árt.
LIST P=12F508 ;HASZNÁLT PICTIPUS
#INCLUDE "P12F508.INC" ;SZIMBÓLUMHALMAZ MEGADÁSA __CONFIG _MCLRE_ON&_IntRC_OSC&_CP_OFF&_WDT_OFF ;KONFIGURÁCIÓS BITEK BEÁLLÍTÁSA #define relay b'00000100' CBLOCK 0X07 ;ÁLTALÁNOS CÉLÚ REGISZTEREK DEKLARÁLÁSA T1 T2 ENDC ;REGISZTERBLOKK VÉGE ORG 0 ;KEZDŐCÍM GOTO START START MOVLW B'11001000' TRIS GPIO ;GPIO-PORT IRÁNYÁNAK MEGHATÁROZÁSA CLRF GPIO MOVLW B'11010000' OPTION ;---------------------------------------------------------- VISSZA: MOVLW relay MOVWF GPIO CALL DELAY MOVLW B'00001011' ;11 MOVWF GPIO CALL DELAY GOTO VISSZA DELAY: MOVLW d'150' MOVWF T1 DEL: MOVLW d'255' MOVWF T2 DEL1: NOP NOP NOP NOP NOP NOP NOP NOP DECFSZ T2,f GOTO DEL1 DECFSZ T1,f GOTO DEL RETURN END
#include<12F508.h>
#fuses INTRC,NOWDT,NOPROTECT,MCLR #zero_ram #use delay(clock=4000000) #use fast_io( B ) void main(void) { set_tris_b(0b11101000); while(TRUE) { output_high(PIN_B2); } }
Remélem kiigazodsz belőle, olyan nagyon nem bonyolult.
A Ccs C fejlesztő környezetet használom. Mplab alatt.
Ha minden igaz, akkor az van, hogy CCS-ben kihagytál egy lépést, amit asm-ben megcsináltál, ezt:
Itt azt írják, hogy egy
vagy valami ilyesmi kell, ami az OPTION regiszter T0CS bitjét nullázza, és akkor jó lesz.
No hát potyo!
Méltó vagy a hírnevedre! Működik! Hálám üldözni fog!
Hali! Megérkeztem
Fényképeztem, mellékeltem a hsz-hez. Két részletben mellékelek, mert 2MB a max. méret, amit fel lehet tölteni. Annyi megjegyzésem van a fényképekhez, hogy a kapcsoló alját bevontam ragasztóval, ezért nem látni, hogy mi hova csatlakozik, de az biztos, hogy mindent oda kapcsol, ahova kell. Úgy van kialakítva a breadbord-on a kapcsolás, hogy mind a 4 sínét használom a szélén. Az egyik pluszos a 17V, a másik a GND. Az egyik mínuszos a 12V (kapcsolóknál sárga), a másik az 5V (kapcsolóknál kék). A PIC-es kapcsolás eredetileg egy breadbord-on volt rajta, de mivel néhány kacat van csak rajta, ezért átültettem egy próbapanelra. Sajnos így se működik, sőt, most már egyáltalán nem villog a LED. A LED-nek nincs baja, ha rányomok 5V-ot az ellenállására, akkor világít. A LED-et átkötöttem a PIC egy másik lábára (5-ös láb, GPIO2) a szerelés végett. A programot is módosítottam ezért, hogy az villogjon. Ráadásul azt csináltam, hogy az összes I/O lábon 5V legyen kezdetben, hogy tudjam mérni multiméterrel, de sajnos egyik I/O lábon sincs semmi feszültség. Én ebből arra következtetek, hogy a PIC belsejében valami nem kerek... szerintem tönkrementek a portok. De ez csak az én véleményem. A HEX-fájlt sikerült beleégetni a PIC-be, a WPB-ben visszaolvasással ellenőriztem. Ráadásul a programomat leellenőriztem egy fasza kis programmal, és ott billeg a láb. Szóval a program biztosan jó. Összességében a PIC-re gyanakszom, hogy vele van a baj, mert a program jó, az égetőáramkör tud a Flashbe égetni. Ez a jelenlegi helyzet. Ha van valami kérdés, csak nyugodtan
Szia,
Egyreszt kapcsolasi rajzot es ehhez hasonlo dolgokat mikor felteszel akkor PNG-be tedd, akkor kisebb lesz. Masreszt szerintem nem a kepmeret a baj, hanem, hogy max 4 kepet lehet feltolteni ha jol tudom. Amugy egy altalanos tanacs: File nevekhez soha ne hasznalj ekezetes karaktereket, azokat a szamitogepek a mai napig nem szeretik (noha ugy csinalnak mintha tamogatnak). Az eredmenyt pl lathatod amit kepernyokepkent csatoltam...
Nem sok időm volt mostanában, de megnéztem a képeket, igazából nem látni problémát. Főleg azután, hogy az égetővel visszaellenőrizted a tartalmat és egyezik. Amit küldtem forrást, az nekem működik, tehát ha neked nem, akkor ott vagy az áramkörben, vagy a PIC-ben van a hiba. Az én áramköröm csak egy 10k-t tartalmaz a Vdd-Vpp között, egy 100nF-ot a Vdd-Vss között és egy LED-et egy 470ohm-al a kimeneten. Ezen elég nehéz valamit elrontani. Érdemes lenne egy új PIC-el próbálkozni, az kizárná a PIC hibát.
En nehezen tudom kovetni a fenykepen mi hova van ossze kotve, de az feltunt, hogy mintha nem a PicKit2 altal definialt ICSP kiosztast hasznalnad? Meg tudnad ezt erositeni?
Amugy mi az a 'meghajto'? Le kellene az egeszet tisztitani, ha tobb aramkori modulod van, akkor eloszor az egyiket eleszd fel, utana a masikat... Miert kell pl 17V annak az aramkornek? Valami feszultseg stabilizatort sejtek ott, de annak a kapcsolasat nem kuldted el, meg annak a meghajtonak sem amirol szinten nem tudni mi a szerepe...
Ez eppen Linux, de MacOS-t is -- Windows-t kerulom amennyire csak lehet!
Szerintem csak a Windows-ra értette
Steve
Igen, felre ertheto volt kisse, elnezest - Szoval Linux-ot es Mac-et hasznalok es csak a Windows-t kerulom -- az csak virtualis masinan van. Linux nem rossz programozasghoz csak ugye vannak gondok a driverekkel, a Mac meg szinten jo (ugye Unix alapu), csak az ugy jo ahogy van, bekapcsolom es megy, nincs vacakolas. Raadasul a laptop 10 orat kibir az elemrol...
Watt kollégánk párhuzamos port alapú PIC programozóját építettem meg, ha visszanézed a hsz-okat. Azért nem tettem fel arról kapcsolási rajzot, mert watt honlapján fent van. Ott minden áramköri részletről részletes leírás található.
Én is a PIC-re gyanakszom. Azért nem próbáltam eddig kicserélni, mert elfogyott ez a típusom. Hármat rendeltem, kettő jött meg, de egyikkel se működik. Mindkettőt betettem sajna a még rossz égetőáramkörbe, úgyhogy esélyes, hogy megdöglött a portjuk - szerintem. Tényleg nehéz elrontani a PIC-es kapcsolást: két ellenállás, egy kondi meg egy LED... Szerintem ezt azért sikerült megoldanom, úgyhogy ezért is gyanakszom annyira a PIC-re. Megpróbálok szerezni egy ugyanolyat, de lehet, hogy kipróbálok egy másikat (16F1826 van még itthon, ami egyszerűbb), csak ahhoz le kéne ülni egy-két órát, és megnézni az adatlapját, amire ma nem volt időm. De talán holnap...
A 16F1826 -al bajban leszel, nem ismeri a programom. Aztán, ha jól emlékszem 9V-os Vpp-t igényel! Szóval talán a PICKit2, vagy a PICKit3 ismeri...
De nekem gyanús, hogy több PIC-sem megy! Amit küldtem fordítsd le és tedd fel a hex-et! Összehasonlítom az enyémmel! Azt is meg kell próbálni, hogy másik kimenetre programozod fel a LED-et!
Arra nem is gondoltam, hogy nem támogatja a programod. Akkor ezen majd még elfilózok. (Most megnéztem, és a PICkit2 se támogatja, csak a 3... úgyhogy szívás).
Áttettem már másik lábra a LED-et, de ott se működik. De mondom, nekem már az furcsa, hogy úgy inicializáltam a portot, hogy a programozó lábát (GPIO3) kivéve az összes kimenet és mindegyik logikai 1 legyen (5V). Ezt a programban nem is változtatom (csak azt, ahol a LED van), de mindegyik lábon 0V-ot mértem. Ha hazamegyek majd munkából, akkor kipróbálom az általad küldött programot is. Én mondjuk leteszteltem a sajátomat proteusszal, és ott jól szimulálta a működést. Idézet: „Most megnéztem, és a PICkit2 se támogatja, csak a 3... úgyhogy szívás” Ezt nem tudom hol nezted meg, de a PICkit2 altal tamogatott eszkozok litajaban benne van az eszkoz (Csak nem MPLAB-bol, hanem a kulonallo szoftverbol van tamogatva). |
Bejelentkezés
Hirdetés |