| Fórum témák 
 
 » Több friss téma | 
				Bocs a rossz beillesztésért. Mindjárt be is égetem az általad javasoltat. Egy kérdés: hogyan lehetne állitani a ki-be kapcsolási időt emberi mértékkel (másodperc) ? 
				Az általam javasol kódban legegyszerűbben úgy, hogy többszörözzük a call DelayLoop sort. Ugyebár egy sor majdnem 0,2 másodperc, ha ötször egymás alá beszúrjuk akkor kb 1 másodpercet kapunk. Persze van erre más megoldás is, de az bonyolultabb.						 
				Bemásoltam, Build Failed hibával leáll.   
				Bocsánat! Figyelmetlen voltam. Két helyen maradt benne hiba. A hiba: 
 Helyesen: 
 Ez kétszer szerepel a kódban, mindkét helyen át kell írni! 
				Elöször: Kössz a türelmedet. Most már csak az a baja, hogy Build-nél leáll: The project contains no source files. Ezt mivel csináljam neki? 
				Én úgy szoktam, hogy egy szövegszerkesztővel (Notepad++) létrehozok egy egyszerű nevű asm-et, pl ezt most 16f690_blink.asm néven mentettem el. Az MPlab nem nagyon szereti ha túl mélyen van a fájl, célszerű pl így: C:\PIC\16f690_blink.asm Aztán projekt wizard-dal létrehozom a projektet és amikor kéri belinkelem neki a fájlt. Idézet: „Persze van erre más megoldás is, de az bonyolultabb.” Lehetne esetleg erről beszélni (mert 3 perc az nagyon sok sor) vagy inkább elégedjek meg mára ennyivel és valamikor folytatnánk? Persze az eddigi segítséget is köszönöm. 
				Esetleg ezt lehetne megpróbálni szép sorjában: 1. a CBLOCK-ba egy Delay0 -át beírni 2. a DelayLoop rutint átírni így: 
 Ez így már egyszeri meghívásra kb 50 másodperc kéne, hogy legyen. Nem tudom mennyire kell pontosan a 3 perc. Ha pontosan kell akkor más megoldást kell alkalmazni. A hozzászólás módosítva: Júl 30, 2015 
				Gondolom, valami ciklusba kellene tenni a DelayLoop-ot. pl: itt movlw 0xFF delayloop declw goto itt 
				Annyira nem kell pontosan a 3 perc csak kb.  A 3-4 mp. viszont fontos. Amit az elöbb írtam a ciklusra, az csak egy elképzelés, nem komoly. A hozzászólás módosítva: Júl 30, 2015 
				Na meg hibás is. így gondoltam: movlw 0xFF itt delayloop declw goto itt 
				De szerintem egyelőre ennyi elég, nem rabolom az időd tovább. Majd legközelebb folytatom, addig olvasgatok a témáról.						 
				KÓDGOMB!!! De egyébként meg teljesen rossz. Egy alternatíva: 
 Amennyi értékkel feltöltjük a szamlalo1 és 2 regisztereket annyiszor fogja meghívni a késleltető rutint. 
				Én ezt szoktam használni. Beütsz 180 másodpercet és adja a rutint. Persze igazából timer vagy CCP a megoldás és megszakítás.						 
				Az első körben. Másodszor mindkettő 0-ról indul.						 
				Ez a PIR1,SSPIF nem akar működni sehogy sem. Átírtam a egészet így: 
 Szerintetek? 
				Akkor így: 
 A hozzászólás módosítva: Júl 31, 2015 
				Ez jónak ígérkezik, délután kipróbálom. Egy kérdés: a goto $-2 konkrétan hova ugrik, mert kipróbáltam egy másik variációt és úgy néz ki, hogy valamit rosszul számolok ki és végtelen ciklusba fut. 
				Az utasítástól kettőt vissza. Tehát itt a call DelayLoop sorra. De ezzel csak óvatosan, mert könnyű elrontani, jobb a címkék használata csak ahhoz meg lusta vagyok.				 A hozzászólás módosítva: Júl 31, 2015 
				Köszi, lassan azt hiszem, kezdem érteni.   Még egy kérdés: a PicKit2-vel MpLab alatt tényleg nem lehet realtime debugot használni, vagy csak én nem tudom beállítani? 
				Ha jól emlékszem az adatküldésnél nem kell a BF bitet és az ACKSTAT bitet vizsgálni elég ha az R/W bitet figyeled. Elnézést ha rosszul emlékszem						 
				Nem minden PIC-nél lehet. De csak a a debug-nál kell a PICKIT2-öt beállítani. Utána mennie kell ha a PIC tudja. De egy ilyen programnál a szimulátor is tökéletesen használható.						 
				Köszi szépen a segítséget. Én is hasonlóra gondolok, de úgy voltam vele inkább megkérdem.						 
				Értem. Amúgy ha én a külső 20Mhz kristály frekvenciáját szeretném használni a 48Mhz helyett az időzítésnél , azt be tudom állítani ? Arra gondoltam hogy a FOSC átállítom 20Mhz re , bár nem tudom hogy ez nagyon nagy baromság-e . Tudtok segíteni ? 
				Nem értem pontosan mit szeretnél. Az FOSC-t nem lehet állítani max a PLL-t ki vagy bekapcsolni. Ha 20 MHz-et akarsz akkor teszel egy ilyen kavicsot a picre, beállítod HS-t és kész.  Azt írtad, hogy 1us megszakítást akarsz csinálni és így villogtatod a ledet, de túl lassú. Hát ha egyáltalán látod, hogy villog akkor biztos nem jó, mert az 1us-t biztos nem látod. Mert az ugyebár egymillió felvillanás másodpercenként. Szóval mi is a cél? Ha jól számolom a Timer0 2,5-öt lép minimum 1us alatt, innen kell elindulni. A hozzászólás módosítva: Júl 31, 2015 
				A cél szoftveres pwm jel előállítása timerel, léptetőmotorok vezérléséhez. (azért kell szoftveres mert 4db motort kell vezéreljek)						 | Bejelentkezés Hirdetés | 




 
						