Fórum témák

» Több friss téma
Fórum » Folyamatábrás mikrokontroller programozás Flowcode-dal
Lapozás: OK   255 / 360
(#) elektroszala hozzászólása Ápr 27, 2016 /
 
Üdv!

Van -e rá magyarázat, hogy mikor egy előzőleg feltöltött tömbből akarok kiolvasni adatot, és nem a nullás indexnél kezdem a kiolvasást, akkor random adatot kapok? Csatoltam képet. A pirossal jelölt rész hibás adatot küld, a zöld a jókat. Ugyanaz a tömb... Vagy tömböt mindíg az elejéről kezdve kell olvasni?

t1.jpg
    
(#) Kovabe hozzászólása Máj 14, 2016 /
 
Sziasztok
Valaki 5.x flowcode-al használt már nokia kijelzőt? Milyen kimeneteket kell beállítani és mi a vezérlés metodusa?
(#) Bakman válasza Kovabe hozzászólására (») Máj 14, 2016 /
 
A súgóban van utalás Nokia kijelzőre (Kimenet -> Graphical LCD), talán ezt keresed. Vannak makrói, csak azokat kell meghívni.
(#) Kovabe válasza Bakman hozzászólására (») Máj 14, 2016 /
 
Sajna nem lelem, de nem hinném hogy a bekötést elmagyarázz. Illetve milye e block-ot kell belőni?
(#) Bakman válasza Kovabe hozzászólására (») Máj 14, 2016 /
 
Íme. A súgóban vannak a részletek hozzá.

Shot_452.jpg
    
(#) niedziela válasza Kovabe hozzászólására (») Máj 14, 2016 /
 
(#) Kovabe válasza niedziela hozzászólására (») Máj 14, 2016 /
 
Eddig eljutottam de az e-block-ot mire kell belőni?
(#) Bakman válasza Kovabe hozzászólására (») Máj 14, 2016 /
 
Az E-block -ok ezek: Bővebben: Link. Matrix gyártmányú modulok, azokat beállítva a Flowcode tudja, mit mire kell belőni.
(#) elektroszala válasza Kovabe hozzászólására (») Máj 14, 2016 /
 
Régen csináltam ezeket, de működniük kell... Az spi-t init makrót ne felejtsd el,mielőtt elkezdesz adatokat küldeni!
A "keret " nevű makró egy 1 pixel széles keretet rak körbe a kijelzőre. Sajnos nem adtam nevet az adatoknak, amiket küldözget, de az adatlapból kikereshető, melyik pl a kontraszt.
Nekem személy szerint nincs jó véleményem a nokia kijelzőkről. Nagyon lassú, "utánhúz". 0 fok alatt nem látszik. Többfélét is vettem anno az ebayről, a mindegyiknek problémás volt a panel és a kijelző közötti kontakt. DE kezdésnek jó, mert könnyű inicializálni.
ui. a makrót (CS láb) természetesen át kell portolni!
A hozzászólás módosítva: Máj 14, 2016
(#) Kovabe válasza elektroszala hozzászólására (») Máj 15, 2016 /
 
Köszönöm
Köszben sajna a gravitáció megoldotta a problémát és behatással volt a csipesz, táp nélkül invertáltam a szint
Jelenleg nincs semi projektem amivel feltétlen foglalkozni kellene ezért előveszem a fiokban porosodó eszközöket és megporbálom életre kelteni őket, jelen esetben 2-0és nem nekem
Most egy ultrahangos távolságmérő modullal küzdök de nem tudom mérni az időt hogy mennyi a visszatérés. (16f1939, 8MHz)
Ezzel az eszközzel valakinek tapasztalata?
Nemszeretném mással elkészíteni a programot csak az irányt keresem. (egyenlőre a kuka leg megfelelőbbirány)
A hozzászólás módosítva: Máj 15, 2016
(#) Bakman válasza Kovabe hozzászólására (») Máj 15, 2016 /
 
Itt: Bővebben: Link megtalálod az adatlapját. A Trigger lábat magas szintre emeled 10 us-ig, majd az Echo lábat figyeled (akár megszakításból is). A távolsággal arányosan magas szintű a Trigger. Az időt legegyszerűbben egy Timer-rel tudod mérni.
(#) frekivalto hozzászólása Máj 20, 2016 /
 
Sziasztok!

Egy egyszerű ON-OFF nyomógombos kapcsolót raktam össze.
Működik is, de néha a nyomógomb prellegése bezavar, szerintem...
10 megnyomásból egyszer-kétszer nem marad a kívánt állapotba a kimenet.
Ránéznétek a programra, hogy mit kellene másként csinálni?
Prellmentesítés van benne.

Köszönöm.
A hozzászólás módosítva: Máj 20, 2016
(#) Bakman válasza frekivalto hozzászólására (») Máj 20, 2016 / 1
 
Létezik több módszer is a pergésmentesítésre. Ha mást nem kell csinálnia a programnak, a mellékletben egy egyszerű példa, én hogyan csinálnám. Egyrészt nem lép tovább, amíg nyomva tartod a gombot, másrészt elengedés után még vár 0,1 másodpercet, mielőtt újra megnézné a gomb állapotát.

A programban érdemes a normál gombot/kapcsolót használni, ha csak egyet használsz. Sokkal kevésbé zavarézékeny, ha a gomb aktív állapota az L szint, erre mindenképpen szokj rá. Lásd melléklet. Pull-up, azaz felhúzó ellenállás, értéke lehet 1-10 kOhm. A nagyobb ellenállás könnyebben összeszedi a zavart (igaz, még mindig jobb, mint a lehúzó), a kissebb feleslegesen terheli a kapcsolót.
Egy ilyen programhoz felesleges a 32 Mhz, egy is bőven elég. Alacsonyabb frekvenciával járatva kevesebbet fogyaszt.
A hozzászólás módosítva: Máj 20, 2016
(#) frekivalto válasza Bakman hozzászólására (») Máj 21, 2016 /
 
Szia.

Köszi,h megnézted.
Valóban nem kell ilyen magas órajel, de egy régi programot alakítottam egyszerűbbre, ezért az órajellel nem foglalkoztam. Valóban, elég az alacsonyabb is...
A bemenet kialakítására is több lehetőség közül választhatunk, de megfogadom a tanácsodat, ha legközelebb programozni fogok.

Köszönöm.
(#) kokozo válasza frekivalto hozzászólására (») Máj 21, 2016 / 1
 
Szia!
Lehet bele tenni szoftveres szűrést is. Pl így.
Ez csak akkor vált át ha x ideig van jel a bemeneten amit az "erzekenyseg"-el tudsz állítani.
A hozzászólás módosítva: Máj 21, 2016
(#) kaqkk válasza frekivalto hozzászólására (») Máj 22, 2016 /
 
Itt egy másik megoldás , a flow makrók használatával . (a konfig rád vár !)
(#) frekivalto válasza kaqkk hozzászólására (») Máj 22, 2016 /
 
Köszi a segitséget Mindenkinek! A bőség zavara...
(#) kaqkk válasza frekivalto hozzászólására (») Máj 22, 2016 /
 
Az én verzióm azért jó mert egy pici továbbfejlesztéssel akár 10-20 kimenetre is konfigurálható, ha van annyi lába a picnek vagy akár menürendszerré is fejleszthető .
(#) kokozo válasza kaqkk hozzászólására (») Máj 22, 2016 /
 
És egyben azért rossz mert az egész program futását blokkolja amíg gombnyomást érzékel.
(#) kaqkk válasza kokozo hozzászólására (») Máj 22, 2016 /
 
A programot nem blokkolja, csak a számláló nem lép tovább. Ez nem nop időzítés hogy megállítsa a programot ... Ha megszakításban csinálsz mellette valamit az tökéletesen fut tovább ,ebben a makróban megáll amíg nyomod a gombot de a a többi makrót nem befolyásolja
A hozzászólás módosítva: Máj 22, 2016
(#) elektroszala hozzászólása Máj 29, 2016 /
 
Üdvözletek!
A hétvégén volt időm foglalkozni egy nagyobb projekttel, összegyűlt 2 kérdésem, szeretnék kérni egy kis segítséget:
1. Miért van, hogy ha létrehozok C blokkban egy array-t (pl.: int valami[3]: {1,2,3}; )
majd erre nem abban a makróban hivatkozok, amelyben létrehoztam ( FCV_any=valami[2] ),akkor hibával nem forditja le (nem létező változót jelez abban a makróban, ahol hivatkozok rá). Érdekesség továbbá, hogy ugyanez a hiba jön elő akkor is, ha a hivatkozott C blokkot többirányú elágazásba teszem , ugyanabban a makróban. Ez a probléma már több másik projektben is előjött, de elérkezettnek látom az időt, hogy kérdezzek, mert magamtól nem sikerült rájönnöm...
2. 18f26k22. nagyjából 38 változóm van létrehozva, ebből 4 bool, 5Uint, a többi byte. Már nem vagyok a gép előtt, ezért csak kb 38. Ahogy elkezdek további változókat létrehozni, elkezd furaságokat csinálni a PIC, legtöbbször a B6 porton ( ezen alapból 100Hz van tmr2-vel ).Teljesen mindegy milyen néven csinálok további változókat, az eredmény ugyanaz,leáll a B6 port. Abban a tmr2 megszakításban más portokat is kezelek, ahogy növelem a változók számát, szép lassan azok is megzavarodnak. FONTOS: ezeket a frissen létrehozott változókat még nem használom, elég csak létrehoznom, hogy előjöjjön a hiba.
(#) Bakman válasza elektroszala hozzászólására (») Máj 30, 2016 /
 
1: Valószínűleg lokális változót kreálsz a C blokkban. Ne kérdezd, hogyan lehet globális változót létrehozni, majd valaki, aki ért is a nyelvet, jól megmondja.

2: Lehet, hogy találtál egy hibát a programban vagy a fordítóban. Próbáld meg úgy kikerülni a hibát, hogy tömböket hozol létre, nem magyányos változókat, hátha. Többen tapapsztalták már, hogy a Boolean változó felvehet 0 és 1 -től különböző értéket is. Próbáld meg azokat Byte-ra átállítani, ez is kulcs lehet a megoldáshoz.
(#) elektroszala válasza Bakman hozzászólására (») Jún 5, 2016 /
 
Köszönöm, akkor még fejtörök...
"Többen tapapsztalták már, hogy a Boolean változó felvehet 0 és 1 -től különböző értéket is"
Ezeknek(is) mindíg megadok kezdőértéket, ettől még jelentkezhet a probléma?
(#) Bakman válasza elektroszala hozzászólására (») Jún 5, 2016 /
 
Valószínűleg igen. Egyébként a Bool és a Byte változó egyenlő területet foglal el, az ASM kódon kívül nem nagyon ismerik a fejlesztőkörnyezetek a valós, Bool változót. Tehát kb. mindegy, RAM terület foglalási szempontból, hogy Bool vagy Byte változót használsz Flowcode-ban. Ez utóbbit nem tudom ellenőrizni, de ezt is több helyen olvastam már, nem feltétlen igaz.
(#) niedziela válasza elektroszala hozzászólására (») Jún 6, 2016 /
 
Szia !

Ha te adsz a bool-nak értéket akkor nem, ha pl: egy bemenetet kérdezel le akkor igen.
(#) elektroszala hozzászólása Jún 8, 2016 /
 
Az szuper ( ehh!). Kifejezetten bemenet olvasáshoz használtam, helytakarékosságból. Ezek szerint semmit nem ért.
Viszont, ha már itt vagyok: hogy kell megadnom helyesen, c blokkban, mikor egy több bites értéket szeretnék egy regiszterben megadni?
Egy bitnél tudom (pl.: set_bit(intcon, INT0IE); ) de most a CCP1CON regiszter CCP1M<3:0> bitjeit szeretném (nem maszkolva) 1-be tenni.
(#) elektroszala hozzászólása Jún 8, 2016 /
 
Köszönetem!
(#) elektroszala hozzászólása Jún 8, 2016 /
 
Én azt hittem, valahogy ez belekerül fordításkor, és a bolean-ként megadott értékeket bit array -be rendezi.
(#) Bakman hozzászólása Jún 18, 2016 /
 
Napot!

'Z' nevű változóba szeretnék elhelyezni egy idézőjelet. Hogyan tehetem meg? Az általam ismert módszer:
  1. Z="abc\"def"
nem működik.
(#) Bakman válasza (Felhasználó 15355) hozzászólására (») Jún 18, 2016 /
 
Eddig jutottam én is.
Következő: »»   255 / 360
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