Fórum témák

» Több friss téma
Fórum » Folyamatábrás mikrokontroller programozás Flowcode-dal
Lapozás: OK   110 / 360
(#) watt válasza dark81 hozzászólására (») Dec 12, 2012 /
 
Órakvarc a Timer1-re, vagy külső RTC, vagy a gányolás, hogy ha tudod, hogy óránként mennyit siet, kivonod...
A hozzászólás módosítva: Dec 12, 2012
(#) fifadani hozzászólása Dec 12, 2012 /
 
Sziasztok!
Sikerült valamiféle számológépet összehoznom....
Szimulációban tökéletesen működik...
Amikor arra kattintok, hogy fordítás hex-be, azt az üzenetet kapom, hogy a folyamatábrát nem tudja lefordítani, mert C kódot tartalmaz...

Na most akkor mit, hogy ?

(itt a fájl is)

Update:
Programot újraindítottam és fordított...
A hozzászólás módosítva: Dec 12, 2012
(#) watt válasza fifadani hozzászólására (») Dec 12, 2012 /
 
Van mikor nem fordítja le elsőre, ilyenkor újra kell próbálkozni néhányszor. Ha végképp nem megy, akkor kell keresni hibát...
(#) fifadani hozzászólása Dec 12, 2012 /
 
Újabb probléma adódott..
Suliból hazahozhattam egy T-bird 2-t plusz a kieg panel...
Az útmutatóban azt írják, hogy a keypad úgy működik, hogy a sorokra, aktív jelet adok ( gondolom 1 ) majd kiolvasom az oszlopok jeleit.
Flowcode-ban úgy nézne ki hogy:
kimenet
atmega megfelelő portja és bit - 1 szint (első sor)
Ugyanígy a maradék 3 sor.
Majd:
bemenet
megint megfelelő port, bit, és változóba a lenyomott gombot.

Így csinálom, de a hiba az, hogy a keypad-től folyamatosan jön valamilyen szám....
Az előző hsz-ben, ott a progi is.
Egyébként szépen működik a progi, csak az a baj, hogy nincs időm lenyomni semmilyen gombot a pad-en. Mert ő az első és a mádosik számot is lenyomja... Egy 1est. Az eredmény meg ugye így 2.
A hozzászólás módosítva: Dec 12, 2012
(#) watt válasza fifadani hozzászólására (») Dec 12, 2012 /
 
Nézd meg, hogy az áramköröd hogyan van megoldva, mert lehet, hogy felhúzó ellenállások vannak a vonalakon. Az sem mindegy melyik vonalat hajtod meg. Ez itt off egyébként, ne itt tárgyaljuk tovább!

Ami a programot illeti nincs időm megnézni, de nem árt időzíteni a billentyűmátrixra adott jeleket, azaz nem a kontroller teljes sebességével pollingolni. Ha ez így van, akkor rendben.
A hozzászólás módosítva: Dec 12, 2012
(#) fifadani hozzászólása Dec 12, 2012 /
 
Watt.
Ha lenne pár perced rákukkantanál a progira?
Sehogy nem sikerül.. :S Ha a keypad-et működne akkor már nem lenne gond semmivel..
(#) fifadani hozzászólása Dec 12, 2012 /
 
Resetelem a kontrollert, indul a program.
Már az indítás után közvetlenül lenyomok egy számot. pl a 7est. És nyomva is tartom a progi végéig.
Megint 1esekkel számol. Eredmény 2.
Ha a 2es számot nyomom ugyanígy, akkor első szám 4, második 7... Eredmény 11..
Nem értem.
( van a t-bird-ökhöz útmutató, minden portot bitet helyesen álíltottam be. )
A hozzászólás módosítva: Dec 12, 2012
(#) watt válasza fifadani hozzászólására (») Dec 12, 2012 /
 
Most nézem, nekem csak PIC-es flow van...
(#) fifadani hozzászólása Dec 12, 2012 /
 
Módosítottam rajta picit.
Szimulációban emgy szépen.
Ha a billentyűzet, sorait 0 szintre helyezem, akkor nem megy tovább a program onnantól hogy bekéri az első számot.
Ha a pad sorait 1 szintre rakom, akkor meg jönnek a le nem nyomott számok...
(#) kaqkk válasza dark81 hozzászólására (») Dec 12, 2012 /
 
Olvass vissza nemrégen leírtam hogyan lehet pontos megszakítást csinálni tmr2 ben .
(#) watt válasza fifadani hozzászólására (») Dec 12, 2012 /
 
Sajnos ez a megközelítés olyan szinten idegen tőlem, hogy nem nagyon tudok javaslatot adni a program "javítására". Az egészet másképpen kéne megoldani és akkor még nem ismerem az áramkört se pontosan, mert attól is sokminden függ! Egy ilyen megoldás önmagában még talán működne is(ha illeszkedne a hardverhez), de mást nem nagyon lehet hozzátenni, mert azonnal megváltozna minden. Egy billentyűkezelésnek úgy kell működnie, hogy mást ne zavarjon és más se zavarja, ellenkező esetben nem fog jól működni. Ehhez ütemezés kell(és nem várakozások), amit Timer megszakításokkal lehet megoldani. 30Hz-es megszakításban lévő ütem elég is lenne a kezeléshez. Flow-ban még nem írtam mátrixos kezelőprogit, ezért konkrétumokat nem tudok mondani, de az irány ez kéne legyen.
Még annyit tennék hozzá, hogy most írok egy programot, amivel már szinte tele van egy 32k-s PIC. Egyetlen egy ugrás nincs benne!
A hozzászólás módosítva: Dec 12, 2012
(#) fifadani hozzászólása Dec 12, 2012 /
 
Hm értem. Hát csak most kezdtem az egészet.. De akkor majd olvasgatok.. Köszi!
(#) watt válasza (Felhasználó 15355) hozzászólására (») Dec 12, 2012 /
 
Egy elég összetett vezérlő programot, menükkel, PID szabályzásokkal, hőelem polinomokkal stb.
(#) tsava hozzászólása Dec 12, 2012 /
 
Küzdök a 7szegmenses kijelzővel.Egy byte-os változót szeretnék kiírni három digiten.Egy digit az oké de a három nem megy. A gyári példák között nem találtam ilyet. Ha valaki segítene egy példával vagy az elmélettel megköszönném.
(#) watt válasza tsava hozzászólására (») Dec 12, 2012 /
 
Digitekre kell bontani a számot és egymás után kitenni a megfelelő pozícióba. A digitekre bontást korábban LCD-re feltettük, nézz vissza pár oldalt!
(#) tsava válasza watt hozzászólására (») Dec 12, 2012 /
 
A digitekre bontás az megvan de az eredmény a pic-ben nem 654 hanem 666 majd 555 majd 444. A delay-ek csak azért vannak benne hogy lássam mi is történik a valóságban.
Érdekes hogy a szimulátorban jónak tűnik.Mit rontok el?

teszt.fcf
    
(#) pjg válasza tsava hozzászólására (») Dec 12, 2012 /
 
nálam szépen sorolja
6__
_ 5_
__ 4
A hozzászólás módosítva: Dec 12, 2012
(#) pjg hozzászólása Dec 13, 2012 /
 
Van e lehetőség Flowcode-ban, hogy AD átalakító nélkül mérjek analóg jelet.
Konkrétan egy 16F628A-val egyenfeszültség szintet.
Pl egy potméter egyik vége a Gnd-n, másik vége a +5V-on, csúszka a PIC be. A csúszkán hány V van?

Köszi.
(#) Hp41C válasza pjg hozzászólására (») Dec 13, 2012 /
 
A 16F628A rendelkezik komparátorral és Vref modullal, ezek felhasználásával 4 - 5 bit pontosan lehet mérni. Egyszerűbb azonban a lábkompetibilis, A/D átalakítóval rendelkező típus használata: 16F88, 16F819, 16F1826, 16F1827, 16F1847 stb.
(#) pjg válasza Hp41C hozzászólására (») Dec 13, 2012 /
 
Köszi. Erre én is gondoltam, de ebből van 10 db. Másikat venni meg....

Itt a boltban nincs, ha meg postás hozza az minimum 2 ezer. Az alatt nem jön ki.
A hozzászólás módosítva: Dec 13, 2012
(#) Hp41C válasza pjg hozzászólására (») Dec 13, 2012 /
 
Esetleg egy feszültség - frekvencia konverter kimenetét egy digitális bemenetre (T0CKI) vinni, és frekvenciamérő programot felhasználni. Lehet, hogy még drágább, mint áttérni a netto 360 Ft -os 16F1826 -ra.
(#) pjg válasza Hp41C hozzászólására (») Dec 13, 2012 /
 
Igazad van. Ez már nem tétel. Ennyibe kerül a 16F1827 is. Az nem volna jobb?
(#) Hp41C válasza pjg hozzászólására (») Dec 13, 2012 /
 
Ha képes kezelni a Flowcode, akkor lehet az is, de a 16F1847 csak pár forinttal drábább (8k program, 1k adat és 256 byte adat EEProm memória)
(#) pjg válasza Hp41C hozzászólására (») Dec 13, 2012 /
 
Kilehet választani, (16F1847) tehát valószínűleg kezeli.


Miben térhetnek el egymástól?
PIC16F1847-E/SO -> I/SO
A hozzászólás módosítva: Dec 13, 2012
(#) fifadani hozzászólása Dec 13, 2012 /
 
Sziasztok ismét!
Egyszerűen elvagyok már keseredve...
Sehogy sem tudom normálisan működtetni a keypad-et.
Olvastam már, sokat, hogy lehet AVR-el keypad-et olvasni...
Flowcode-ban kíváncsi lennék rá, de senki nem csinált még ilyet...
Nincs valakinek véletlenül T-bird csomagja? Segíthetne..
(#) pjg válasza (Felhasználó 15355) hozzászólására (») Dec 13, 2012 /
 
Köszi. Nem gondolkoztam.
(#) dark81 hozzászólása Dec 14, 2012 /
 
Sziasztok! Olyat szeretnék flowcode-ban hogy 2 soros lcd kijelző felső sorában kijelzek egy feszültség értéket, az alsó sorban pedig bar-graph szerű analó kijelzést szeretnék. Természetesen az érték kijelzéssel nincs gondom, de az "analóg" kijelzés nem megy. Van ötletetek , esetleg példaprogram?
Köszi
(#) watt válasza dark81 hozzászólására (») Dec 14, 2012 /
 
Két megoldás is lehet a kijelzésre. Az egyik, hogy teli kockákat rajzolsz egymás után az értéknek megfelelő arányban, amit tartományok szerint elágazásokkal tudsz megoldani.
A másik, hogy definiálsz olyan karaktereket az LCD CGRAM-jába, amik egy digiten belül is fel tudják bontani a tartományt további öt részre és ezeket a karaktereket használva vonalanként is lehetne rajzolni az értéket. Ekkor a korábbi 16 (16karakteres LCD-t feltételezve) karakteres elégazáson belül további 5 elágazást kell iktatni és rajzolni a hozzá tartozó 5 féle karaktert.
Ha jól rémlik teli kocka sincs készen a karakter ROM-ban(csak valami hasonló), azt is létre kell hozni a CGRAM-ban, ha csak az első verziót csinálod meg. A CGRAM-ról az LCD adatlapjában találhatsz bővebb infót! Az flow LCD blokkban van parancs a kezelésére.
A hozzászólás módosítva: Dec 14, 2012
(#) pjg hozzászólása Dec 14, 2012 /
 
Szeretném megkérdezni: a Flowcode LCD blokkban mi az a tiszta vonal?
(#) fifadani hozzászólása Dec 14, 2012 /
 
Szia!
Eltünteti, a villogó kurzort az LCD-ről... Nekem legalábbis..
Következő: »»   110 / 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