Fórum témák

» Több friss téma
Fórum » Folyamatábrás mikrokontroller programozás Flowcode-dal
Lapozás: OK   296 / 360
(#) frekivalto válasza frekivalto hozzászólására (») Jan 30, 2018 /
 
Erre gondoltam! Jól működik. Köszönöm!
Üdv. Peti
(#) frekivalto hozzászólása Jan 31, 2018 /
 
Bakman ajánlata alapján az Encoder makró extra funkcióját használva elsőre sikerült is beállítani az encodert úgy, hogy 0-99 érték határok között működjön. 99-nél tovább tekerve is maradt 99-en, majd visszafelé forgatva újra csökkent. Ez így jó is volt.
De!
Nem tudom, mit változtathattam, mert már 1 órája csak azt a hibát keresem, hogy a maximális értéknél (encoder_count) nem a 99*4 értéket írja be, hanem 150 valamennyit.
Annyit sikerült kiderítenem, hogy 63*4, azaz 252 értéknél még jól működik, de 64*4, azaz 256-nál már nem, akkor nem 256 lesz az encoder_count értéke, hanem 3. Úgy gondolom, hogy valahol a változó típus nem jó (byte, int). Eddig nem találtam meg a hibát.

Encoder_count: 0-400 max. ez INT típusú
Encoder_value: 0-99 max. ez BYTE típusú.

Segítsetek, legyetek szívesek, több szem, többet lát...
Csatoltam a programot, az encoder makróban történik a számítás.

Ha szükséges, akkor teszek fel videót is a hibáról.

Köszönöm!
A hozzászólás módosítva: Jan 31, 2018
(#) Firefighter1 hozzászólása Jan 31, 2018 /
 
Sziasztok DHT 11 szenzort szolaltatott már meg valaki Flowcode-al? Esetleg példaprogramja van valakinek?
(#) kaqkk válasza frekivalto hozzászólására (») Jan 31, 2018 /
 
A változót írd ár byte-ről int-re a byte es változó csak 255 ig számol ...
(#) Firefighter1 hozzászólása Jan 31, 2018 /
 
Ezúton is szeretném megköszönni Bakmannak a segítséget és a türelmet amivel végigterelgetett a HTU21D kacskaringós ösvényén!

Felteszem a példaprogramot hátha valakinek szüksége lehet rá!
Ez egy nyers kis program, a változók is minimálstilusba vannak, de a lekérdezés és a számítás benne van! Innentől kezdve mindenki tudja finomítgatni!

Mégegyszer köszönöm!

PIC18F14K22 / HTU21D
A hozzászólás módosítva: Jan 31, 2018
(#) Firefighter1 hozzászólása Feb 1, 2018 /
 
Akinek van egy kis ideje, ránézne!

Már lecsupaszitottam a programot teljesen, csak a gomb komponens maradt benne! ( most ismerkedek vele )
IRLZ34 N el kapcsolok pwm be egy led szallagot!
A jelenség hogy gombnyomásra (amíg nyomva van a gomb)a led vagy teljesen elalszik vagy max fényerőre ugrik!
Amint felengedem a gombot beáll az értéknek megfelelő fényerőre!

Program hiba lehet vagy áramkör?
A hozzászólás módosítva: Feb 1, 2018

led5.fcf
    
(#) kokozo válasza Firefighter1 hozzászólására (») Feb 1, 2018 /
 
Szia! Mire?
(#) Firefighter1 válasza Firefighter1 hozzászólására (») Feb 1, 2018 /
 
Az igaz hogy most a PIC és a FET külön tápról megy.. csak a gnd van közösítve a "vezérlés miatt" tudom ez így elég barbár
(#) kokozo válasza Firefighter1 hozzászólására (») Feb 1, 2018 /
 
Programhiba..
ha a gombot nyomod és a waitunitlow funkciót használod ez történik.. 100X le lett írva, hogy megállítja a programot és az utolsó állapot ami ki lett adva a led komponensnek az megy ki a fetre is.
(#) kokozo válasza kokozo hozzászólására (») Feb 1, 2018 /
 
Próbáld ki így..
A hozzászólás módosítva: Feb 1, 2018

led5.fcf
    
(#) Firefighter1 válasza kokozo hozzászólására (») Feb 1, 2018 /
 
Igen azt tudom hogy a WaitUnitLow megállítja a programot, mivel itt nincs időzítés és semmi ezért gondoltam nem baj ha beakad! De azt akkor sem értem hogy pl ha minuszolok 160-rol
Nyomok egy minusz gombot akkor miért ugrik meg vagy le
(#) Firefighter1 hozzászólása Feb 1, 2018 /
 
Óooooo dehogy is nincs időzítés... hat az egész PWM egy időzétés... és éppen amilyen állapotban van abba áll meg a program...
(#) kaqkk válasza kokozo hozzászólására (») Feb 1, 2018 /
 
De azt nem mondod el neki hogy nem jó helyen használja ? (gondolom mert nem szereted használni) Ha ezt a makrót használjuk az elágazásba a számítás elé kell tenni így ha meg is fogja a programot akkor sem okoz gondot . A gomb makró külön van a pwm meg megszakításban fut akkor semmi problémát nem okozhat a waitunitlow makró ..
(#) kokozo válasza kaqkk hozzászólására (») Feb 1, 2018 /
 
Jelen esetben még a timert is blokkolja, mivel ilyenkor egy végtelen while ciklusba kerül a pic.
(#) Firefighter1 válasza kaqkk hozzászólására (») Feb 1, 2018 /
 
Tehát akkor ha a PWM megszakitásból jön akkor hiába fogja meg a programot a pergésmentesítés az továbbra is behivódik?
Igen eddig énis igy csináltam szoftveres pergésmentesítés
(#) Firefighter1 válasza kokozo hozzászólására (») Feb 1, 2018 /
 
Fél percel hamarabb irhattad.... tehát akkor blokkolja?
(#) kokozo válasza Firefighter1 hozzászólására (») Feb 1, 2018 /
 
a Te verziódnál nyomd meg a play gombot, nyomd meg valamelyik gombot, és nézd meg hogy változik e a pwma értéke. Nem fog..
(#) kaqkk válasza Firefighter1 hozzászólására (») Feb 1, 2018 /
 
Ne érts félre nem akarlak rá beszélni ! Nálam soha semmi problémát nem okozott . Az a titka hogy jól és jó helyen kell használni .
(#) frekivalto hozzászólása Feb 1, 2018 /
 
PIC18F2523 controller.
Ha felhasználom az SPI funkciót, illetve a PIC portjait:
PIC ----- LED MATRIX 8X8
SDO pin16 ---> Data In
SCK pin14 ---> Clock
RA1 pin3 ---> Load (Chip Select)

Kérdésem tárgya (sz SPI-hez tartozik még, csak nincs felhasználva): a pin15 RC4/SDI/SDA portot felhasználhatom RC4 bemenetként? Nem zavar be az SPI?

Köszönöm!
A hozzászólás módosítva: Feb 1, 2018
(#) Firefighter1 válasza kaqkk hozzászólására (») Feb 1, 2018 /
 
Nem rábeszélés!

Multkor láttam meg egy programodba! és nagyon tetszik mert egyszerűsíti a pergésmentesítést!
Az biztos hogy kisérletezgetek vele, mert sok esetben jobb lehet
(#) kaqkk válasza Firefighter1 hozzászólására (») Feb 1, 2018 /
 
Ha az én programomban volt akkor próbáld meg úgy használni ahogy ott láttad .
Az elágazás mellékágában...
A hozzászólás módosítva: Feb 1, 2018
(#) Bakman válasza frekivalto hozzászólására (») Feb 1, 2018 /
 
Szinte biztos, hogy ütközés lesz. Ha bekapcsolod az MSSP modult SPI üzemmódban, akkor az adatlap szerint konfigurálódik mindhárom láb. MISO, MOSI, Clock, lásd melléklet.

SPI_pins.jpg
    
(#) frekivalto válasza Bakman hozzászólására (») Feb 1, 2018 /
 
Sejtettem...
Akkor kitalálok mást.
Köszönöm a segítséget.
(#) frekivalto hozzászólása Feb 1, 2018 /
 
Még egy kérdés...
A flowban az SPI kapcsolatoknál a két lábat hova kell kapcsolni?
(#) Bakman válasza frekivalto hozzászólására (») Feb 1, 2018 /
 
Én az MCLR lábra szoktam kapcsolni, a fordító nem szokott reklamálni. Ha jól tudom (most nem tudom megnézni), akkor az csak MIAC modul használata esetén játszik. A kérdőjelre kattintva kaphatsz némi segítséget a programtól.
(#) frekivalto válasza Bakman hozzászólására (») Feb 1, 2018 /
 
Köszönöm!
(#) trabi007 hozzászólása Feb 1, 2018 /
 
Sziasztok! Egy kis segítséget szeretnék kérni flowcod ügyben , mégpedig egy olyan dologban , hogy nem tudok rájönni hogyan lehetne kivitelezni egy olyat , hogy ha pl. egy egy led mondjuk 30 másodpercig világít aztán kialszik , de ha ezalatt a 30 másodperc alatt én megnyomok egy gombot akkor a folyamat várakozik mindaddig míg a gomb nyomva van , és ha elengedem akkor világítana tovább a fentmaradó ideig.
(#) Firefighter1 válasza trabi007 hozzászólására (») Feb 1, 2018 /
 
Csinalj egy TMR2 megszakítást amiben számoltatsz! Ezzel a másodperceket meg tudod kapni egyszerűen!

Utánna (ha 30 másodperc a cél) akkor fogsz egy változót, beállítasz neki kezdő értéknek 30-at
teszel egy feltételes elágat.
Az elág figyelje a gomb állapotát pl: ha a gomb meg van nyomva akkor igen ágon fusson ha nincs akkor a nem ágon!
Ezek után már csak a nem ágba bele kell tenned egy számítást hogy minden egyes másodpercben elvegyen egyet a változódból!

Kell még egy feltételes elág ahova beraksz egy olyat hogy valtozó >0 igen ágba LED On nem ágba LED Off

Így amíg nincs gomb nyomva addig minuszol, tehát visszaszámlál ha meg megvan nyomva akkor másik ágra fut és ott nem minuszol.

Persze ehhez kell még a program többi része, de az álltalad felvetett kérdést ez megoldja
A hozzászólás módosítva: Feb 1, 2018
(#) trabi007 válasza Firefighter1 hozzászólására (») Feb 1, 2018 /
 
Köszi a segítséget , megpróbálom megcsinálni amit leírtál de mivel még nagyon kezdő vagyok nem tudom hogyan fog menni de próbálkozom , köszi mégegyszer.
(#) Firefighter1 válasza trabi007 hozzászólására (») Feb 1, 2018 /
 
Ma már nem mert nem vagyok gép közelbe, de ha nem megy akkor holnap segítek!
Milyen PIC-ed van?
Következő: »»   296 / 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