Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   75 / 1319
(#) watt válasza Müszi hozzászólására (») Szept 24, 2007 /
 
Kár, hogy egy szót sem értettél abból amit írtam, mert én nem az én égetőmről beszéltem, hanem annak élesztéséről, aminek a menete teljesen meg kell egyezzen az említett égető élesztésével.
(#) watt válasza KipKap hozzászólására (») Szept 24, 2007 /
 
A BTFSS akkor ugrik, ha a vizsgált logikai állapot magas. Te azt írtad akkor kéne az időzítőre ugorni, ha a szint alacsonyra vált.

cimke2: BTFSC PORTB,0
GOTO cimke2
GOTO cimke

Másik hiba, hogy az időzítés végén kell vizsgálni(BCF PORTB,5 után), hogy a gombbot elengedték-e, és ha igen akkor visszaengedni a programot a cimke2-re. Itt a vizsgálat értelemszerűen a magas szint vizsgálata lesz, azaz:

BCF PORTB,5
nem_enged BTFSS PORTB,0
GOTO nem_enged
cimke2:
(#) borvendeg hozzászólása Szept 24, 2007 /
 
Hello kezdő vok a témában de írtam egy progit ami lehet hogy hülyeség egy futófénynek indult nézzen rá valaki lécci h jó e
(#) watt válasza borvendeg hozzászólására (») Szept 24, 2007 /
 
Már többször írtuk, hogy a PIC elsősorban egy áramkör, nem pedig egy programozói felület.
A lista amit írtál értelmezhetetlen. Nem tudni milyen PIC-re, nem tudni milyen nyelven(C?, amúgy mindegy), nem tudni milyen fejlesztői környezetben íródott.
Ezzel azt akarom csak mondani, hogy nagyon messze vagy a helyes úttól, vagy csak én nem látok jól valamit....
(#) borvendeg válasza watt hozzászólására (») Szept 24, 2007 /
 
bocs szóval PICkit 2 a programozó és az eredeti felylesztő környezetet használom hozzá
szóval ezt:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nod...023805
(#) watt válasza borvendeg hozzászólására (») Szept 24, 2007 /
 
Úgy érted C18-at?
(#) borvendeg válasza watt hozzászólására (») Szept 24, 2007 /
 
bocs ezt nem értem milyen c18??
(#) Moderátor hozzászólása borvendeg hozzászólására (») Szept 24, 2007
 
Kedves borvendeg!

Nem-e lehetne kérni, hogy az elkövetkezendő időkben kicsit összeszedettebben állj hozzá mindenhez?

Sokszor olyan zavaros, amiket írsz, és ahogyan írod, hogy már-már a többiek számára ciki a helyzet...

És ez nem csak erre a topikra igaz!!!
(#) KipKap válasza watt hozzászólására (») Szept 24, 2007 /
 
Szia Watt! Köszönöm a hozzászólást. Szerintem az én progim uazt teszi, amit leírtálnem? De kétségbeesésemben átjavítottam az általad javasolt utasításokra, az eredmény: ugyanaz.... Gomb felengedése UTÁN adja ki a jelet továbbra is. Lassan beleőrülök... Hát nem lehet ez olyan bonyolult progi....
(#) szabi_o válasza KipKap hozzászólására (») Szept 24, 2007 /
 
Ha így kötötted be (ld rajz), akkor működnie kell. (használhatsz belső felhúzó ellenállást is a Port B-n)
Szükség lehet egy olyan 50-100ms körüli delay-re a GOTO Cimke2 utan is, a pergesmentesítésért.
Esetleg majd még tiltsd le a komparátorokat, ha nincs rájuk szükséged.
(movlw 0x07
movwf CMCON)

Itt találsz konkrét példákat is, csak írd át a portokat, ahova a led és kapcs jön:
Bővebben: Link

PIC led.jpg
    
(#) Gory hozzászólása Szept 24, 2007 /
 
Sziasztok!

Akadt egy kis problémám a Microchip TCP/IP Stack-el.
Az a helyzet, hogy helyet foglalok beérkező csomagoknak a következővel:

static BYTE vUARTRXFIFO[256];

A linker a következő hibát dobja:
.udata_UART2UDPBridge.o' can not fit the section. Section '.udata_UART2UDPBridge.o' length=0x00000128

Ezek a alpján elvileg ugye nem fér a memóriába a tömb, ha lejjebb veszem a bájtszámot, akkor belefér, és gond nélkül lefordul.

Nemigazán értem hogy miért nem fér a memóriába, mert a program memóriából 10538/32768 a foglalt, adatmemóriából pedig kb 1060/3968 tehát még bőven lennie kéne helynek.

Nincs valami tippetek ez ellen? A sima hyagyományos linkerscriptel linkelek, és egy 18F4620-ról van szó.
(#) potyo válasza borvendeg hozzászólására (») Szept 24, 2007 /
 
Ez nem fejlesztőkörnyezet, hanem programozó. Fejlesztőkörnyezet az MPLAB vagy a CCS fordító.

De aki annyi fáradtságot nem vesz, hogy mielőtt nekifog valaminek, utánaolvasson a dolgoknak, megnézzen példaprogramokat, hogy mégis hogy nézne ez ki, az a továbbiakban ne számítson a segítségemre. Szerintem vannak még itt néhányan, akik egyetértenek velem ebben. Elhangzott a témában már néhányszor, hogy mégis hogyan kellene a dolognak nekiindulni, amennyiben valaki komolyan gondolja. De úgy látszik, manapság az a divat, hogy majd jönnek valakik, akik úgyis kijavítanak. Csak ez egy idő után végetér, és utána magadnak kell rájönni a dolgokra. Aztán ha ez nem megy, akkor nem megy. Olyan ez, mint az egyetem. Van aki egyszerűen nem elég inteligens hozzá. Ha be is fejezné 10 év alatt, akkor sem lenne belőle rendes szakember, csak arra lenne jó, hogy a színvonalat, és ezzel együtt mások erkölcsi és anyagi megbecsülését rontsa.
(#) watt válasza KipKap hozzászólására (») Szept 25, 2007 /
 
Így javítottad át?

code_w.txt
    
(#) watt válasza KipKap hozzászólására (») Szept 25, 2007 /
 
Még egy kis javaslat:
Lehetőség van még a Makrók használatára, ami pl. a bankok beállításában olvashatóbbá teszi a forrást:
MAKRO BANK0
BCF STATUS,RP0
ENDM
MAKRO BANK1
BSF STATUS,RP0
ENDM

Ha több bankra is át akarsz lépni, akkor kénytelen vagy az RP1-et is állítani, némi memória áldozat árán. Ezért nem szeretem a 16F-eket amúgy, bár a 18F-eknél is néha bankolni kell, csak sokkal ritkábban!

BANK0 MACRO
BCF STATUS,RP0
BCF STATUS,RP1
ENDM
BANK1 MACRO
BSF STATUS,RP0
BCF STATUS,RP1
ENDM
BANK2 MACRO
BCF STATUS,RP0
BSF STATUS,RP1
ENDM
BANK3 MACRO
BSF STATUS,RP0
BSF STATUS,RP1
ENDM

A programlistában már csak az kell beírnod, hogy BANK2 és a fordító beszórja a szükséges két sort.
(#) Gory válasza Gory hozzászólására (») Szept 25, 2007 /
 
Közben rájöttem hogy valószínűleg azért nem fér be mert 256 byte-os szekcók vannak, úgyhogy át kell írni a linker scriptet, és megadni hogy oda linkelje.

Szerk: Igen ez volt a megoldás, hiába volt csak 200 byte amit lefoglaltam, úgylátszik mást is akart abba a szekcióba linkelni és nem fért be. #pragma udata és a linker script átírása után mostmár lefordul.
(#) gulasoft hozzászólása Szept 25, 2007 /
 
Az a fánya A!

Mi különbség van egy pic-nél az A és a Sima változat között?

Volt egy leírásom, nyákterv minden, hex file, csak a anyákot átalakítottam, de csak közelebb raktam pár alkatrészt, meg megcsináltam eagle-vel a nyáktervet, szóval elméletben tök ugyan az ami a leírásban volt egy különbséggel PIC16F628-at használtak hozzá én meg 16G628A-t kaptam itthon, és nem műkszik.

Mi a nyüves pontosan az A jelölés, mert ahogy olvasgattam valami önprogramozást jelöl, de hogy hogyan küszöbölhető ki a kettő közötti különbség az leírva sehol nem volt.
(#) potyo válasza gulasoft hozzászólására (») Szept 25, 2007 /
 
Le van az írva, mégpedig a Migration Documents nevű fájlokban. 16F62x-->16F62xA esetén konkrétan itt.
(#) gulasoft válasza potyo hozzászólására (») Szept 25, 2007 /
 
Spec . madzsari leírásra gondoltam, de megnézem és talán ez is jó lesz.
köszönöm szépen!
(Egyébiréntam írtam neked levelet az egyik cikkeddel kapcsolatban esetleg olvasd el)
(#) potyo válasza gulasoft hozzászólására (») Szept 25, 2007 /
 
Magyar leírásra ne nagyon számíts az ilyesminél. A migration documents tartalmazza táblázatos formában az eltérések listáját, azután pedig az adatlapokban megtalálod, hogy pontosan mire kell módosítani a programot.
(#) gulasoft válasza potyo hozzászólására (») Szept 25, 2007 /
 
Igen, viszont a gáz az, hogy ez egy amigás egérátalakító, aminek a forrása valami speckó amigás fordítóhoz van buherálva, két include file-al ami a linken található lha fileban még véletlenül sincs meg, tehát annyira újrafordítani nem tudom, de ez persze már az én nyűgöm.
(#) potyo válasza gulasoft hozzászólására (») Szept 25, 2007 /
 
Én nem látok akkora eltérést, hogy újra kellene fordítani. Valami más miatt nem fut a szerintem.
(#) KipKap válasza watt hozzászólására (») Szept 25, 2007 /
 
Szia! Teljesen érthetetlen! COPY=> PASTE verzióval másoltam be az MPLAB-ba a javított kódodat és az eredmény uaz.... Amikor nyomógomb lenyom, az RB5 lábon 4,5V jelenik meg és fennál, amíg a nyomógombot el nem engedem. Amikor elengedem, a fesz beáll 5,05V-ra és időzítés lejárta után visszaáll alapba... (Várja az újabb bemeneti jelet) Nem lehet, hogy elektronikai gondom van és nem programozási?? Köszönöm a segítségedet, nagyon sokat tanultam eddig már tőled!
(#) watt válasza KipKap hozzászólására (») Szept 25, 2007 /
 
Lehet, hogy kevés az időzítés, tegyél be sokkal többet, vagy szervezd ciklusba, vagy az időzítő rutinban próbálj több időt alkotni.
A másik, hogy a cimke2: elé tegyél be egy várakozást, hogy a prell nehogy bezavarjon.
Logikailag mennie kéne!
(#) KipKap hozzászólása Szept 26, 2007 /
 
A nem használt portokat azonban nem kötöttem határozott potenciálra. Okozhat ez ilyen problémát?
(#) watt válasza KipKap hozzászólására (») Szept 26, 2007 /
 
Nem okozhat. Az időzítéseket sikerült kipróbálni?
(#) Gory hozzászólása Szept 26, 2007 /
 
Szaisztok, újabb gondom adódott a PIC-ekkel. Konkrétan az hogy sorosporti kommunikációt kell csinálnom egy készülékkel, ami kapcsoló üzemű tápról jár.

A soros port miatt a földjük közös, és a PIC-em állandóan újraindul ha rajta van a soros kábel. Számítógéppel semmi gondja.

Van valakinek ötlete, hogyan lehet szűrni megfelelően, hogy ne induljon újra?
(#) potyo válasza Gory hozzászólására (») Szept 26, 2007 /
 
Hát első körben a pic bemenete és a gnd közé tegyél egy 4,7V-os zenert, meg a bejövő jeleddel sorba egy 100 ohm körüli ellenállást. Ha ez nem segít, akkor jöhet a további durvítás: a PIC tápjával is sorba egy 10ohm körüli ellenállást, és 5,1V-os zenert párhuzamosan vele. Majd innen tovább néhányszáz ohmmal a reset lábra, és a reset lábat is 4,7V-os zénerrel megfogni. Persze a perifériákat (pl. ledek) mind a szűretlen táp és a pic lába közé kell bekötni, hogy a pic a gnd-t kapcsolja nekik.

De mondjuk a számítógép is kapcsolóüzemű tápról jár, az önmagában nem kellene, hogy problémát okozzon. Jó lenne látni a kapcsolási rajzot, vagy annak ide eső részletét.
(#) Gory válasza potyo hozzászólására (») Szept 26, 2007 /
 
Köszi, a tápban a Zenert és az ellenállást majd kipróbálom. A kapcsolási rajz itt van, annyi a változás, hogy tettem bele még 500µF elkót a táp föld közé, meg 3db 100nF párhuzamosan táp föld közé. Meg a PIC is kapott a lábához 100nF-ot.

Egyébként az a furcsa hogy tegnap este működött rendesen, ma meg már nem.

netboard.pdf
    
(#) KipKap válasza watt hozzászólására (») Szept 26, 2007 /
 
Watt.... Nem akarom elkiabálni, csak csendben mondom: .....működik....! Valóban hosszabb időzítést használtam és a prellezés miatt némi várakozást iktattam be cimke2 elé.
Nem akarlak fenyegetni, de hálám a végtelen világűrön át is üldözni fog! :yes:
Azontúl rengeteget tanultam tőled és természetesen a többi hozzászólótól is!
Köszönöm a segítséget!
(#) watt válasza KipKap hozzászólására (») Szept 26, 2007 /
 
Nincs mit, én is örülök, hogy működik! Legalább Te jelezted, hogy sikerült!
Következő: »»   75 / 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