Fórum témák

» Több friss téma
Fórum » Folyamatábrás mikrokontroller programozás Flowcode-dal
Lapozás: OK   189 / 361
(#) lalca válasza lala0606 hozzászólására (») Márc 31, 2014 /
 
2 errort dob,nincs inicializálva amp,volt.
A kiírást érdemesebb 1 makróba rakni,létrehozod 2 változóval,cím-adat.
Valahogy így.Import makro.
A hozzászólás módosítva: Márc 31, 2014

max.fcm
    
(#) lala0606 válasza lalca hozzászólására (») Márc 31, 2014 /
 
Nekem nem dob hibát, viszont nem megy, a kiírást azért teszem kétszer mert a Display_Value makró egyszerre csak 4 digitet kezel, mellékelem a projekt féjlokat. ( A Flow 4.3 csak ezzel tudok forditani is.)
A hozzászólás módosítva: Márc 31, 2014

ADC.ZIP
    
(#) lala0606 válasza lalca hozzászólására (») Márc 31, 2014 /
 
Ezt az "fcm"-et mivel tudom megnézni?
(#) lalca válasza lala0606 hozzászólására (») Márc 31, 2014 /
 
Kezdőérték nincs megadva.Elvileg bekapcsolás után bármilyen értéket felvehet.
Azért írtam, import makro.
Ez az fcm 4-essel van.
A hozzászólás módosítva: Márc 31, 2014
(#) lala0606 válasza lalca hozzászólására (») Márc 31, 2014 /
 
Köszönöm, ezt tanulmányoznom kell, hogy megértsem. (5-ös Flow-al meg tudtam nyitni csak ezzel nem megy a fordítás)
(#) SzT3 hozzászólása Ápr 1, 2014 /
 
Sziasztok!

Tudom hogy ez nem a ki mit épített / programozott/ topik de sikerült megértenem és a használatba átültetnem a TMR-ek használatát.... így most már pontosan tudok időzíttetni és számoltatni a PIC-el Kaqkk -nak köszönhetően!!
Mellékelek is egy kis egyszerű órát...

timer1.fcf
    
(#) frekivalto hozzászólása Ápr 1, 2014 /
 
Sziasztok

Összeállítottam egy egyszerű 4*7 digites vezérlést, egyszerű szám kiírás egyenlőre. PIC16F877A.
A flowcode szimulátorában jól jelzi ki a számot, amit ki kell írni.

Viszont a próbapanelen inverzbe jelenik meg.
Tehát ha az "1" szám van kiíratva, akkor "E." jelenik meg. Tehát még a DP is megjelenik, holott annak sem kéne.
A PORTD-re vannak kötve a szegmensek, ezt kellene valahogy "megnegálni"
Nem biztos, hogy ez a megoldás, de egyenlőre nincs más ötletem.
A kijelző közös katódos, a PIC és a kijelző katódjai között van egy ULN2003 driver.

Az adatlapban nem találtam arra megoldást, hogy a PORTD kimeneteket inverzbe kapcsoljuk. Lehet h benne van, csak elkerülte a figyelmemet?
A hozzászólás módosítva: Ápr 1, 2014
(#) frekivalto válasza frekivalto hozzászólására (») Ápr 1, 2014 /
 
Arramár rájöttem, hogy a flowcode-ban közös anódos a bekötés.
Tehát ezért lenne rá szükség, hogy a szegmensek vezérlését megnegáljam.
Jó lenne ha sikerülne szoftveresen, mert akkor nem kéne még egy ULN2003 IC.
(#) kaqkk válasza frekivalto hozzászólására (») Ápr 1, 2014 /
 
Ha a flow kijelző makróját használod ott átállítható közös katódosra ...
(#) frekivalto válasza kaqkk hozzászólására (») Ápr 1, 2014 /
 
Köszönöm.

Bevallom azt nem néztem, mert 4*7 digites a kijelzőm
Így már tiszta sor, az 1 digitesből kell 4db.
(#) SzT3 hozzászólása Ápr 1, 2014 /
 
Sziasztok!

Kérdezni szeretném hogy tudok e olyan feltételes elágat csinálni ahol több kritériumnak kell teljesülnie?
Értem pl:
Van 4 bemenet
első elág akkor igen ha 1,2,4 magas
második elág akkor igen ha 2,3,4 magas
stb stb...
Köszönöm!
(#) kaqkk válasza SzT3 hozzászólására (») Ápr 2, 2014 /
 
A bemeneteket "port ként"kezelve egyszerűen megoldható ...

valami.fcf
    
(#) frekivalto válasza (Felhasználó 15355) hozzászólására (») Ápr 2, 2014 /
 
Köszi a javaslatot, nemsokára kipróbálom, de így első ránézésre ez lesz a megoldás.
(#) frekivalto válasza (Felhasználó 15355) hozzászólására (») Ápr 2, 2014 /
 
Kpróbáltam...
Amig 1 digire kell kiírni egy számot, nem gond.
Viszont ha kettőre vagy többre, akkor már mind a négy digitre kiirja az utolsóban lévő számot.
Egymásután négy komponens makro meghívása, más-más tartalommal, de mindig az utolsó makroban lévő számot irja ki mind a négy kijelzőre.

A progit nemsokára felteszem, de most tabletről irok.

Ez mitől lehet ?
(#) frekivalto válasza (Felhasználó 15355) hozzászólására (») Ápr 2, 2014 /
 
A sima, egy digites.
Ugy van bekötve, hogy mindegyik digit A-G és a DP is azonos pic lábra vabnnak kőtve.
A digit általános lába, gondolom ez az anód vagy a katód, ez van kötve egy másik pic lábra. Értelemszerüen ez mind a négy digitnél más pic lábra megy. Mindha multiplexben lenne bekőtve.
(#) frekivalto válasza (Felhasználó 15355) hozzászólására (») Ápr 2, 2014 /
 
Köszi a megoldást, hamarosan leprogramozom.
Nem értem, hogy miért bonyolították meg ennyire. Pedig egyszerűnek tűnik az egy digites komponens makró használata.
Az általad leírt mgoldással is
(#) Szamy hozzászólása Ápr 2, 2014 /
 
Üdv!
A következőben kérnék segítséget:
18f8720, PORT F.
Mellékelem a C állományt is, abban látszik a hiba. Tehát:
Ha egyesével címzem meg az F port bármely bitjét (egy időben csak egyet teszek 1-be), akkor a kiválasztott bit magasra vált. Viszont, ha több bitet teszek lépésről lépésre1-be mindig csak az utolsónak 1-be tett lesz 1.
Szimulációban működik, ( a progi végén mindhárom led világít), valós környezetben viszont csak az F4 magas. A fordított C állományban látszik, hogy a TRISF nem az Fc-ben beállított.
Valamint: Ha teljes portként címzem 255-értékkel, akkor minden bit magas, ahogy kell.
Ki lehet ezt javítani az Fc -ban?
(#) frekivalto válasza (Felhasználó 15355) hozzászólására (») Ápr 2, 2014 /
 
Szia.

Beírtam, de valami nem stimmel.
Ránéznél Simpi, mit rontottam el.

Köszönöm.
(#) frekivalto válasza (Felhasználó 15355) hozzászólására (») Ápr 2, 2014 /
 
Rendben, megvárom. Addig is próbálgatom...
(#) pitybull hozzászólása Ápr 2, 2014 /
 
Üdv!
pic12f675-ből van pár darabom,de ebben nincs pwm-kiment..
Van e valakinek egy példa programja hogy miként lehetne vele 3 pwm-et előállíítani 3 kimenetére?
(#) watt válasza Szamy hozzászólására (») Ápr 2, 2014 /
 
A 18F-eknél nem a PORT-ra írunk, ha nem a LAT-ra. Az RMW hiba miat történik az, amit leírtál(ha nem tudod mi az, keress rá a PIC-es topicokban). Tehát az összes port műveletet le kell cserélni lat-ra. Ha ezt a flowcode nem tudja, akkor én sem tudom mi a megoldás...
(#) Szamy válasza watt hozzászólására (») Ápr 2, 2014 /
 
A többi port jól működik... szerencsémre ezt a portot tudom byte-ban kezelni (kijelző szegmensek vannak rajta). Szerintem az Fc-nek tudni kellene, ez, gyanítom, hiba.
A hozzászólás módosítva: Ápr 2, 2014
(#) frekivalto válasza kaqkk hozzászólására (») Ápr 2, 2014 /
 
Szia.

Kaqkk: tudnál példa programot csatolni arról, hogy hogy kezelsz le 4db 1 digites kijelzőt?
Amit javasoltál az rendben van, de mint említettem van gondom vele.

A 4*7 digites az működik ahogy kell, mondjuk nem annyira tetszik mert a kijelzett számok fényereje nem egyforma a multiplex miatt...
(#) watt válasza (Felhasználó 15355) hozzászólására (») Ápr 3, 2014 /
 
Idézet:
„A kijelző fogyasztása is változik a kijelzett tartalom függvényében.”

Nem tudom, hogyan lehetne olyat, aminél nem... Ha egy LED világít, akkor az fogyaszt, ha nem, akkor nem. Mindegy, hogy hogyan van multiplexelve, vagy nem?
(#) watt válasza (Felhasználó 15355) hozzászólására (») Ápr 3, 2014 /
 
Talán lehetne olyat, hogy a közös oszlopokra is időosztással kapcsolni be a sorokat és akkor nem kéne meghajtó, mert a max áramot 1 LED határozná meg, csak akkor sokkal gyorsabb multiplexelésre lenne szükség és nagyobb impulzusáramra, hogy a LED-re jutó rész elég legyen a fényességhez. Ekkor minden ágon vagy 0, vagy x áram folyhatna.
De érdemesebb meghajtót használni...
(#) frekivalto válasza (Felhasználó 15355) hozzászólására (») Ápr 3, 2014 /
 
Köszönöm.

Majdnem ugyanezt csináltam meg, de mégse

Tovább haladok az ismeretlen uton, de már nem annyira ismeretlen
Egy I2C órán gyakorlok, már LCD-n megy a program, most próbálom LED-es kijelzőre applikálni.
(#) frekivalto hozzászólása Ápr 4, 2014 /
 
Üdv Mindenkinek.

Encoder kiértékelésével ténykedem jelenleg.
Az encodert hogy lehet két érték közé (min. és max.) állítani?
Az a gondom, hogy ha eléri a felső limit határát, akkor, jobb híján nullázom. Ez működik is. Jobb lenne, ha nem nullázni kéne, hanem kikapcsolni, de akkor ugye nem fogok tudni értéket beolvasni, mert ki van kapcsolva.
Viszont alsó értéknél, 0 alatt leáll az encoder olvasás, kiakad. Egyszerűen nem találom a hibát.
Pedig elvileg ugyanzt kéne tennie, mint a felső értéknél. Ha 0 érték alá megy (negatív lesz), akkor nullázom, ekkor értéke 0 lesz. Ekkor ezt már megint ki lehet értékelni, mert nem 0 alatt van.

Hol hibázik a számításom? Esetleg valakinek ötlete erre?

Az encoderem egy "Klikkre" 4 értéket ad vissza, ezért osztom 4-el.
Ez egy egyszerű "PWM" lenne, fix (20ms) kitöltéssel, de a periódus időt szeretném változtatni az encoderrel 100ms-1000ms között.

Köszönöm.
(#) watt válasza frekivalto hozzászólására (») Ápr 4, 2014 /
 
Az értékek növelése, csökkentése elé tegyél be egy feltételt. Ha elérte a max-ot, vagy a mint, akkor nem növeled, csökkented az értéket tovább...
(#) frekivalto válasza watt hozzászólására (») Ápr 4, 2014 /
 
Köszönöm, erre nem is gondoltam.
Rögtön le is próbálom. Erre nem gondoltam
(#) frekivalto válasza watt hozzászólására (») Ápr 4, 2014 /
 
Nem értem...

Csak a kiolvasott értékem van, nem növelek és csökkentek változót.
Amit az encoderből kiolvasok azzal írom be a period változóz. Az encoder értékét nem tudom írni, nem tudom változtatni.

Van benne feltétel, de nem az igazi.
A hozzászólás módosítva: Ápr 4, 2014
Következő: »»   189 / 361
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