Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

lolli algaja küsimus (flip-flop/buffer)

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    lolli algaja küsimus (flip-flop/buffer)

    tere,
    äda selles, et oleks vaja 8 biti salvestada (lpd'st) et kui lpt kirjutab oma bitid ära siis hakkaks jälle kuulama datat kui sisendid aga samas jub väljastatud kaheks bitti jäeksid nt. led'ide kujul põlema...
    arvaks, et sellist asja tehakse flip-flop'iga (kui nii, siis mix fil-flop'il clock on :-/ http://www.tevalo.ee/cgi-bin/web_store.cgi...544-18&lng=est)
    või hoopis tuleb buffrit kasutada(nime järgi võiks ju eeldada, et see on see mida ma otsin aga endal pole õrna aimugi)

    #2
    Ei saanud probleemist aru. Kas tahad rohkem kui 8 led-i panna? LPT jätab viimati kirjutatud data otste peale, samal ajal saad sisendeid lpt-l kasutada? Või mingi keerukam süsteem loomisel?

    Flip/flop peaks sobima vist küll, kui clock jalale annad impulsi, siis ta loeb sisendist seisu ja hoiab kuni järgmise clock impulsini.

    Võib-olla kirjutad, mida tahad teha, siis ehk lihtsam nõu anda.

    Comment


      #3
      ... seda ma tahtsingi teada ;D
      mul on lihtsalt vaja 8 sisendit ja 8 väljundit (aga mitte päris samal hetkel) loll näide: pollin porti kuni muutub (8 data pin'i küljes on lülitid) kui muudan ühe lüliti asendit siis arvuti teeb asjast omad järeldused ja paneb mingi kobinatsiooni led'e põlema. seejärel jätkab muutuse ootamist (ma ei tia aga ma vist ei oska midagi lihtsalt seletada :-[)
      -Kaspar

      Comment


        #4
        Ehk lihtsam mingi eraldi protsessoriga teha (PIC näiteks).
        LPT sisend vist igal-ühel ei tööta 8-bitisena (vaja vist EPP reziimi toetust?), kuid kõigil on 5-bitti sisend. Ehk jätad väljundi ainult väljundiks, ilma bufrita, ja sisendit teed kuidagi midagi, praegu ei ole ideed.

        Comment


          #5
          Siin oli kunagi tehtud projekt, sisendid ja väljundid. Vaata, äkki sobib:
          http://www.tevalo.ee/cgi-bin/YaBB.cgi?boar...;num=1038944373

          Comment


            #6
            kas sa tahad vaheldumisi samu (8bit) otsi printerpordi kaudu lugeda ja kirjutada? kui sa väljundisse mingi oleku püsti jätad ("ledide kujul põlema"), siis saad selle väljundi kuulamisel tagasi sama tulemuse.

            kui tahad miskid 8 bitti eraldi väljundisse fikseerida ning pärast seda eraldi sisendit edasi kuulata, siis on sul jah miskit "flip-flop" lukustatavat registrit vaja, mida pead eraldi otsaga juhtima. buffer on selle väljundis juba olemas.

            arvesta sellega, et masina käivitamisel jookseb sealt pordist init üle (oled kuulnud, kuidas maatriksprinter teeb masina bootimisel kõrr-kõrr) ning ebasobivalt valitud signaalide kombinatsiooni korral võib väljundis olev kila-kola lollusi teha.
            GSM: 5039624

            Comment


              #7
              Tegemist on suht spetsiifilise asja prototüübi ühe osaga (kuna hetkel rhastust ei ole, siis ei saa ka kedagi palgata kedagi kes teab mida teeb ;D endal aga hakkab käsi värsiema kui joote-kolb kätte surutakse)
              Käisin poes ära ostsin flip-flopi kah ära, aint tekkis küsimus: kivil 74HCT374, mida teeb pin (inverted) OE (ehk siis pin 0)
              et kui clock(pin 20) peaks kontrollima mida lükatakse väljundisse, siis kas tegemist on re-set'iga?

              Teine osa küsimusest (vastusena ootan 1400lk elektroonika alg-õpet, või vähmalt viidet :P) aga mille järgi valitakse tranistoreid: kasutan lülitamiseks, NPN (mis veel on tähtis?), leidsin et 2N2222 sobib selleks, vähemalt Multisim simulaatoris (tevalos 23.40, mul läheb kaheksa seega üle 187eq, äkki saaks odavamalt :-[, natukene peab rottima kah, eriti kui see harib )

              tänan abi eest
              -Kaspar

              Comment


                #8
                OE on output enable ehk kivi kõigi väljundite lubamine või siis lahti lülitamine (nagu kivi ei olekski skeemis). Viimane omadus on eriti kasulik arvutite skeemides kus ühel ja samal 8/16/32 juhtmelisel (andme-)siinil on korraga palju kive aga korraga "räägi"" vaid üks, muudel on OE-d viidud keelavasse seisu (arvatavasti kõrge nivoo ehk 5V).
                Transside polaarsus NPN/PNP sõltub suuresti sinu skeemis. NPN lubab ühendada koormuse (relee, LED vms) +5V toite ja transi kollektori vahele ja on üsna levinud. Aga kasuta parem kivi ULN2803. Seal on kõik asjad sees ja väljundid (8tk/korpus) suudavad juhtida otse releesid. Jääb ära akkide ja ranssidega mässamine ja montaaz tuleb ka hulka lihtsam. Kivil ULN2803 ei olegi toiteotsa sest ta sisaldab samu transs.-skeeme mida kavatsesid kasutada. Sisendid otse sinu registri peale ja väljunditest releed vms. toitesse. Üks ühine väöljund on tal veel, see ühendatakse koormuse toitesse. Vaata kivi andmelehte ja saad kohe aru.
                - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
                - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

                Comment


                  #9
                  Flip-flopist:
                  (jõudsin siis asja testimiseni )
                  kui ühendan vcc +5V, grnd ja OE maha, siis on kõik outp +5V ja inb +0.7V
                  kas see on normaalne?
                  nüüd kui ma tahan outb muuta siis peaks andma mingid sisendid mis on +5V sis clck'ile andma pulsi ja siis peaks need outb jaama +5V millel oli sisend ja üljäänud siis nulli lähedale minema?
                  olen ma ikka asjast õieti aru saanud?
                  -Kaspar

                  Comment


                    #10
                    Nii ta peaks olema. Väljundid muudavad seisu clocki impulsi tõusu ajal (+ front).
                    Kontrolli igaks juhuks juhtsignaalide (C, OE)polaarsused datasheedilt üle.
                    - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
                    - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

                    Comment


                      #11
                      Pean tõdema et olen LOLL  ;D
                      aga vat ei saa aru sellest ULN2803A'st mida see teeb?
                      oleks vaja oopis sellist asja mis võrdelks inp(0-7) ja base = kui on in1 ja base siis läheks out(1) high'x

                      lihtne skeem (3 bitiga, rohkem ei viizinud teha  :-[):

                      Comment


                        #12
                        Ok, kirjutan siia natuke flip-flop'idest ja latchidest. Eesti keeles on need TRIGERID. Erinevad sünkroniseerituse poolest, see ei ole sinu süsteemi puhul üldse oluline. Trigereid on mitmesuguseid. Kõige lihtsam on asünkroonne RS-triger. Sellel on 2 sisendit R, S ja 2 välgundit Q ja -Q. Kui annad signaali korraks R-le, siis läheb -q aktiivseks ja Q mitteaktiivseks. Kui annad signaali s-le, siis läheb q aktiivseks ja -q mitteaktiivseks. Mõlemale andmine ei ole lubatud ja siis võib teha triger mida iganes, see ei ole määratud.
                        Siis on sünkroonne RS-triger, millel on lisandunud sünkrosisend C. Muidu on suht sarnane eelmisega. Ainult see ei lülita kohe r või s peale ümber vaid alles siis, kui c-le tuleb sobiv front, (ntx 0->1). Niisiis sellega saab mälu teha, annad r-le või s-le salvestatava info pääle ja klokid korraks c üles ja alla. Ning selle peale salvestatakse info ära. Lisaks sellele on sünkroonsel lubatud ka nii r kui ka s korraga aktiivseks panna, siis vahetatakse olukord. Lihtsalt öeldes: iga kloki peale vaadatakse sisendeid. Kui on mõlemad passiivsed, siis ei muudeta väljundit. Kui on r aktiivne, siis -q aktiivseks ja q passiivseks, kui s siis vastupidi. Kui on mõlemad aktiivsed, siis muudetakse väljund vastupidi eelmise olekuga.
                        Viimasest on siis mitu variatsiooni:
                        D-triger [delay-triger], ka buffer. r-le antakse juba kivi sees s-i eitus. See tähendab aint üht sisendit d ja klokisisendit c. Iga kloki pääle loetakse trigeri väljundisse q sisendi väärtus. Põhiline mälukivi.
                        T-triger [tumble-triger]. R ja S on kokku ühendatud. Siis iga kloki vaadatakse sisendit. Kui see on null, siis jääb väljund samaks, kui 1 siis vahetatakse väljundid ringi.

                        Päris 1800lk ei tulnd aga enam-vähem ;P

                        Comment


                          #13
                          Nüüd kirjutan naca ka selle lpt-probleemi kohta. Tglt on see suht lihtne. LPT-l on 12 väljundit kokku. Teed nii, et 8 tükki on andmeväljundid ja ülejäänud 4 aadressiväljundid. Siis saad võtta ühe d-trigeritega kivi (on selliseid, millel on 8 trigerit ühes korpuses, kõigil ainult sisend d ja väljund q ja siis kõigi nende trigerite c-d kokku ühendatud).
                          Siis ühendad selle kivi iga trigeri sisendisse ühe otsa lpt-st. Ja selle c-otsa ühendad ühele ülejäänud 4-st otsast. Programselt siis kirjutad porti vastava numbri välja ja siis natukese aja pärast kirjutad sinna aadressiotsale korraks ühe. See salvestab trigeritesse sinu info ära. Ja siis natukese aja pärast koristad selle ühe jälle ära....
                          (oleneb su trig tüübist, kui on asünkroonne siis jääb triger lugema kogu selle aadressipordi 1-ks oleku aja, sünkroonse korral lihtsalt loetakse sel hetkel, kui see 1 sinna ilmus või kui ta kaob(sõltuvalt trigeri tyybist))

                          Comment


                            #14
                            uln2803 on niisama hulk transse, lihtsas keeles öeldes võimendab signaali. St niisama kivi taha ei tohi releed panna, siis peab transi ja takid vahele panema, dioodi kaa. Kõik see võtab palju-palju ruumi ja kallis->paha.
                            uln2803 ja uln2003 on niisama kivid, milles on kõike seda pahna 8 või 7 kanali jaoks juba olemas ja võtab palju vähem ruumi.

                            Comment


                              #15
                              Ja kui ma su skeemi mõttest täpselt aru sain, siis sa üritad niisama seda led-i panna põlema siis ja ainult siis, kui mõlemad sisendid on ühes. Selleks on olemas loogikaelemendid. Paned vahele and-elemendi(näitx 74ls08) ja sellega teed selle and-tehte.
                              Üldse on kasulik selline leht: http://www.cs.uiowa.edu/~jones/logicsim/man/node5.html

                              Comment

                              Working...
                              X