Fórum témák
» Több friss téma |
Sziasztok!
Szeretnék építeni egy olyan áramkört ami 3 darab gombbal van ellátva [ + , - , reset ] és egy 2x7 szegmenses kijelzőn szeretnék számlálni számokat úgy, hogy alap állásban (0)-án van, ha megnyomom a [+] gombot, akkor számol egyet és tudom léptetni egészen (99)-ig. Illetve visszafelé a [-] gombbal (99)-től (0)-ig és (0)-tól egészen (-99)-ig tehát mínuszba is tudom léptetni. Lehet hogy kell még egy 7 szegmenses kijelző a minusznak, de szerintem leddel is megoldható. A [reset] gombbal vissza tudnám állítani alap állásba (0)-ba. Szóval a számok oda-vissza léptetését szeretném megoldani! Erre az áramkörre várom ötleteiteket! Előre is köszönöm!
CD 4510 és 4511 egy lehetséges megoldás (digitenként).
Inkább a beszerezhetőséget kellene alapul venni, mert csomó típus kihalt.
Ha értesz a mikrokontrollerekhez azzal is nagyon könnyű megcsinálni, de össze lehet rakni cmos áramkörökkel is csak ahogy Sebi írta meg kell nézni mi az ami még beszerzhető.
Szabályzatot olvasd el, kérlek:
Idézet: „XXIII. Hacsak nem nagyon-nagyon indokolt, akkor a hozzászólásunkat ne színezzük, ne állítsuk át a betűméretet, ne húzzuk szét stb... Magyarul próbáljunk meg igazodni a fórumhoz és ne feltűnősködjünk. A feltűnési viszketeségben szenvedőket sokan utálják.”
Tudnám még ajánlani a CD4543-as IC-t, ez 3 számjegyes számláló (nem munszály mindhárom számjegyet használni ha nem kell), de csak előre tud számolni.
Előre-hátra számláláshoz nahyon jól használható a CD4029 ha jól emléxem, ez tud binárisan és decimálisan is számlálni a beállításától függően. Itt esetleg ki lehetne használni ezt a tulajdonságát. Kijelző meghajtónak a 4511 tökéletes választás. Bár még nem ástam bele magam a mikrovezérlőkbe, de ez szerintem tipikusan erre kitalált feladat...
A rajzot nem én csináltam, a neten találtam.
Hello!
A rajz, nekem is tetszik, csak éppen nem működőképes! Ebbe a kapcsolásba, a 4093 nem jó. Ide 4001-es kell. üdv! proli007
Hello!
néztem a működését a 4093-nak, de szerintem tuti hogy jó, a 4001-el biztos nem működik jól ebben a kapcsolásban.
Megnéztem a rajzot, és megfelelőnek tűnik!
A kérdésem az hogy vajon 0-tól -1, -2, -3 ... mínuszba is tud számlálni? Vagy hogyan oldhatnám meg?
ez a kapcsolás nem tud minuszba számolni, de majd megnézem mit lehet vele csinálni, hogy lehet megoldani.
Ok!
Nagyon köszi hogy foglalkozol a problémámal!
A negatívba számlálást úgy lehetne megoldani, hogy ha a számláló "0" alá akarna menni (alulcsordul) akkor átbillentünk egy tárolót aminek a kimenete (XOR kapun keresztül) invertálja a számlálás irányát.
A tároló kimenete egyúttal a "minusz jelet" is kigyujthatja.
Légyszives NE szinezd ki a hozzászólásodat!
Csak akkor használd ha indokolt!
Itt egy rajz:
Kép: Hivatkozás Ez pontosan azt csinálja amit szeretnél, kivéve hogy nem jelzi ki hogy most mínuszban vagy pozitívban van-e. Ha ezt is szeretnéd mindenképp, akkor sajnos eléggé bonyolódik az áramkör, mert kelleni fog egy J-K tároló (4027) és két darab kétbemenetes NAND kapu is (4011).
Köszi!
Ez a kapcsolás is nagyon tetszik! Viszont hogyan tudnám megoldani ha nulla alá csökken, egy minusz jel is kigyuladjon mondjuk egy leddel? Nem fontos a 7szegmenses kijelző. Tudnál 1 kapcsolást feltölteni? Ha nem okoz problémát!
Mint mondtam, a negatív előjel kijelzéséhez kell egy J-K tároló és 2db kétbemenetes NAND kapu. Ez plusz két IC-t jelent. Mindjárt lerajzolom...
Itt is van:
Kép: Hivatkozás Lehet hogy van benne valami logikai bukfenc, én eddig nem találtam. A működése: Az IC6A felel az előjel kijelzéséért. Ha a Q/ kimenete H szintű, akkor világít a DIS3 kijelző G szegmense, azaz a negatív előjel. IC6A egy J-K tároló. A RESET lába galvanikusan, a SET lába pedig R5-ön keresztül kapcsolódik a földre. A SET láb azonban C5-ön keresztül a tápra is fel van kötve azért, hogy az áramkör bekapcsolása után egy pillanatra H szintet kapjon a SET láb, így L szintet kényszerít a J-K tároló Q/ kimenetére, tehát bekapcsolás után automatikusan pozitívban lesz a számláló. C1 és R2 szerepe hasonló, ők pedig a bekapcsolás utáni automatikus nullázásért felelnek. IC5A egy NAND kapu. Bemenetei a két számláló IC (4510) 7-es lábaira vannak kötve. Ha a számlálók nullán vannak, akkor elvileg (ha jól értem a 4510 adatlapját) a két lábon L szint mérhető, ekkor pedig az IC5A kimenetén H, ami R6-C6 időállandó után H szintet ad a J-K tároló CLK (órajel) bemenetére, így állapot-váltás történik a kimenetén, azaz BE- vagy KI kapcsolja az előjelet. IC5B inverterként működik. A bemenetei alapból L szinten vannak, így a kimenete H szintet ad a J-K tároló J és K lábaira, ezáltal úgymond engedélyezi a tároló léptetését. Ha azonban S4 nyomógombbal nullázzuk a számlálót, akkor IC5B kimenete és az IC6A J és K lábai L szintűek lesznek, így letiltják a tárolót, pontosabban ekkor a tároló érzéketlen lesz a CLK bemenetére érkező jelre. IC5A kimenete és a tároló CLK lába közt azért van az R6-C6-ból álló integráló tag, hogy késleltesse az IC5A kimenetét és az IC5B-től érkező 'letiltó' jel garantáltan előbb érkezzen meg a tárolóhoz mint az IC5A-tól jövő órajel. Ez tehát végeredményben azért van hogyha manuálisan, az S4 nyomógomb megnyomásával nullázzuk a számlálót, akkor ettől ne változzon az előjel. Ez 6db IC. Mikrokontrollerrel meg lenne 1db. Üdv.: Attila
Korábban már említettem, de senki nem hitte el (majd ha valaki megépíti rájön):
A negatív irányba történő számláláskor a számlálási irányt invertálni kell (pl. kizáró-vagy kapuval). Miért is? Ha pl. folymatosan lefelé számlálok, nyoimogatom a "le" gombot (3,2,1,0), de ha átmegyek minuszba akkor kirakom a minusz jelet és felfelé kell számolni tovább (-1,-2,-3), ha pedig a "fel" gombot nyomogatom tovább (-3,-2,-1,0,1,2) akkor lefelé kell számolni 0-ig, majd irányváltás, és nullától már felfelé kell számolni. Tehát eleve nem volt jól megfogalmazva, hogy mit is kell csinálnia a számlálónak..... Ha nem váltunk irányt, a negatívba számláláskor, akkor elég érdekesen fog működni (mindenki képzelje el hogyan, vagy építse meg valaki )
Még valami: a gomboknak ennél normálisabb pergésmentesítés kell (a fel/le bemenet pl. nincs védve) szóval így eleve fog néha furcsaságokat művelni az áramkör. Fel/le számlálásra, puskaként illetve ötletet meríteni (a gombok kezeléséhez) ajánlom a bemenetkiválasztóhóz készült vezérlésemből, a gombokat kezelő schmitt triggeres kapukat tartalmazó megoldást.
Ez egy füst alatt megoldja az irányváltást a korrekt pergésmentesítést, a léptetést, és nyomva tartott gomb esetén egy idő után elkezd lépkeni a kívánt irányba (sok lépéshez nem kell nyomogatni...) persze ez utóbbi kihagyható. Mindehez összesen 4db kapu kellett. A fel-le számláló rész nálam más megoldású, de ötlet szinten esetleg érdemes megnézni, ugyanis a gyakorlatban is hibamentesen működik sok-sok éve....
Hopsz valóban!
A számolás irányának invertálását kifelejtettem. A pergésmentesítést pedig szokásom rendszeresen kihagyni. A gombok folyamaton nyomva tartása eszembe nem jutott, mert ez konkrétan nem volt előírva. A számolás irányának invertálását úgy lehet a rajzomon megtenni, hogy a J-K tároló Q kimenetét egyszerűen rákötjük a számlálók 10-es lábára. A pergésmentesítés sem túl nehéz, még van két szabad NAND kapum és egy tárolóm. Még válogathatok is. Javítom a rajzot... Szerk.: Kijavítottam. A számolás irányát most már a J-K tároló határozza meg. A FEL és a LE nyomógombok kezelése is változott, már a pergés-mentesítés és a folyamatos nyomva tartáskori léptetést is megvalósul (IC5C+R25+C5). Üdv.!
Hello!
Figyelemmel kísérem a fejleményeket, de ez még igen messze van a működő képes verziótól. - Irányt (U/D) akkor is kell, váltani, ha a Fel-vagy Le gombot nyomják meg. - A működési irányt megfordítani (előjelt), akkor kell, ha a számlálók nullán állnak, és ekkor nyomják meg a fel, vagy le gombokat. (Így a signum jelzést is előállítottuk.) - Meg kell akadályozni, a számláló túlcsordulását is 99-nél. Megvizsgálandó kérdések: - Milyen célból megy be a RESET jelzés, a JK bemenetre? - Gyanítom, hogy RS tároló is bőven megteszi. - Mikor van a CO kimeneten átviteli jelzés, és milyen logikai szintű ilyenkor a jel. üdv! proli007
Hello!
Idézet: „Viszont hogyan tudnám megoldani ha nulla alá csökken, egy minusz jel is kigyuladjon mondjuk egy leddel? Nem fontos a 7szegmenses kijelző.” Hát ez nagyon jó duma. Édesanyám jut róla eszembe. "Kis fiam! Csak a Kossuth, meg a Petőfi rádió szóljon rajta. Az nekem elég..." (Ifjabbak kedvéért: az egyik a középhullámon volt, másik a URH-n.) üdv! proli007
Üdv.!
Idézet: „- Irányt (U/D) akkor is kell, váltani, ha a Fel-vagy Le gombot nyomják meg.” Basszus... Nagyon nem akar ez nekem összejönni. Idézet: „Megvizsgálandó kérdések: - Milyen célból megy be a RESET jelzés, a JK bemenetre?” Ezt a kérdésedet nem értem. Idézet: „- Mikor van a CO kimeneten átviteli jelzés, és milyen logikai szintű ilyenkor a jel.” Ha nulla van, akkor L szintű. Pontosabban felfelé számoláskor 9-nél lesz L (hogy a következő órajelnél már a másik számláló is számoljon), lefelé számoláskor pedig 0-nál. Legalábbis ha jól értelmeztem az adatlapját. Idézet: „- Meg kell akadályozni, a számláló túlcsordulását is 99-nél.” Igazából ez sem volt megkötve (ahogyan a gomb nyomva tartáskori léptetés sem). Üdv.: Attila
Bővebben: RAJZ
Most már invertálva van a számlálás iránya attól függően, hogy negatívban vagy pozitívban van-e a számláló. Cserébe az áramkörben már egyel több tok van. A 99 és a -99 utáni túlcsordulás megakadályozása szerintem borzasztóan nehéz. Az a baj, hogy nem igazán lehet indikálni ezt a két számot. Gondoltam már a kijelzés-kép alapján történő indikálásra is, de ez sem megoldható. Legalábbis a maradék kapukból nem. Persze ha letehetek még egy tokot akkor már más a helyzet, na de már így is 7db IC van ebben a kis áramkörben. Nos igen, örüljön aki ért a mikrokontrollerekhez.
Hello!
Idézet: „Ha nulla van, akkor L szintű. Pontosabban felfelé számoláskor 9-nél lesz L (hogy a következő órajelnél már a másik számláló is számoljon), lefelé számoláskor pedig 0-nál. Legalábbis ha jól értelmeztem az adatlapját.” Tegyük hozzá, hogy csak addig, míg az órajel magas értékű. (Egyébként még nem láttam elég jól értelmezhető adatlapot az IC-ről.) De hogy lesz ebből irányváltás, azaz előjel képzés? - A kapcsolásodban, ha a Reset jel megszűnik, Akkora JK bemenet magasra kerül. Ilyenkor, a tároló, minden felfutó élnél átvált. - Te a két átviteli jelet egy NAND kapuval összekapuztad, és ebből lesz a tároló órajele. Tehát bármely számlálónál átvitel képződik, a számlálási irány (előjel) megfordul. Idézet: „- A működési irányt megfordítani (előjelt), akkor kell, ha a számlálók nullán állnak, és ekkor nyomják meg a fel, vagy le gombokat. (Így a signum jelzést is előállítottuk.)” Én ezt írtam, és tartom is hozzá magamat. Idézet: „A 99 és a -99 utáni túlcsordulás megakadályozása szerintem borzasztóan nehéz. Az a baj, hogy nem igazán lehet indikálni ezt a két számot.” Pedig ott van elbújva, az elsőnek beidézett hozzászólásodban. Csak azt kell megfogalmazni, hogy mikor kell megakadályozni, és mit. Egyébiránt a 4011-es szerintem nem jó az alkalmazásodban, 4093-as kell, mert az IC5c kapu nem fog billegni, hiszen nincs hiszterézise. A rajzod baloldala, szerintem már működőképes, csak az előjel képzés és tárolás nem. (Az utolsó hozzászólásod rajza) üdv! proli007
Üdv.!
Idézet: „Tegyük hozzá, hogy csak addig, míg az órajel magas értékű. (Egyébként még nem láttam elég jól értelmezhető adatlapot az IC-ről.)” Nekem sem teljesen egyértelmű. De nem baj, biztos ami biztos inkább a BCD kódot figyelem nyolc diódából álló VAGY kapuval. Idézet: „- A kapcsolásodban, ha a Reset jel megszűnik, Akkora JK bemenet magasra kerül. Ilyenkor, a tároló, minden felfutó élnél átvált.” Nem! A J-K bemenetekre érkező H szint hatására csak akkor vált át a 4027, hogyha közben a CLK bemenetére felfutó él érkezik! Márpedig oda csak akkor kerül felfutó él, hogyha a számláló "00"-át ír ki. (Az IC5A gondoskodik erről.) Idézet: „- Te a két átviteli jelet egy NAND kapuval összekapuztad, és ebből lesz a tároló órajele. Tehát bármely számlálónál átvitel képződik, a számlálási irány (előjel) megfordul.” Tényleg. A két átviteli jelet nem NAND, hanem NOR kapuval kellett volna összekapuzni. Idézet: „Egyébiránt a 4011-es szerintem nem jó az alkalmazásodban, 4093-as kell, mert az IC5c kapu nem fog billegni, hiszen nincs hiszterézise.” Igaz. ------------------------------------------------ Átrajzoltam a kapcsolást: Bővebben: RAJZ Ha mindkét számláló nullán áll, akkor a 4510-ek Q1-Q4 kimeneti lábain L szint mérhető, innen lehet tudni hogy nullán áll a számláló. IC5A ezt invertálja. IC5B+IC7B és IC5C+IC7C egy-egy ÉS kaput valósítanak meg. A FEL és LE nyomógombok által adott H szint csak akkor jut el az IC6A R-S tárolóra, hogyha IC5A kimenete H szintű, azaz hogyha a számlálók nullán állnak. Így csak a nullánál történhet meg az előjel váltás és a FEL/LE nyomógombok invertálása az IC7A segítségével. Mondanám, hogy ebben már nem találtam semmi hibát, de az előzőekre is ezt mondtam. Minden esetre ezt már sokkal alaposabban átgondoltam. Ja igen, a 99-et a számláló IC-k legkisebb és a legnagyobb helyértékű bitjével kellene figyelni, de ez már plusz egy tokot jelentene. (Kilenc BCD kódban ugyebár: "1001") Üdv.: Attila |
Bejelentkezés
Hirdetés |