Fórum témák

» Több friss téma
Fórum » Modulrendszerű, grafikus PIC programozás
 
Témaindító: kokok, idő: Feb 17, 2007
Témakörök:
Lapozás: OK   175 / 175
(#) kaqkk válasza kontár hozzászólására (») Aug 17, 2020 / 1
 
A pasicnak egy "átka" van pontos időzítést nem (vagy csak nagyon körülményesen) lehet vele csinálni . Régebben próbáltam órát készíteni LCD vel de akármit csináltam vele vagy sietett vagy késett éppen a kijelző vezérlés és a többi "rejtett" nop miatt , ezért váltottam fejlesztő programot ,és nem bántam meg ...
A hozzászólás módosítva: Aug 17, 2020
(#) GERI 159 hozzászólása Aug 28, 2020 /
 
Üdv.
7 szegmenses multi-plexeléssel van gondom. Sikerült az átcsúszásokat kicsipegetni, viszont 2ms es Clock-al is vibrálnak a szegmensek, így hogy már eléggé meg van pakolva. Ha kiveszem a funkciók felét akkor sokkal simább, szinte alig látható. 4MHz-es kvarc van benne. Azzal is próbálkoztam, hogy csak kevesebbet állítok be neki, de még rosszabb lett a helyzet. Nagyobb kvarca segítene rajta? Vagy valami külső hardveres megoldás? 8bites RS flip flopon gondolkodtam, ami letárolja az adott szegmens állást, és világítva tartja frissítésig. Ezáltal nem az lenne, hogy 1 világít addig a többi sötét, és az alacsony frissítési ciklus miatt vibrál. Szerintetek ? Köszönöm előre is!
(#) GERI 159 válasza kaqkk hozzászólására (») Aug 28, 2020 /
 
Ne haragudj azóta se jártam erre. Egy asztalos barátomnak magasság állításához kellet a dolog. Elmenteni több méretet, és vissza tudja hívni. Nagyon prímán leprogramoztam, csináltam egy bemutató eszközt is amin működött, de nem lett megvalósítva, mivel a gép mechanikai átépítése nagy falat lett volna. :/
Viszont most a kijelzős dologhoz felhasználom, egy "bomba" hatástalanítós játékban, 4db számjegyet megadása, majd azt vissza kéri, ott is remekül működik.
(#) kaqkk válasza GERI 159 hozzászólására (») Aug 29, 2020 /
 
Ezt a megoldást próbáld ki

dig4.pic
    
(#) GERI 159 válasza kaqkk hozzászólására (») Aug 29, 2020 /
 
Kipróbáltam, de ránézésre is sejtettem,hogy nem lesz jó. Az a gond, hogy teljes ciklusidő van 2 szegmens közt, vagyis még lassabb lett a kijelzés.

A képen lévő megoldás több óra matekozás eredménye.(+ a te Szegmens oldalad) Ez volt a legjobb.
A számlálón azért van Bit-Byte átalakítás, hogy ne kelljen resetelni. Ez így 4 szegmensre pont jó. Valamiért a resetnél az utolsó számjegy elcsúszott, hiába van Mono-Flop 1ms, azaz 1 számjegy akkor is átcsúszott.
Szegmens vezérlést, én máshogy csináltam, azt átemeltem köszi
Viszont a megoldást a 8bites Shift-Registerben látom amit fentebb írtak. Ezzel minden gond megoldódik. Ha 1mp alatt 5x kiírom az is bőven elég. Nem kell aggódni, hogy pakolom a programot még, és még jobban lassul a kijelzés. 877A-t használok én.
(#) kaqkk válasza GERI 159 hozzászólására (») Aug 30, 2020 /
 
A shiftregiszteres meghajtás villogásmentes lesz az tuti ....
(#) kaqkk válasza GERI 159 hozzászólására (») Aug 30, 2020 /
 
De kipróbálhatod ezt is ,itt nincs időzítés de valószínűleg a ciklusidő ezt is befolyásolja

dig4xx.pic
    
(#) kaqkk válasza kaqkk hozzászólására (») Aug 30, 2020 /
 
És itt van egy aminél nincs kioltás a kijelzések közt (viszont 2*gyorsabb ) de lehet hogy szellemképes ....

digyy.pic
    
(#) kaqkk válasza GERI 159 hozzászólására (») Aug 30, 2020 /
 
Összedobtam valamit a shiftregiszterhez ... Akár még működhet is
A hozzászólás módosítva: Aug 30, 2020

shift.pic
    
(#) GERI 159 válasza kaqkk hozzászólására (») Aug 30, 2020 /
 
Nem próbáltam ki, de valószínűleg ugyan azt eredményezi mint a 1db kapu negáltan vissza kötve saját magában, A másiknál a szellemképesség az 100%

A Shiftes jónak tűnik, még nem próbálgattam csak fejben gondolkodtam, hogy kéne.
Megveszem az alkatrészeket és neki ugrok.
Elméletben ott tartok, hogy a Byte-ot le kell kódolnom szegmensekre, (ami már adott) aztán azokat 2ms-es clockal végig léptetni a registerben. Ha jól értelmeztem a belső logikai leírását, kell egy jel amire letárolja a belső pufferba a dolgokat, és akkor teszi ki a kimenetekre. (és persze a kimenet is engedélyezve van, de mivel mentéskor jelenik meg az új adat azt nem is kell lekapcsolnom, így villanni sose fog.) Az "anod jelet" ez a láb kapja az andok pedig fixen tápon. Mindig beírja mind a 4 registerbe az összes adatot, de csak azzal tároltatom le, amelyikhez tartozik a szám. Annyit kell még beledobni, hogy ha elkezdte a Byte szegmenseit a regiszterbe tolni, akkor az a szám nem változhat. Ha pont akkor vált akkor elméletileg max 8*4*2ms-et "csúszik" az idő kijelzése az 64ms ha a programban a leterheltség miatt nem tud 500Hz-et kipréselni akkor is max 100ms re nő, vagyis 1mp alatt kb 10x frissíti a kijelzést. Ez annyira nem vészes. És csak akkor, ha pont akkor szeretne váltani, mikor már az "A" szegmenst elkezdte beírni a registerbe. Azzal tudnék időt nyerni, ha bináriban hagynám a számot, és akkor elég lenne 4-Bites Register, ekkor fele ciklussal át bírom küldeni a számjegyet, csak kell egy 7447 kikódolni a szegmenst.

https://lomex.hu/pdf/ti7hc595.pdf
A hozzászólás módosítva: Aug 30, 2020
(#) GERI 159 hozzászólása Vas, 12:00 /
 
Szereztem egy kütyüt és rápróbáltam a picre. Nem lepődtem meg az eredményen. A program csak ezt tartalmazza semmi mást. Ha több minden lenne benne sanszosan még nagyobb eltérés lenne...
A letárolgatós módszer nagyon prímán működik.

A grafikonon a 7-ről 0-ára billenés látszik, illetve 1-ről 2-re.
Sajnosan ezt nem szereti a multiplex.
1 és 2 közt van egy kis 0 is... 7 és 0 közt meg minden ami belefér.
A hozzászólás módosítva: Vas, 12:04
(#) kaqkk válasza GERI 159 hozzászólására (») Vas, 15:28 /
 
Idézet:
„Szereztem egy kütyüt és rápróbáltam a picre. Nem lepődtem meg az eredményen”
Ez nem mond sokat senkinek ...
(#) GERI 159 válasza kaqkk hozzászólására (») Vas, 17:21 /
 
Az csinálta a grafikont, nincs közvetlen jelentősége. De ha érdekel egy ilyen:

https://www.aliexpress.com/item/4000755596172.html?spm=a2g0o.produc...01603_
(#) kaqkk válasza GERI 159 hozzászólására (») Vas, 18:23 /
 
Ha azt írod az első hozzászólásodban hogy logikai analizátor (a kütyü helyett) akkor semmi meglepő nem lett volna a hozzászólásodban , így viszont teljesen értelmetlen volt az egész .
Idézet:
„Az csinálta a grafikont, nincs közvetlen jelentősége”
akkor miért is keletkezett a hozzászólás ?
(#) Bakman válasza kaqkk hozzászólására (») Vas, 18:32 / 1
 
Gondolom azért, hogy bemutassa, a képen látható módszer (ZV1, legyen ez bármi is) használatával milyen szép "szinkronban" váltanak a kimenetek állapotot.

Pl. 0b111 -> 0b000 kb. 8 µs úgy, hogy a kimenetek nem egyszerre váltanak.
A hozzászólás módosítva: Vas, 18:32
(#) kaqkk válasza Bakman hozzászólására (») Vas, 18:42 /
 
Idézet:
„(ZV1, legyen ez bármi is)”
Ez egy 8 bites számláló , ráadásul reset nélkül tehát a 255. impulzusnál nulláz viszont 3 kimenetet figyel csak a "kütyü" Viszont Geri nem lepődött meg ....
(#) kontár válasza proli007 hozzászólására (») Vas, 19:04 /
 
Lett annyi technikai eszközöm. Kipróbáltam! Az RD.0-ra 15KHz jön ki .Nem stabil 15-16KHz között ugrál. Utána betettem egy 2ms impulzust RD.1 kimenetre .Az RD.1 stabilan 500Hz lett.
De ekkor az RD.0 9-10KHz-re csökkent ! /Ennyit jelent ez a kicsi "leterhelés"/
PIC16F877A 4MHz HS
A hozzászólás módosítva: Vas, 19:14

freki.png
    
(#) dcsabi hozzászólása Kedd, 12:05 /
 
Sziasztok, a kicsit fentebb levő adattologatás és tárolgatáshoz fűznék hozzá egy gondolatot. Anno nekem is sokszor okozott meglepetést a random modul kötözgetés. Aztán vettem a fáradtságot és a szerény A "ASM" programozói tudásommal újragondoltam sok megoldást. A Parsic sok mindent elbír a "Rajz tekintetében", de a processzorok képességeit és tulajdonságait nem lehet így feltúrbózni. A már többször emlegetett Timer(ek), az a bizonyos 2ms(!) tudja-e itt mindenki, hogy mennyi az és mi szükség rá?
Adott esetben egy egy feladat vagy szubrutin, vagy egy programreszlet, nem is fut le ilyen gyorsan, valami történni fog! "Szimulációban biztosan" meg kellene barátkozni a 10-20 vagy 100 ms használatával! Egy-két bosszúság elkerülhető! A program működik, le is fordul, csak nem azt fogja csinálni amit szeretnénk. A multiplex ledes kijelzőknél, adat tárolásnál, adat tologatásnál, figyeljünk ilyesmire, vagy szükség esetén használjunk 20Mhz-s Quartzot, de sem old meg mindent a fentebb említettek közül. Nem beszélve a belső oszcillátoros megoldásokról, amik hatványozottan gyűjtik az ilyen jelenségeket. Ezeket már régebben megjegyeztem, ebben a topicban. Ha nem jönne le így, akkor most segítségnek újra itt van, Nem beszélve az "Aszinkron kommunikáció" (RS232) esetleges hibáiról és csúszásairól! Adatsebesség, adat kimaradás, adat elcsúszás... A Quartz itt is "létfontosságú"!
(#) Bakman válasza dcsabi hozzászólására (») Kedd, 17:07 /
 
Idézet:
„A program működik, le is fordul, csak nem azt fogja csinálni amit szeretnénk.”
Nem csoda, ha a feljesztőkörnyezet eleve homlokegyenest más logikát használ, mint ahogy a program fut a kontrollerben.
Következő: »»   175 / 175
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.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